Какая команда Eshell эквивалентна команде оболочки Ctrl-U?
В терминале я могу стереть весь ввод с помощью Ctrl-U, не вызывая его. Есть ли такая команда в Eshell?
1 ответ
Решение
Ты ищешь eshell-kill-input
, который связан с C-c C-u
по умолчанию.
Я не думаю что eshell
изначально поддерживает уничтожение всей входной строки (он убивает только текст между точкой и подсказкой), но некоторые советы должны позаботиться об этом:
;;; For Emacs 24.4 and later
(defun eshell-kill-input--go-to-eol ()
"Go to end of line before killing input"
(end-of-line))
(advice-add 'eshell-kill-input :before #'eshell-kill-input--go-to-eol)
;;; For Emacs versions before 24.4
(defadvice eshell-kill-input (before go-to-eol ())
"Go to end of line before killing input"
(end-of-line))