Acabei de instalar o tmux no Ubuntu 10.04 e tentei remapear a chave do prefixo C-a
criando o arquivo ~/.tmux.conf
com estas linhas:
set-option -g prefix C-a
unbind-key C-b
Ao iniciar o tmux, regularmente e com -f ~/.tmux.conf
, o prefixo é efetivamente o mesmo padrãoC-b
Não há erros ou avisos.
Alguma idéia do que há de errado com o carregamento do conf?
strace -s9999 -f -o tmux.strace tmux -c true
e publique a saída degrep -C5 'tmux\.conf' tmux.strace
.Respostas:
O arquivo ~ / .tmux.conf é carregado quando o servidor tmux é iniciado pela primeira vez. Portanto, se houver sessões tmux existentes, iniciar uma nova sessão com
tmux
não resultará no recarregamento do arquivo .tmux.conf. Tente reiniciar o servidor tmux: Use o comandotmux list-sessions
para verificar se existem sessões existentes. Saia deles (por exemplotmux attach
, mate todas as janelas e saia). Quando todas as sessões terminarem, tentetmux
novamente. Desta vez, a religação deve funcionar.fonte
killall tmux
outmux kill-server
vai começar o trabalho feito tambémkillall tmux
etmux kill-server
ainda meu conf não está carregado. Posso confirmar que é válido, pois o uso:source-file ~/.tmux.conf
no tmux realmente faz as alterações na configuração! Não consigo descobrir o que está causando esse comportamento.Para recarregar seu ~ / .tmux.conf sem interromper sua sessão, você pode simplesmente:
fonte
bind r source-file ~/.tmux.conf \; display-message "Config reloaded..."
execute dentro da sua sessão tmux:
fonte
Há também uma ligação para recarregar o seu atalho de teclado padrão
~/.tmux.conf
, pelo menos na minha instalação:C-b r
. Se você clicarC-b ?
nele, será exibida uma lista de todos os atalhos de teclado vinculados, para que você possa ver se já possui um.fonte
<prefix> r
está vinculado arefresh-client
(o que você descreve seria algo comosource ~/.tmux.conf
).Eu tive esse problema porque estava usando o tmux-next .
Inicialmente, eu o resolvi passando o arquivo de configuração explicitamente,
tmux -f ~/.tmux.conf
como a pergunta aqui aponta. (Eu já tinha o alias do tmux-next ao tmux.)Então eu percebi que o tmux-next está usando o tmux-next.conf, então basta ligar novamente se estiver usando isso e só precisar executar a próxima versão do tmux.
ln -s ~/.tmux.conf ~/.tmux-next.conf
fonte
Saí e reabri meu terminal, e é a única maneira de fazê-lo funcionar novamente. Não sei por que.
usando o Terminal no Mac OSX
fonte