Рассмотрим следующую подсказку bash, где ^
обозначает местоположение подсказки:
$ git commit -am "[bug 123456] Do this and that with the bug"
^
Предположим, что я хочу снова зафиксировать ту же ошибку с другим сообщением фиксации. Есть ли способ удалить текст с позиции курсора до конца строки?
Используйте Ctrl kbd> + K kbd> для удаления от курсора до конца строки.
Используйте Ctrl kbd> + U kbd> для удаления из курсора в начало строки.
Это зависит от того, используете ли Вы vi (set -o vi
) или emacs (set -o emacs
) режим редактирования в Вашей оболочке.
По умолчанию, Ваша оболочка обычно значения по умолчанию к emacs режиму редактирования.
В emacs режиме, удаляющем в конец строки, может быть выполнен при помощи ctrl-k команды.
Если, однако, Вы, оказывается, используете vi режим редактирования в своем командном процессоре, тот же результат может быть выполнен путем ввода Esc (который разместит Вас в командный режим), сопровождаемый d-$ (если Вы захотите удалить всю строку, введите dd).
Если Вы не уверены, относительно которого, режима редактирования что Вы в настоящее время используете в своей оболочке, вводите команду set -o
из командной строки и Вы сможете определить, какой режим редактирования, который Вы в настоящее время используете:
set -o
...snip...
emacs on
...snip...
vi off
Для переключения режима редактирования командной строки просто введите также:
set -o vi
или
set -o emacs
Если вы знакомы только с одним из Zsh и Bash, вот эквивалентные привязки клавиш, которые вам (возможно) понадобятся:
bind '"\C-k"':kill-line
Другая важная информация
Чтобы получить список привязок клавиш:
# bash
bind -p
# zsh
bindkey