tmux
のスクロールバックバッファサイズを増やすにはどうすればいいですか?
コピーモードに入ると、利用可能なスクロールバック行の数(右上隅に表示される)は常に2000を下回ります。すべてのtmuxコマンドのリストを見つけようとしましたが、スクロールバックサイズについては何も見つかりません。すべての人にとって、このオプションを設定するための screen
コマンド がtmux
では機能しません。
tmux
1.8、Ubuntu 12.04 LTS、konsole
またはgnome-terminal
のいずれかを使用。
履歴制限は、ペイン作成時に固定されたペイン属性であり、既存のペインでは変更できません。値はhistory-limit
セッションオプションから取得されます(デフォルト値は2000です)。
異なる値でペインを作成するには、ペインを作成する前に適切なhistory-limit
オプションを設定する必要があります。
別のデフォルトを設定するには、.tmux.conf
ファイルに次のような行を追加します。
set-option -g history-limit 3000
注:非常に大きなデフォルト値を設定する場合は注意してください。ペインを多数作成すると、RAMが大量に消費される可能性があります。
既存のセッションの新しいペイン(または新しいウィンドウの最初のペイン)には、そのセッションのhistory-limit
を設定できます。あなたは(シェルから)このようなコマンドを使うかもしれません:
tmux set-option history-limit 5000 \; new-window
新しいセッション(の初期ウィンドウの初期ペイン)では、セッションを作成する前に「global」history-limit
を設定する必要があります。
tmux set-option -g history-limit 5000 \; new-session
注:history-limit
値を再設定しない場合、新しい値は将来作成される他のペイン/ウィンドウ/セッションにも使用されます。 history-limit
を(少なくとも一時的に)変更せずに、それ自身の特定の制限で単一の新しいペイン/ウィンドウ/セッションを作成する直接的な方法は現在ありません(ただしshow-option
は(特に1.7以降で)現在の値を取得するのに役立ちます)。後でそれ)。
次のコマンドでtmux設定ファイルを開きます。
vim ~/.tmux.conf
構成ファイルに次の行を追加します。
set -g history-limit 5000
いったんログアウトしてから再度ログインし、新しいtmuxウィンドウを起動します。これで、上限は5000になります。
これはntc2とChris Johnsenの答えに基づいています。カスタムの履歴制限で新しいセッションを作成したいときはいつでもこれを使用しています。将来のセッションのために履歴制限を永久に変更することなく、スクロールバックが制限されたセッションを作成する方法を望みました。
tmux set-option -g history-limit 100 \; new-session -s mysessionname \; set-option -g history-limit 2000
これは既存のセッションがあってもなくても機能します。新しいセッションのためのhistory-limitを設定した後それは私のために2000年であるデフォルトにそれをリセットします。
私はこれをもう少し便利にする実行可能bashスクリプトを作成しました。スクリプトに渡される最初のパラメータは新しいセッションの履歴制限を設定し、2番目のパラメータはそのセッション名を設定します。
#!/bin/bash
tmux set-option -g history-limit "${1}" \; new-session -s "${2}" \; set-option -g history-limit 2000