Mac OS Xターミナル:マウスのサポート?


75

ターミナルアプリでマウスサポートを有効にするネイティブオプション(つまり、追加のソフト/パッケージ/プラグインをインストールしない)はありますか?

実際、私はvimこのオプションset mouse=a(マウス機能を有効にする)をたくさん使っています。

ただし、Terminalはxtermのすべての機能をサポートしているわけではないようです。

ターミナルはかつてマウスをサポートしていたように見えますが(ググリングの後)、どこに行ったのでしょうか。

注意:vimだけでなく、Terminalでのマウスのサポートが本当に必要なので、MacVimを提案しないでください:]


xtermは、Terminalがサポートしないものをサポートしていますか?コピーオンハイライトとミドルペースト?
イグナシオバスケス-アブラムス

マウスの報告。それは実際のマウスのサポートです。コピーオンハイライト、ミドルペーストなどは、私が知る限り、実際にはターミナルとは関係ありません。

2
コピーオンハイライトとミドルペーストはターミナル関連を食べました-そのターミナルはそれらをしません-あなたはそれらのためにiTermを試すことができます
-user151019

@マーク:私はそれをチェックして気に入った。ターミナルははるかに優れた太字を処理しますが。まあありがとう。

2
@Arjan:一部のインタラクティブなCLIアプリはマウスをサポートしています。たとえば、テキストカーソルをに配置しますvim
エリオッタブル

回答:


104

答えが見つかりました!

友人がトリックを教えてくれたので、とても簡単なので恥ずかしいです。

Altキーを押してクリックするだけです!(vimで以前にアクティブ化されたマウスサポートを使用)


OSX 10.11 El Capitaのアップデート

Chris Pageの回答をご覧ください。


11
私は半世紀のような感じでOS Xのパワーユーザーでしたが、これを知りませんでした。私は非常に感銘を受けました。1票ではなく100票の賛成票を投じることができればと思います。
エリオッタブル

4
とにかく使用する要件を無効にするにはalt
-philfreo

8
とにかく、私にとっては同じではありません。多くの場合、私はキャラクターをクリックし、カーソルはどこか別の場所になります。また、vimでタブを切り替える場合も機能しません。また、tmuxでウィンドウを切り替える場合にもうまく機能しないようです。
-andyortlieb

1
@andyortlieb:それが、私がiTerm2に移行した理由です。
avetis.kazarian

2
私には役に立たない。
マイクグラフ

23

OS X 10.11 El Capitanでは、ターミナルはマウスレポートをサポートしています。

Mouse Reportingをサポートするプログラムはエスケープシーケンスを介して有効にする必要があり、Mouse Reportingをサポートするほとんどのプログラムはそれを有効にするように構成する必要があることに注意してください。たとえば、Vimではset mouse=a(通常は~/.vimrcファイル内で)実行する必要があります。

ターミナルは、3つのマウスボタンとスクロールホイールの報告をサポートしています。2ボタンデバイスで3回ボタンを押す操作をシミュレートするには、Commandキーを押しながら右クリックします。(マウスレポートがオフの場合、Command-Right-Clickは[ 編集]> [選択の貼り付け]も実行するため、マウスレポートを使用しているかどうかに関係なく、Middle-Clickは最後に選択したテキストを貼り付けます。)

マウスレポートが有効な場合、Option ⌥修飾キーはクリックとスクロールのためにメタにマッピングされ、キーボード入力にのみ適用される「メタキーとしてオプションを使用する」キーボード設定の影響を受けません。

マウスレポートを一時的にバイパスしてターミナルビューを操作するには、Fn修飾キーを押しながらクリックまたはスクロールします。また、[表示]> [マウスレポートの許可(⌘R) ]メニュー項目があります。これを使用して、より長い期間、または修飾キーが利用できない場合にマウスレポートをバイパスできます。

有効にすると、Mouse ReportingはTerminalの既存のOption-Click動作(カーソルを移動するための矢印キー入力を送信)と「代替画面のスクロール」動作に優先することに注意してください。また、新しい[マウスレポートの許可]メニュー項目とFn修飾子は[代替画面のスクロール]にも適用され、この動作を一時的にバイパスできます。


「マウスの報告を許可する」が私の答えです。iTerm2にはこの機能がありましたが、軽量のために組み込みのターミナルアプリを使用したいだけです。
ケイ

@Kay:喜んでいますが、明確にするために、「マウスレポートを許可する」メニュー項目はマウスレポートをオンにしません。これは、Mouse Reportingが有効になっているときにリモートプログラムにマウス入力を送信するのではなく、一時的にターミナルビューと対話するためのコマンドです。プログラムは、制御シーケンスを端末に送信することにより、マウスレポートを有効にします。
クリスページ

