tmuxは複数のコマンドを1つのvi-copyコマンドに結合したり、tmuxコマンドで行をヤンクしたりします。

tmuxは複数のコマンドを1つのvi-copyコマンドに結合したり、tmuxコマンドで行をヤンクしたりします。

tmux では、\; を使用して複数のコマンドをキーに連結できることは知っています。こちらをご覧ください しかし、vi モードでは、キーを 1 回押すだけで、現在の行の先頭に移動し、選択を開始し、行末に移動し、選択範囲をコピーします。

tmux.confで次のように記述すると bind-key -t vi-copy 's' start-of-line \; begin-selection \; end-of-line \; copy-selection \;

このエラーが発生します: 69: usage: bind-key [-cnr] [-t key-table] key command [arguments]

または、現在の行を 1 つのキーでヤンクする別の方法はありますか。

答え1

残念ながら、モード固有のバインディング( で実行-t)は現在、一度に1つのコマンドしかサポートしていません。さらに、コマンドはモード固有のコマンドの1つである必要があり、一般的なコマンドは使用しないでください。tmuxコマンド。ソースでは、関数は、cmd_bind_key_check使用時に非オプション引数を-t1 つのキーと 1 つのコマンドの 2 つに制限します。これが、使用方法メッセージが表示される理由です (ただし、メッセージはあまりわかりやすくありません)。

ただし、コマンドを呼び出すcopy-end-of-lineと、キー入力を数回節約できます。vi-copyモード:では、0 Dの代わりにを使用します0 Space $ Enteremacs-copyモード:では、C-a C-kの代わりにを使用しますC-a C-Space C-e C-w

関連情報