Como iniciar um comando na configuração do tmux + urxvt?

0

Estou tentando criar um console de desktop bastante agradável que possa mostrar logs do sistema a partir do / dev / logi. O dispositivo exibe novo conteúdo de vários arquivos em / var / log. Eu quero usar o urxvt e o tmux para fazer isso. Tudo parece estar funcionando, mas não tenho ideia de como iniciá-lo automaticamente. Estou usando o openbox, então eu tentei adicionar a seguinte linha em /home/morfik/.config/openbox/autostart:

(sleep 2 && urxvt -name 'konsola_desktop' -e sh -c "tmux -c 'cat /dev/logi'") &

Isso não funciona como esperado. estrelas urxvt e se algo é registrado, é exibido no console. Mas uma parte está faltando, não há tmux. Eu preciso disso porque eu coloco em /home/morfik/.Xresources a seguinte opção:

URxvt*saveLines: 0

e eu uso o buffer tmux especificado em /etc/tmux.conf:

set -g history-limit 5000

Então, se eu iniciar o comando acima, não conseguirei rolar a saída. Eu não posso nem dividir a tela porque o tmux não está lá. Também não há processo no tmux:

ps -eo "%mem args" | grep -i tmux
1.1 urxvt -name konsola_desktop -e sh -c tmux -c 'cat /dev/logi'
0.0 sh -c tmux -c 'cat /dev/logi'

Mas quando faço as seguintes etapas:

urxvt -name 'konsola_desktop'
tmux
cat /dev/logi

tudo funciona bem:

ps -eo "%mem args" | grep -i tmux
0.1 tmux
0.1 tmux

Alguém sabe o que está acontecendo?

    
por Mikhail Morfikov 14.12.2013 / 05:18

1 resposta

1

Eu encontrei uma solução.

Primeiramente, é melhor usar o arquivo de configuração do tmux em vez de colocar um comando na linha de inicialização automática. Então, seria:

new true
set set-remain-on-exit on
new -n logi "cat /dev/logi"
neww -n test
splitw -v -p 50 -t 0 
neww -n test2
splitw -h -p 50 -t 0
set -u set-remain-on-exit

As linhas acima devem ser adicionadas ao /etc/tmux.conf, e agora a linha que inicia o console deve ficar assim:

(sleep 2 && urxvt -name 'konsola_desktop' -e bash -c "tmux attach") &

É ainda melhor porque posso definir várias janelas e alternar entre elas.

    
por 14.12.2013 / 07:02