Usando o Tramp para logs

8

Estou tentando usar o Tramp com auto-revert-tail-modepara executar uma cauda de um log remoto. Sempre que o log é atualizado (geralmente), a tela passa rapidamente para a parte inferior do arquivo e depois para o meu local atual no arquivo. Existe uma maneira de evitar esses saltos frequentes? Eu simplesmente quero poder procurar e pesquisar a versão mais atualizada do arquivo, mas sem ser enviada para a parte inferior do arquivo durante todas as atualizações.

Além disso, existe alguma maneira de silenciar / silenciar as atualizações frequentes na barra de status? "Inserção do vagabundo: ..." "Codificação do vagabundo: ...."

ChaimKut
fonte

Respostas:

11

auto-revert-tail-modeé ótimo, mas tem seus limites. Portanto, prefiro usar um comando de shell assíncrono. Abra o diretório remoto dired, posicione o cursor no arquivo que deseja assistir e aplique ! tail -f * &.

Se você deseja suprimir mensagens do Tramp, diminua a verbosidade. (setq tramp-verbose 1)deve ser suficiente.

Michael Albinus
fonte
Esta é uma otima soluçao. Se eu tentar tailum arquivo adicional em um buffer diferente, o Emacs responderá: "Um comando está sendo executado. Mate-o?" . Existe alguma maneira de executar vários buffers com um comando Async Shell?
ChaimKut 01/09/2015
1
Você deve renomear o *Async Shell Command*buffer. Mova o cursor para algum lugar no buffer e aplique M-x rename-buffer.
Michael Albinus
Como posso fazer essa sequência (! Tail -f * &) em uma função lisp na qual forneço o nome do arquivo remoto?
Diogo
Meu hack temporário: (start-process-shell-command <nome do processo> <nome do comprador> "ssh <uso> r @ <host> 'cd / caminho / para / pasta && tail -f <nome do arquivo>")
Diogo
Tente adicionar (setf async-shell-command-buffer 'rename-buffer)ao seu arquivo .emacs. Em seguida, ele deve renomear o buffer de comando async existente e criar o novo
Baggers