Comment puis-je écrire tout le défilement d'une session tmux dans un fichier ?
capture-panel
peut saisir l'écran actuel, mais pas tout le défilement arrière.
Réponse acceptée :
Cela dépend de la valeur de history-limit
que vous avez défini dans votre .tmux.conf
– la valeur par défaut est 2000; si vous souhaitez en capturer plus, vous devrez définir explicitement le nombre de lignes.
Pour capturer l'intégralité du défilement arrière, passez en mode copie, sélectionnez l'intégralité du défilement arrière et copiez-le dans le tampon, puis collez-le dans votre fichier.
La manière dont vous y parviendrez dépendra des mode-keys
option que vous préférez, vi ou emacs. man tmux
a un tableau utile décrivant les clés respectives.
J'ai ce qui suit dans mon .tmux.conf
pour simplifier :
unbind [
bind Escape copy-mode
unbind p
bind p paste-buffer
bind-key -t vi-copy 'v' begin-selection
bind-key -t vi-copy 'y' copy-selection
Le processus de capture du défilement complet est alors :
Préfixe Échap :pour passer en mode copie
v :pour commencer la sélection visuelle (en supposant que vous êtes déjà en bas de l'écran)
g g :pour tout capturer dans le scrollback
y :pour le copier dans le tampon
Préfixe c :ouvre une autre fenêtre tmux
vim scrollback.txt
je :passe en mode insertion dans vim
Préfixe p :coller dans le fichier
Il y a aussi une réponse ici décrivant comment copier le tampon dans un fichier temporaire en utilisant xsel
cela pourrait être utile.