Как я могу удалить косую черту или слово в zsh?

Поведение Bash

Я только что перешел из bash в zsh . В bash меня была следующая строка в ~/.inputrc .

 "\e\C-?": unix-filename-rubout 

Следовательно, Alt + Backspace удалит предыдущую косую черту, что было бы полезно для изменения введенных путей.

Кроме того, bash умолчанию приводит к удалению Ctrl + w в предыдущее пространство, что полезно для удаления целых аргументов (предполагая, что у них нет пробелов).

Поведение Zsh

В zsh оба Alt + Backspace и Ctrl + w делают то же самое. Они оба удаляют предыдущее слово, но они слишком либеральны с тем, что составляет слово-перерыв, удаляя предыдущее - или _ . Есть ли способ заставить zsh вести себя так же, как bash ? Если это важно, у меня установлен oh-my-zsh .

2 Solutions collect form web for “Как я могу удалить косую черту или слово в zsh?”

Изменить: следующий результат Google после того, как ваш вопрос был таким, с одним и тем же решением: zsh: сделать ALT + BACKSPACE остановкой без буквенно-цифровых символов

Этот ответ был предоставлен /nick FoH из #zsh на freenode.

 backward-kill-dir () { local WORDCHARS=${WORDCHARS/\/} zle backward-kill-word } zle -N backward-kill-dir bindkey '^[^?' backward-kill-dir 

Таким образом, вы можете использовать ctrl+w для удаления Word (в vim lingo) и alt+bkspc чтобы удалить слово

Здесь был задан аналогичный вопрос: zsh: остановить обратное-kill-word на разделителе каталога

и выполнимое решение: добавьте эти настройки в свой zshrc:

 autoload -U select-word-style select-word-style bash 
  • Как разбить строку на какой-то разделитель непечатаемого символа?
  • Как установить команду редактора для использования * только * для редактирования командной строки в zsh?
  • Определение слова в ZLE (zsh)
  • zparseopts с ассоциативным массивом в старой версии zsh
  • FPATH в zsh: функции и функции сайта
  • Есть ли встроенный (или, по крайней мере, простой) способ проверить наличие функции, доступной через $ FPATH?
  • Применяйте флаги расширения параметров к литералу строки или массива в zsh
  • Как настроить .zshrc для specfic os
  • изменение разделов слова zsh
  • странное поведение setopt
  • Когда необходимо включить `emulate -LR zsh` в функцию, вызванную zsh-виджетами?
  • Linux и Unix - лучшая ОС в мире.