mirror of
https://github.com/tmux-plugins/tmux-resurrect.git
synced 2024-11-22 04:18:48 +00:00
Additional info about restoring programs
This commit is contained in:
parent
4d5c30c29a
commit
82837109d4
@ -31,3 +31,54 @@ contains space-separated list of additional programs to restore.
|
||||
|
||||
set -g @resurrect-processes ':all:'
|
||||
|
||||
### Clarifications
|
||||
|
||||
> I don't understand tilde `~`, what is it and why is it used when restoring
|
||||
programs?
|
||||
|
||||
Let's say you use `rails server` command often. You want `tmux-resurrect` to
|
||||
save and restore it automatically. You might try adding `rails server` to the
|
||||
list of programs that will be restored:
|
||||
|
||||
set -g @resurrect-processes '"rails server"' # will NOT work
|
||||
|
||||
Upon save, `rails server` command will actually be saved as this command:
|
||||
`/Users/user/.rbenv/versions/2.0.0-p481/bin/ruby script/rails server`
|
||||
(if you wanna see how is any command saved, check it yourself in
|
||||
`~/.tmux/resurrect/last` file).
|
||||
|
||||
When programs are restored, the `rails server` command will NOT be restored
|
||||
because it does not **strictly** match the long
|
||||
`/Users/user/.rbenv/versions/2.0.0-p481/bin/ruby script/rails server` string.
|
||||
|
||||
The tilde `~` at the start of the string relaxes process name matching.
|
||||
|
||||
set -g @resurrect-processes '"~rails server"' # OK
|
||||
|
||||
The above option says: "restore full process if `rails server` string is found
|
||||
ANYWHERE in the process name".
|
||||
|
||||
If you check long process string, there is in fact a `rails server` string at
|
||||
the end, so now the process will be successfully restored.
|
||||
|
||||
> What is arrow `->` and why is is used?
|
||||
|
||||
(Please read the above clarification about tilde `~`).
|
||||
|
||||
Continuing with our `rails server` example, when the process is finally restored
|
||||
correctly it might not look pretty as you'll see the whole
|
||||
`/Users/user/.rbenv/versions/2.0.0-p481/bin/ruby script/rails server` string in
|
||||
the command line.
|
||||
|
||||
Naturally, you'd rather want to see just `rails server` (what you initially
|
||||
typed), but that information is now unfortunately lost.
|
||||
|
||||
To aid this, you can use arrow `->`:
|
||||
|
||||
set -g @resurrect-processes '"~rails server->rails server"' # OK
|
||||
|
||||
This option says: "when this process is restored use `rails server` as the
|
||||
command name".
|
||||
|
||||
Full (long) process name is now ignored and you'll see just `rails server` in
|
||||
the command line when the program is restored.
|
||||
|
Loading…
Reference in New Issue
Block a user