Для виявлення прив'язки читання рядків, які вбивають слово назад, як хочете, ви можете використовувати таку команду у своєму терміналі:
bind -p | awk '/kill/ && /word/ && /backward/'
У установці Ubuntu за замовчуванням вихід може бути:
"\e\C-h": backward-kill-word
# shell-backward-kill-word (not bound)
Другий рядок на даний момент здається не важливим, тому спробуємо розібратися, що означає перший рядок. З того, що я розумію, backward-kill-wordфункція Readline , яка насправді видалити всі символи недо попередній спеціальний символ ( /, ;, і ,т.д.) прив'язаний до \e\C-hпослідовності клавіш. Тепер, в цій послідовності \e являє на Escключ, \C- на Ctrlключ, і \C-hвиступає за Ctrl+ , hяка еквівалентна в цьому випадку з Backspaceключем.
Отже, ви шукаєте комбінацію клавіш Esc+ Ctrl+,h яка еквівалентна Esc+Backspace і яка через поведінку xterm, яка змушує Altклавішу діяти як мета-символ, а мета-символи перетворюються в двосимвольну послідовність із самим символом Esc(див. Див. man xterm) , еквівалент Alt+Backspace .
Тепер, якщо вам це не подобається, і ви продовжуєте його забувати, ви можете скористатись такою командою для створення нового ярлика, скажімо Esc+ w, для вашої мети:
bind '"\ew": backward-kill-word'
Щоб зробити цю нову ярлик стійкою весь час для всіх команд, в яких використовується лінія зчитування, додайте у ~/.inputrcфайл наступний рядок рядка :
"\ew": backward-kill-word
Див. Для help -m bind | sensible-pagerотримання додаткової інформації.
alt+.?