web-dev-qa-db-ja.com

Tmuxキーテーブルの説明

bind-keyのさまざまなオプションを理解するために、tmuxのマニュアルページを読んでいて、-tフラグにぶつかりました。

If -t is present, key is bound in key-table: the binding for command mode with -c or for normal mode without. To view the default bindings and possible commands, see the list-keys command.

key-tableとは正確には何ですか?このコマンドは通常のbind-keyコマンドとどのように異なりますか?

4
Mikey S.

キーテーブルは、list-keysコマンドの説明で名前が付けられており、manページで前述されています。

  • vi-編集、emacs-編集

    コマンドプロンプトで行を編集するときに使用されます。
    例えば。コピーモードのcommand-Promptconfirm-before、または「Goto Line」、「Search Up」、または「SearchDown」プロンプトを介して

  • vi-choice、emacs-choice

    リストから選択するときに使用されます。
    例えば。 choose-clientchoose-sessionchoose-windowchoose-treechoose-listchoose-buffer、またはfind-window経由

  • vi-copy、emacs-copy

    スクロールバックまたはその他の出力を表示するときに使用されます。
    例えば。 copy-moderun-Shell出力、またはスタートアップコンフィギュレーションファイルまたはsource-fileからのエラー。

これらのテーブルにバインドされているキーは、さまざまな「モード」がアクティブなときにアクティブになります。 「モード」自体がアクティブなペインとの通常の対話に優先するため、プレフィックスキーは必要ありません。

さらに、これらのテーブルのバインドは特定の特別な目的のコマンド(たとえば、移動や編集に関連する)に制限されており、各キーは1つのコマンドにのみバインドできます(つまり、\;を使用してキーを次のシーケンスにバインドすることはできません)複数のコマンド)。

これらの「モードコマンド」はマニュアルページに記載されていませんが、テーブルのリスト(tmux list-keys -t emacs-copyなど)またはソースコード(mode-key.c)を調べることで、それらのほとんどを見つけることができるはずです。それらの名前は一般的に自己記述的です(例:cursor-uppage-upcancelなど)。

6
Chris Johnsen