Ответы:
Наиболее часто используемые команды в режиме bash emacs по умолчанию для наиболее часто используемых клавиатур:
Там также unix-filename-rubout
для Readline
!
# in ~/.inputrc
# press ctrl-b to delete unix filename parts
# see: man bash | less -p 'unix-filename-rubout' and
# http://www.calmar.ws/vim/vi-bash.html
set editing-mode vi
set keymap vi
"\C-b": unix-filename-rubout
unix-filename-rubout
является правильным ответом на заданный вопрос, поскольку он удаляет косую черту или пробел, тогда как Alt-BkSpc
остановится на таких символах, как дефис, подчеркивание, точка и т. Д.
По умолчанию bash (и я предполагаю, что zsh) будет в режиме emacs. Вы можете попробовать что-то вроде этого:
Esc + bвернет курсор на одно слово. Ctrl + kудалит до конца строки.
Большинство современных оболочек (например, bash) реализуют расширенные функции редактирования командной строки. Эти команды либо близки к редактированию emacs (Ctrl + A для начала строки, Ctrl + E для конца строки, ...).
Если вы знакомы с vi-подобными редакторами, вы можете попробовать включить vi-mode.
set -o vi
Он предоставляет вашей оболочке vi-подобные режимы (режим команд / режим вставки), и вы получаете доступ к стандартным командам (d для удаления, r для замены, ...)
В режиме Vi, вот как вы будете делать то, что вы описали:
Esc (command mode); d; b.
db
его в bash. Я также нашел vi-backward-kill-word
в zsh то, что я хочу, и это более удобно, чем установить vi-mode в bash. Но я все еще хочу найти ярлык для режима emacs для этой цели в bash.
db
есть в некоторых случаях.
bindkey [key] vi-backward-kill-word