現在、iTerm2とbyobuを使用してOS Xを使用していますが、OS Xで画面を垂直に分割する方法がわかりません。Linuxでは、Ctrl + F2で画面を垂直に分割できますが、OSXでは、 Appleの異なるキーボードのおかげで動作します。
私はソリューションを探し回っていましたが、これを理解することはできません。 Shift + F2で画面を水平に分割できますが、垂直に分割できる必要があります。誰もがAppleコンピュータで動作するようにbyobuのキーボードバインドを取得する方法を考え出しましたか?
前もって感謝します。
オープンになっているようです この問題のバグ 。
OS Xでローカルにbyobuを使用するように、またUbuntu 14.04サーバーでsshを介してリモートで使用するようにiTerm2を構成することができました。
を使用して:
まず、OS Xのシステム設定で、キーボード設定を編集し、byobuと競合する可能性のあるショートカット設定を削除または変更します(つまり、 Ctrl + F1-F12)。
完全な機能を追加せずに機能する回避策を次に示します FN キー。これにより、byobuエスケープキーを使用してウィンドウを垂直に分割できます。
byobu
を開始します。
ご希望を設定 Ctrl-A 実行による動作:byobu-ctrl-a
。私はEmacsモードを選択しました。
実行byobu-config
そして、エスケープシーケンスを選択または変更します。新しいデフォルトを使用しました Ctrl + S。の F12 キーはエスケープシーケンスでもあります
これで、エスケープシーケンスを使用してコマンドを発行できます。試して F12 それから % または Ctrl + s それから % ウィンドウを垂直に分割します。コマンドの完全なリストについては、試してください Ctrl + s それから ? または F12 それから ?。
いくつかのキーマッピングをiTerm2プロファイルに追加して、 CTRL、 ALT、 SHIFT、そして FN by風で動作するキー。これは退屈ですが、演習を行ったところうまくいくようです。これらのキーマッピングをiTerm2で保存する自動化された方法はないと思います。
[キー]ペインを開き、次のキーバインドを手動で追加します。 1つのキーバインディングを追加する方法の例を次に示します。
CTRL + F2
[1;5Q
tmuxソースコード を参照して、ここにリストされていないキーシーケンスの制御文字を決定できます。
これらすべてのマッピングに対してこれを繰り返して、対応するbyobuコマンドを機能させます。
[1;5Q
[1;6Q
[1;3D
[1;3C
[1;3A
[1;3B
[1;5R
[1;5S
[1;6R
[1;6S
[1;4D
[1;4C
[1;4A
[1;4B
[15;5~
[15;6~
[17;3~
[17;5~
[5;3~
[6;3~
[19;5~
[19;4~
[19;6~
[20;5~
[23;3~
[23;5~
[24;3~
[24;5~
[2;3~
物事を機能させるには、次のことが必要です。
エスケープシーケンスに関する他の参照: SOリンク および xterm-keys.c
Tmux 1.8とtmux 1.9では、tmuxウィンドウのデフォルトディレクトリにいくつかの違いがあるようです( Src 、 Src 、 Src )。 tmux 1.9でbyobuを使用している場合、これを~/.byobu/keybindings.tmux
ファイル。これにより、新しいウィンドウまたは垂直/水平分割を作成して、それらが現在のペインと同じディレクトリで開くようにします。
unbind-key -n F2
bind-key -n F2 display-panes \; new-window -c "#{pane_current_path}" -n -
unbind-key -n C-F2
bind-key -n C-F2 display-panes \; split-window -hc "#{pane_current_path}"
unbind-key -n S-F2
bind-key -n S-F2 display-panes \; split-window -vc "#{pane_current_path}"
unbind-key %
bind-key % display-panes \; split-window -hc "#{pane_current_path}"
unbind-key |
bind-key | display-panes \; split-window -vc "#{pane_current_path}"
押す F5 設定を再読み込みします。