12

Altキーを押しながらクリックして、OS Xターミナルでviにカーソルを設定する代わりに、iTerm 2を使用することをお勧めします。

Terminal vi(Mac OS X 10.7 Lion)でマウスをサポートしたかったのですが、スクロールホイールでのスクロールはサポートされていません。最終的に、ターミナルからviスクロールホイールスクロールをサポートするiTerm 2に切り替えました。altを押してカーソルを設定する必要はありません。

Lionのターミナルアプリでより高度な機能の一部を使用しない場合は iTerm 2に満足するでしょう。

編集:iTerm 2の使用時にVimでマウスサポートを有効にするには、.vimrcに次の行を追加します。

:set mouse=a

マウスホイールを使用して下にスクロールするにはどうすればよいですか?画面バッファーが上がるだけで、代替画面バッファーの使用を無効にすることでTerminal.appで取得できset t_ti= t_te=ます~/.vimrc
ダニエルベック

:set mouse=a.vimrcで設定する必要がありました-これはVimでマウスのサポートを有効にする通常の方法ですが、マウス入力はTerminal.appによって消費されるようです。ただし、iTerm2.appでは、スクロールホイールを使用してテキストファイルを上下にスクロールすると完全に機能するようです。
スティーブHHH

MacOS Mojave(10.14)では、OSXターミナルを使用してvimでマウスを使用しても問題ありません。
ギャガリン

1

OS X 10.4(10.5についてはわかりません)では、マウスサポートを有効にできるようです。ターミナルを開き、[ウィンドウ設定]をクリックします。ドロップダウンリストから[エミュレーション]をクリックし、[クリックしてカーソルを配置]オプションをオンにします。


1
実際、10.5のターミナル設定には10.6にも「ウィンドウ設定」のようなものはありません。[ウィンドウ]タブでできることは、背景色、スクロールサイズ、タイトル、ウィンドウサイズを変更することだけです。

1
それは10.4のみでなければなりません...

1
これは正確にはマウスのサポートではありません。これにより、ターミナルの一部をオプションでクリックできます。Terminal.appは、カーソルをそこに移動するために必要な行上/下/左/右の文字数を計算し、入力します。非常に便利ですが、OPが望んでいたものではないと思います。
ジョシュ

1

Mac OS XにはTerminal.appに加えてxtermがあることに注意してください。あなたがこれに気づいていたかどうか、あなたの質問から言えませんでした。ただし、X11パッケージがインストールされている場合は、xtermウィンドウを起動でき、マウスのサポートは問題なく機能します。


0

MouseTermは、Mac OS Xターミナルで適切なマウスをサポートしたい人に最適なSIMBLプラグインのようです。2013年5月現在、最新バージョン(2011年7月にリリースされた1.0b1)では、OS Xの標準のターミナルアプリケーションに次の機能が追加されています。

  • マウスボタンレポート。
  • マウススクロールホイールのレポート。
  • lessなどのプログラム(つまり、アプリケーションカーソルキーモードを使用するフルスクリーンプログラム)のマウスホイールスクロールのシミュレーション。
  • ターミナルプロファイルの統合(設定ダイアログを使用)。

私はそれでtmuxのとVimを使用していて、それはクリックだけでなく、ほとんどの構成でそれらの内部でスクロールしてドラッグするだけではなく、私を可能にする(オプションキーなしで!):例えば、:set mouse=avimのために、とtmux set-window-option mode-mouse on。マウスのレポートを切り替えるのは簡単で(単一のキーの組み合わせ⇧⌘M、またはシェルメニューから)、インストールすることで失うものは何もありません。

(注意:tmuxコピーモードでのクリック/ドラッグは、期待どおりに機能しません。)


別の警告-ログイン後にターミナルを最初に起動した後、ターミナルを終了して再起動するまでマウスのサポートがまったく機能しないことに気付きました。
マイケル

@Michael:症状は、古いSIMBL Issue 13でおなじみのように聞こえます。SIMBLを更新すると、おそらくそれが修正されます。(0.9.9または0.9.9b)
netj

0.9.9を試しましたが、動作しませんでした。コメント#23でAppleScriptを試し、「行末が予想されるが識別子が見つかりました」(「Snow Leopard」を「Lion」に変更しましたが、Lionを実行しています...)
マイケル

0.9.9b(Lion用にパッチ済み)も試しましたが、それでも修正されません。マウスイベントを受け入れる前にターミナルを再起動する必要があります。
マイケル

0

少なくともTerminal 2.4(OS X 10.9.3)では、詳細設定でxtermエミュレーションを設定できます。これにより、マウスが適切にサポートされました。


動作しません(vimとtmuxでテストしてください)。
avetis.kazarian 14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.