web-dev-qa-db-ja.com

TmuxとiTermを搭載したMacでのスクロール

OS X YosemiteでiTerm 2.1.4とTmuxを使用しています。 iTermウィンドウを上下にスクロールできるようにしたいのですが、スクロールを制御する方法がわかりません。 tmuxをiTermで使用するとスクロールが制御されますか、それともiTermがスクロールを制御しますか?

ITermをスクロールするはずのさまざまなキーを使用してみましたが、コマンドラインで「~~~~~」の文字しか取得できません。この設定でスクロールするにはどうすればよいですか?

15
Ray

Tmuxのスクロールは、マウスホイールやトラックパッドを使用したスクロールとは少し異なります。

Tmuxでは、スクロールは最初に 'prefix- ['を送信することで行われます。ターミナルウィンドウの右上隅に小さな黄色のボックスが表示されます。

このモードでは、矢印キー、PageUp、PageDown、Ctrl-U、Ctrl-D、hjkl(viモード)、またはその他の構成可能な移動キーを使用して、バッファーを前後にスクロールできます。

Tmuxの比較的最近のビルドには、スクロールモードでマウスを使用できるオプションがあります。

これを.tmux.confに追加します

set-option -g mouse on

さらに、メモリが機能する場合、tmuxはiTermに「組み込まれている」ため、多重化などの機能も組み込まれています。 iTermでtmuxを使用する理由はありますか?ビルトインOSXターミナルはtmuxのようなマルチプレクサによって確実に強化されていますが、iTermはスタンドアロンソリューションであることによってこれらの欠点を軽減しようとしています。

編集1:El Capitanにアップグレードした後、Terminal.appとtmuxを使用すると、見慣れない動作に気づきました。これは私が知らなかったオプションを詳述する優れた記事に私を導きました、そしてそれは私が期待することができるよりもより完全にあなたの質問に答えようとしています。私の知る限り、すべてのオプションはtmux固有であり、OSXのバージョンには依存しないため、Yosemiteでの使用は問題ありません。スクロールする質問については、次のようなオプションで説明します。

bind-key -t vi-copy WheelUpPane scroll-up
bind-key -t vi-copy WheelDownPane scroll-down

以下のリンク先の記事にあるより多くの便利なオプション。

https://ryanfb.github.io/etc/2015/10/19/tmux_mouse_mode_on_el_capitan.html

30

私はそれに対処するために次の方法を見つけました(macOS Mojave):

  • Tmuxスクロールモードを有効にしてから、上矢印キーを押します。 iTermにより、前述のスクロールの設定を行うように求められます。しかし、このプロンプトを逃した/閉じた場合、再度プロンプトが表示されることはないと思います。

  • ITerm設定->「詳細設定」->「代替画面モードのときにスクロールホイールが矢印キーを送信する」->「はい」に設定します。

0
everyonesdesign