Mac端末でマウススクロール端末コマンド履歴を無効にする

Mac端末でマウススクロール端末コマンド履歴を無効にする

最近、Macの端末でtmuxを使い始めました。ただし、tmuxセッション中にマウスで上下にスクロールするたびに、ターミナルウィンドウをスクロールするのではなく、コマンド履歴をスクロールします。この機能を無効にしてマウススクロールをデフォルトの動作に戻すにはどうすればよいですか?

答え1

次のコマンドを実行します。

$ tput rmcup

起こる可能性が最も高いのは、端末の「代替画面」モードを使用するコマンドをローカルまたはリモートで実行することです(たとえば、、、または、vimまたはtopncursesマッピングに役立ちます。なぜなら、ローカルディスプレイスクロールは一般的にほとんど役に立たないためです。

このコマンドはこの設定をリセットし、スクロール機能を再度有効にする必要があります。

iTermを使っているとしますか?

答え2

これは、アプリケーションが「カーソル位置決めモード」にあるとき、端末がマウスホイールの上下のキーを送信しますが、マウス自体を要求しないためです。これはマウスオプションがオフになっているtmuxの場合です。

これを行わないように端末を設定することもできますが、そうする可能性はほとんどありません。ただし、ほとんどの端末では、Shift、Ctrl、またはその他の修飾キーを押しながら選択またはスクロールできるため、試してみることができます。

tmuxを実行すると、tmuxが制御できる機能がほとんどないため、ターミナルロールバックが信頼できないことがわかります。 tmuxを使用するときに推奨されるテキストコピー方法は、tmuxの独自のマウスサポートをオンにして(set -g mouse on)、コピーモードを使用することです。

答え3

@Nicholas Marriottがコメントで述べたように、set-option -g mouse on.tmux.confあなたが望むことを達成することができるあなたの意志の1行。 (最新のtmuxバージョンを使用していることを確認してください。)置くGグローバルオプションマウスの対話をオンにします。

このオプションを選択すると、tmuxmouseも自動的にテキストをコピーするため、tmuxウィンドウをクリックして境界線をドラッグできます。

これにはいくつかの副作用があるかもしれません。

tmuxでのスクロールは、通常の端末エミュレータでのスクロールとは若干異なります。たとえば、「入力中に下にスクロールする」操作を効果的に実行する方法がわかりませんが、必要に応じて下に^Cすばやく戻る機能を置き換えることができるようです。 (上にスクロールすると下にだけ移動し、他のコマンドプロンプトは印刷されません。)

(私が知っている限り)最大の欠点は、ポケットベルプログラム内でスクロールできないことです。 (それでもこの問題を何とか解決できます。)


もともと公開日と判断した場合、この質問に対する回答は必要ありませんが、誰かに役立つことを願っています。 :)

関連情報