Utilisation de Tramp pour les journaux

8

J'essaie d'utiliser Tramp avec auto-revert-tail-modepour effectuer une queue d'un journal distant. Chaque fois que le journal est mis à jour (ce qui est souvent le cas), l'écran passe brièvement au bas du fichier, puis revient à mon emplacement actuel dans le fichier. Existe-t-il un moyen d'empêcher ces sauts fréquents? Je veux simplement pouvoir parcourir et rechercher la version la plus à jour du fichier, mais sans être envoyée au bas du fichier lors de chaque mise à jour.

De plus, existe-t-il un moyen de calmer / réduire au silence les mises à jour fréquentes dans la barre d'état? "Insertion de Tramp: ..." "Encodage de Tramp: ...."

ChaimKut
la source

Réponses:

11

auto-revert-tail-modeest génial, mais il a ses limites. Par conséquent, je préfère utiliser une commande shell asynchrone. Ouvrez le répertoire distant dans dired, placez le curseur sur le fichier que vous souhaitez regarder et appliquez ! tail -f * &.

Si vous souhaitez supprimer les messages Tramp, réduisez la verbosité. (setq tramp-verbose 1)doit être suffisant.

Michael Albinus
la source
C'est une excellente solution. Si j'essaye alors tailun fichier supplémentaire dans un tampon différent, Emacs répond: "Une commande est en cours d'exécution. Tuez-la?" . Existe-t-il un moyen d'exécuter plusieurs tampons avec une telle commande Async Shell?
ChaimKut
1
Vous devez renommer le *Async Shell Command*tampon. Déplacez le curseur quelque part dans le tampon et appliquez M-x rename-buffer.
Michael Albinus
Comment puis-je faire cette séquence (! Tail -f * &) dans une fonction lisp dans laquelle je fournis le nom du fichier distant?
Diogo
Mon hack temporaire: (start-process-shell-command <process-name> <buufer-name> "ssh <use> r @ <host> 'cd / path / to / folder && tail -f <filename>")
Diogo
Essayez d'ajouter (setf async-shell-command-buffer 'rename-buffer)à votre fichier .emacs. Il devrait ensuite renommer le tampon de commande asynchrone existant, puis en créer un nouveau
Baggers