Diferentes configurações do tmux para sessões diferentes?

3

Temos uma máquina centos 7 que muitos desenvolvedores usam com o tmux 1.8 no mesmo usuário . É possível que tenhamos configurações pessoais para cada sessão do tmux, além de deixar a configuração padrão intacta para novas sessões (padrão)?

    
por mcd0well 08.02.2017 / 12:54

3 respostas

1

tmux pode ser chamado como tmux -f /path/to/tmux.conf . Como todos estão fazendo login como o mesmo usuário, você pode criar um diretório de arquivos de configuração do usuário para tmux . Por exemplo, /home/username/tmux/userA.tmux.conf . O UserA iniciaria sua sessão do tmux com:

tmux -f ~/tmux/userA.tmux.conf

Se você quisesse simplificar as coisas para os usuários, poderia criar entradas de alias para cada usuário no arquivo ~/.bashrc , por exemplo, se estiver usando o bash. Cada linha seria parecida com:

alias tmuxuserA='tmux -f /home/username/tmux/userA.tmux.conf'

Em seguida, o userA invocaria sua sessão com o comando tmuxuserA .

    
por 08.02.2017 / 13:41
1

Como @asmodean corretamente mencionado, a maneira de usar várias instâncias do tmux na mesma máquina (com o mesmo usuário) é usar dois sockets diferentes. Um nome de socket pode ser dado usando a opção -L .

Uso

Crie instâncias do tmux

  • primeira sessão: tmux -L userA -f ~/.tmux-userA.conf

  • segunda sessão: tmux -L userB -f ~/.tmux-userB.conf

Unir instâncias

tmux -L userA attach tmux -L userB attach

Outros comandos do tmux

Outros comandos funcionam com a opção -L . Por exemplo, para listar as sessões userA e userB:

tmux -L userA list-sessions tmux -L userB list-sessions

    
por 03.12.2018 / 16:40
0

Aqui está o que eu fiz para obter a configuração por sessão no tmux.

set-hook -g after-new-session 'if -F "#{==:#{session_name},emacs}" "source ~/.tmux/.tmux.conf.emacs" "source ~/.tmux/.tmux.conf.amos"'
set-hook -g after-new-window 'if -F "#{==:#{session_name},emacs}" "source ~/.tmux/.tmux.conf.emacs" "source ~/.tmux/.tmux.conf.amos"'
    
por 21.02.2018 / 13:56