Ctrl+左/右矢印キーの問題

Ctrl+左/右矢印キーの問題

最後のシステムアップデート以降Ctrl+左/右矢印開くコマンド扱いにくい端末は何もしません。また、ctrl + uに問題があります。通常、このコマンドはカーソルから行の先頭まで消去しますが、今では行全体を消去するためです。これらの問題を解決する方法を知っている人はいますか?みんなありがとうございます。

答え1

FWIW、これはzshデフォルトを使用する私の環境(rhel5.x)で動作します。

bindkey "^[[1;5C" forward-word
bindkey "^[[1;5D" backward-word

答え2

Ctrl+Uカーソルが行の終わりにあるためである可能性が高いです。第二に、あなたが言う「最後のシステムアップデート」はどのバージョンのGentooですか?

Ctrl+左/右 何をしますか?

  • zsh設定に追加:

    bindkey '^[[1;5C' emacs-forward-word
    bindkey '^[^[[D' emacs-backward-word
    
  • 私が見つけた古いスクラップで(助けることができます):

    bindkey ";5C" forward-word
    bindkey ";5D" backward-word
    
  • それとも見てくださいこれリンクのどれが役に立ちますか?

ノート:設定は機能しますが、想定されたキーが必要に応じて機能しない場合(おそらくキー定義があなたと私の定義と異なるため)、次の手順を実行します。

cat > /dev/null

そして、出力したいキーを押してそれに応じて調整します。

答え3

何が起こるのかいいえディストリビューション(Gentoo、Debian、RHELなど)またはシェル(ZSH、KSH、BASH)に直接依存します。terminal emulator使用されているバージョンとその設定(konsole、terminator、urxvt、lx-terminalなど)によって異なります。ディストリビューションは他の標準シェル構成(fx.、、.bashrcfx.、.zshrc)を使用している可能性があり.inputrc、他のシェルを使用している場合はそのディストリビューションのシェル構成ですでにこれを処理している可能性があります。

以下は、いくつかのターミナルエミュレータ関連のソリューションです。

urxvt/rxvt-unicode (およびその他):

bindkey "^[Od" backward-word
bindkey "^[Oc" forward-word

alacritty、konsole、terminator、xterm(およびその他):

bindkey "^[[1;5D" backward-word
bindkey "^[[1;5C" forward-word

より一般的なアプローチを使用するには、ターミナルを実行してキーの組み合わせを押してから、目的のCtrl + Vエスケープコード(名前)(この場合はキーの組み合わせCtrl + Left ArrowCtrl + Right Arrow-)を押して、各キーの組み合わせの出力を2つの引用符の間に入れてキーバインディングを変換します。

答え4

外部キーボードを搭載したMacBookでも同様の問題が発生したため、この問題が発生しました。

その結果、ctrl + Leftとctrl + Rightは次のように設定されます。Mission Controlのキーボードショートカット

システムでこの機能を無効にすると問題が解決しました。

次へ追加

bindkey '\e\e[C' forward-word
bindkey '\e\e[D' backward-word 

同じ操作を行うには、Alt+右とAlt+左を有効にします。

関連情報