Bunun terminalde ve varsayılan emacs modunda çalışacağını unutmayın ( Ctrl+ Wsizin için önceki sözcüğü silerse kullanıyorsunuz ). Bash'ın vi modunda çalışmaz ve vi / vim'in kendisini etkilemez. Bu nedenle, bu yalnızca kısmi bir cevaptır, ancak bu emacs'ın sunabileceği en iyisidir.
Bu tür şeyler, readline
davranışları kontrol edilebilen kütüphane tarafından yönetilir ~/.inputrc
. ~/.inputrc
Bu satırı düzenleyin (veya yoksa oluşturun) ve bu satırı ekleyin:
"\C-H":"\C-W"
Şimdi, yeni bir terminal açın ve çalışması gerekir.
açıklama
\C-H
Aslında Control+ BackSpace. Anahtar kodlarını Ctrl+ tuşuna ve Vardından peşinde olduğunuz tuşa basarak görebilirsiniz . Bunun BackSpacegeri döndüğünü göreceksiniz ^H
.
Şimdi, + tuşunu kullanarak önceki sözcüğü ( veya ) silen bash işlevine bağlamak mümkün olmalıdır . Ancak, bunu işe alamıyorum. Farklı tuşlarla mükemmel bir şekilde çalışır ( örneğin, önceki kelimeyi yapar + siler), ancak bir nedenden dolayı çalışamıyorum .ControlBackSpacebackward-kill-word
unix-word-rubout
"\C-H": backward-kill-word
"\C-E": backward-kill-word
CtrlEBackSpace
Bu nedenle, geçici bir çözüm olarak , önceden eşlenmiş olan Ctrl+ Backspaceile Ctrl+ işaretlerini Weşleştiriyoruz backward-kill-word
. Eğer bastığınızda Yani, Ctrl+ Backspace, buna çevrilecektir Ctrl+ Wsırayla, gönderecek olan backward-kill-word
. Bu SU yazıdan bu geçici çözüm hakkında fikir sahibi oldum .