Vimがデフォルトで処理するように、Readlineはダッシュで区切られた単語を単一の単語として扱いたいと思います。
たとえば、下の行の末尾に行き、次のように入力するとctrl-W
cp long-filename-with-dashes
dashes
Readlineは、文字列全体ではなく空白まで削除します。
他のものを損なうことなくこれを設定する方法はありますか?
答え1
次の2行を使用して目的の動作を達成できましたbashrc
。
stty werase undef
bind '\C-w: backward-kill-word'
しかし、可能な副作用はまだ知られていません。
編集するinputrc
:触ったりbashrc
頼らずに正しい設定方法を見つけました。stty
この記事:
set bind-tty-special-chars Off
$if Bash
\C-w: backward-kill-word
$endif
修正する:これはVimの中立的なbind-tty-special-chars
行動(そしておそらく他のものも)を破るように見えるので、私にとって最善の解決策はVimをと 。w
e
<c-w>
stty werase undef
bashrc
\C-w: backward-kill-word
inputrc