CtrlまたはAlt ANDバックスペースを使用してBashの最後の単語を削除する


17

Linuxでは、最後の単語を削除するためにCtrl- を押しBackspaceていましたが、Bashターミナルでそれを行う方法がわかりません。

OS XIでは、同じことを行うためにAlt- Backspaceを使用します。

最後の単語を削除するためにCtrl-またはAlt- Backspaceキーの組み合わせをBashに認識させる方法はありますか?

Linuxではterminatorターミナルエミュレータとして使用し、OSXではを使用しますiTerm2


1
Alt-⌫別名Alt-←別名Alt-Backspaceは、私にとって完璧に機能します。ターミネーター0.93を使用しています。
テディ

回答:


31

常にCtrl- を使用できますW。カーソルの前の単語を削除し、すべてのBashで機能します。

Bashのキーボードショートカットのリストについては、こちらをご覧ください。


1
うわー、これは私が端末を永久に使用する方法を変更したかもしれません。ありがとう!
デビッド

3
これは、質問に答えていない
Selの

5

iTermの環境設定でオプションをメタキーとして設定するだけです(プロファイル»キー)。

backward-kill-wordMeta-Ruboutデフォルトでは(Opt-Backspace)にバインドされています。

AppleのTerminal.appにも同じオプションがあります(柔軟性は劣りますが)。


2
実際には、「+ Esc」設定を使用する必要があります。「メタとして機能」に設定するだけ?で、単語が削除される代わりに印刷されます。
-slhck

@slhck私のためではない。しかし、とにかく開発者が推奨しているので、それは悪いことではありません。
ダニエルベック

2

ターミネーターでは、次の「プラグイン」と一緒に使用できます

[keybindings]
    kill_word = <Control>BackSpace

構成ファイル内。これは、マップされますCtrl- BackspaceするESCDEL、別のshorcutを最後の単語を削除します。


残念ながら、これはターミネーター1.9で機能しなくなりました。万が一修正を提供してもらえますか?
Selの

1
申し訳ありませんが、かなり前にターミネーターの使用を停止しました
...-OlivierBlanvillain

2

.inputrcホームディレクトリにファイルを作成し、このコンテンツを内部に追加できます。

"\C-h": backward-kill-word

1
これとC-w受け入れられた答えでは、「単語」とみなされるものが異なることに注意してください。C-wそれは、その後のスペースを非空白文字に遭遇するまで、カーソル位置から削除されます(つまり、"this is a/se=weird |test"どこ|マークは、カーソル位置が得られます"this is test")。対照的に、C-hここでのバインド(bind '"\C-h": backward-kill-word"a でバインドできる.bashrc)は"this is a/se= test"、基本的にスペースだけでなくbash変数の単語を区切るため、を生成します。
jeremysprofile

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.