tmuxでスクロールするには?

tmux

tmuxを使い始めたばかりで、とても気に入っているのですが、開いているバッファ/ペイン/ウィンドウ内でスクロールできるようにしてほしいです。マウスで動くかどうかは気にしていません。tmux の man ページを検索しても、”scroll” という単語が表示されているのは 2 つだけで、どちらもコピーモードに関係しています。コピーモードに入る手間をかけずにスクロールする方法はないのでしょうか?

  1537  chadoh  2010-11-10


ベストアンサー

Ctrlbの後に[を押すと、通常のナビゲーションキーでスクロールできます(例: Up ArrowPgDn)。qを押すとスクロールモードを終了します

あるいは、Ctrlb PgUpを押して、コピーモードに直接入り、1ページ上にスクロールすることもできます(これは、あなたがほとんどの時間を望んでいるように聞こえるものです)

viモード(下記参照)では、ShiftkShiftj(既にスクロールモードになっている場合)を使って、ページを1行ずつ上下にスクロールすることもできます。シフトされていない場合は、ページの代わりにカーソルが移動します

男のページより抜粋

tmux は、デフォルトではプレフィックスキー ‘C-b’ (Ctrl-b) とコマンドキーを組み合わせたキーを使用して、アタッチされたクライアントから制御することができます

 The default command key bindings are:

[           Enter copy mode to copy text or view the history.

Function                     vi              emacs
--------                     --              -----
Half page down               C-d             M-Down
Half page up                 C-u             M-Up
Next page                    C-f             Page down
Previous page                C-b             Page up
Scroll down                  C-Down or C-e   C-Down
Scroll up                    C-Up or C-y     C-Up
Search again                 n               n
Search again in reverse      N               N
Search backward              ?               C-r
Search forward               /               C-s

他にもたくさんあります。C-b がコマンドキーとしてバインドされているので、ページアップに使う場合は C-b を 2 回押さなければならないことに注意してください。コピーモードコマンドの前に繰り返し回数を指定する方法については、マニュアルページを参照してください

Ctrlbでキーバインドモードを設定し、その後、Ctrlbでキーバインドモードを設定します

:set-window-option mode-keys emacs

or vi.

1843  Paused until further notice.  2010-11-11


まあ、スクロールを設定するための適切な方法を考える必要があります: ~/.tmux.confで追加します

set -g mouse on        #For tmux version 2.1 and up

or

set -g mode-mouse on   #For tmux versions < 2.1

それは私のためにWindowsとペインで動作しました。これでtmuxは完璧です

実用的な tmux に tmux.conf ファイルの詳細情報があります

383  chaiyachaiya  2012-11-25


私の.tmux.confから

# Sane scrolling
set -g terminal-overrides 'xterm*:smcup@:rmcup@'

これにより、ネイティブの xterm スクロールが可能になります

155  togdon  2011-08-22


最新のtmux 2.1では、マウスを使って粛々とスクロールするためには、これが正解です

set -g mouse on
" sane scrolling:
bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'copy-mode -e; send-keys -M'"

.tmux.conf をリロードするだけでは十分ではなく、例えば tmux kill-server && tmux のように、tmux を再起動する必要があります

https://github.com/tmux/tmux/issues/145からの引用です

67  Flov  2015-12-01


私の場合、OSXではopt + UpArrowopt + DownArrowだけです

17  ythdelmar  2015-04-17


これが私の作った方法であり、デフォルトの方法よりも良いと思う理由です

試しに、すべてのコードセクションを~/.tmux.confに入れてみてください

ステップ1.接頭キーを変更して、1ビットに届かないようにします。B’は一見近いキーに見えますが、人差し指2本の真ん中(それぞれ’F’と’J’のところ)にあります。このショートカットはtmuxでは必須なので、C-jの方が手の動きがゼロになるので(キーを打つ以外は)ずっと良いです

set -g prefix C-j
unbind C-b
bind C-j send-prefix

ステップ2.S’ (コピーモードに入る) は、1) 閉じる (上記と同じ理由)、2) もう一方の手を使う (例: ボクシングの 1-2 や、ディレクトリ内のファイルを表示する ls コマンド)、3) “スクロール” のニーモニックと考えることができます (コピーモードはスクロールだけではありませんが)

