Estou usando duas sessões separadas tmux
e tenho as seguintes entradas em /etc/tmux.conf
:
set -g base-index 1
new -s logi -n cmd
neww -n logi "cat /dev/logi | ccze -m ansi -p syslog -C"
splitw -t 1 -v -p 50
selectw -t 2
selectp -t 0
new -s standard -n htop "htop"
neww -n cmd
splitw -t 2 -v -p 50
selectw -t 2
selectp -t 1
Inicio a sessão standard
chamando o seguinte comando:
urxvtc -name 'tmux' -e bash -c 'tmux attach-session -t standard'
Se não houver sessão, ele cria uma; se houver, ela anexa. Como você pode ver, tenho duas janelas, uma das quais é dividida em 2 painéis. Quando recarrego o arquivo de configuração, recebi 2 janelas extras da outra sessão e ambas foram adicionadas às pré-existentes. Além disso, as janelas anteriores receberam um painel extra. Os dois painéis extras são limpos, não há comandos executados (htop) em nenhum deles.
Existe uma maneira de recarregar o arquivo de configuração da maneira que isso seria aplicado apenas à sessão anexada? Ou devo esquecer de recarregar o arquivo de configuração quando estiver usando sessões e, para aplicar uma nova configuração, devo usar tmux kill-server
e iniciar novamente as sessões?
[[: not found
#!/bin/bash
.Você não precisa usar um script de wrapper, pode fazê-lo com o
source-file
comandoDividi o meu
.tmux.conf
em dois pedaços, e ele apenas os fonte:Em seguida,
session.conf
contém as definições do painel:E
options.conf
contém apenas as definições de opção:Dessa forma, a
bind R
única fonteoptions.conf
e o tudo serão recarregados, mas nenhum novo painel será criado.Uma pequena desvantagem é que, se você deseja alterar o layout da janela, precisa sair e iniciar uma nova sessão.
fonte
Eu criei esse script . Não precisa de tmuxinator, ruby ou outros. É apenas um script bash, configurável.
Eu configuro o arquivo mi config como:
Eu posso configurar todos os meus projetos. O resto é feito pelo script:
fonte