Você está usando o exemplo errado. ;) Ter $PWD
como argumento para -c
significa ter os painéis recém-criados iniciados no diretório em que tmux
server está em , em outras palavras, o diretório onde você iniciou tmux
. O diretório do painel atual é aquele armazenado na tmux
variável interna #{pane_current_path}
:
* 'default-path' has been removed. The new-window command accepts '-c' to
cater for this. The previous value of "." can be replaced with: 'neww -c
$PWD', the previous value of '' which meant current path of the pane can
be specified as: 'neww -c "#{pane_current_path}"'
Então o jeito certo de fazer o que você quer seria
# Saner splitting.
bind v split-window -c "#{pane_current_path}" -h
bind s split-window -c "#{pane_current_path}" -v
# Autorename sanely.
setw -g automatic-rename on
# Better name management
bind c new-window -c "#{pane_current_path}"
Observação: Isso não funcionará se houver um shell de outra pessoa sendo executado em seu painel atual (eu me deparei com isso, então eu digo explicitamente a você): uma sessão sudo
ou su
em execução, seu novo painel terminará com um diretório de trabalho de /
. Isso é simplesmente simples de explicar: seu tmux
não pode obter o diretório de trabalho atual do processo em execução, pois ele não possui os privilégios apropriados para fazê-lo por motivos de segurança (não é possível ler o estado vital do processo de um usuário externo). / p>