bind s copy-mode

ステップ3.最後は、実際のスクロールです。P’ と ‘N’ は、Emacs ユーザにはおなじみです。これらは親しみやすく、直感的で(キーボードでは’P’は’N’の上にあります)、ニーモニック(”previous “と “next”)です。Emacs でスクロールした後に tmux に行くのであれば、これらのショートカットがあるのは理にかなっています

しかし、私は ‘I’ と ‘K’ がさらに良いことを発見しました – 彼らは ‘P’ と ‘N’ よりもさらに近く、(同じ理由で)直感的です; ニーモニックについては – スクロールを行うような一般的なものとして、ニーモニックはすぐにあなたの脳をバイパスして筋肉の記憶に入るので、本当に重要ではありません

bind -t emacs-copy 'p' scroll-up
bind -t emacs-copy 'n' scroll-down
bind -t emacs-copy 'i' scroll-up
bind -t emacs-copy 'k' scroll-down

14  Emanuel Berg  2013-06-21


私はこれのために多くの周りを検索し、私のための最良のソリューションは、この詳細なガイドに記載されているように動作します。http://tangledhelix.com/blog/2012/07/16/tmux-and-mouse-mode/

これらのバインディングを ~/.tmux.conf に追加します

set -g mode-mouse on

unbind +
bind + \
new-window -d -n tmux-zoom 'clear && echo TMUX ZOOM && read' \;\
swap-pane -s tmux-zoom.0 \;\
select-window -t tmux-zoom

unbind -
bind - \
last-window \;\
swap-pane -s tmux-zoom.0 \;\
kill-window -t tmux-zoom

上記の方法を実装したことで、プレフィックス + を使って最初に各ペインにズームインすることで、ウィンドウ内のペインからもコピーすることができます

マウスモードで欠けていた重要なディテールの一つは、コピーする領域を選択する前にShiftキーを押すことです。これにより、tmuxコピーバッファではなく、従来のターミナルバッファにコピーされます。(https://wiki.archlinux.org/index.php/Tmux#Scrolling_issues)

8  muneeb  2016-03-31


私は、tmux-better-mouse-mode プラグインを試してみて、tmux マウス関連の問題のほとんどを解決することをお勧めします

Tmux 2.1+と新しいset-option -g mouse onのアプローチに対応しています

8  aymericbeaumet  2016-12-07


私の場合、~/.tmux.confに以下のように入れているだけです

# Allow xterm titles in terminal window, terminal scrolling with scrollbar, and setting overrides of C-Up, C-Down, C-Left, C-Right
set -g terminal-overrides "xterm*:XT:smcup@:rmcup@:kUP5=\eOA:kDN5=\eOB:kLFT5=\eOD:kRIT5=\eOC"

(これを有効にするには再起動が必要な場合があります)

Update:

Putty Connection > Data > Terminal-type の設定を “xterm” から “putty” (フォーマットの問題を修正するために使用) に変更すると、この解決策は動作しなくなることがわかりました

Update 2:

端末の種類を「putty」にしたい場合に使用します。set -g terminal-overrides "putty*:XT:smcup@:rmcup@:kUP5=\eOA:kDN5=\eOB:kLFT5=\eOD:kRIT5=\eOC"

7  phocks  2015-10-28


これは私には効果がありました

vim ~/.tmux.conf
set -g mode-mouse on      ###Insert this setting with vim, then source the file.
tmux source-file ~/.tmux.conf

6  Chhetri  2017-01-04


FWIW、macbook/OSX Mojaveでは、ctrl+[の後に行います

  • up arrowをラインアップに
  • down arrowで行下げ
  • fn + up arrowページアップ用
  • fn + down arrowページダウン用
  • q で表示モードを終了します

5  mithunpaul  2019-09-22


  • Ctrl + A – スクロールを開始します
  • Ctrl + C – スクロールを停止します

-3  user656723  2016-10-26


タイトルとURLをコピーしました