модификация разбиения слова оболочки zsh


12

Я использую оболочку в стиле разделенного слова (select-word-style shell). В общем, мне нравится, но я хотел бы разделить и на косую черту, чтобы при переходе к слову вперед / назад, если слово не содержит ни одного / s, оно полностью пропускает слово, но если оно содержит один или больше слэшей, останавливается на первом слэше.

Есть идеи?

Ответы:


18

man zshall /forward-word /backward-word

echo $WORDCHARS
*?_-.[]~=/&;!#$%^(){}<>
WORDCHARS='*?_-.[]~=&;!#$%^(){}<>'  ;# without /

1
+1 Интересно, почему это не по умолчанию. Пути, вероятно, являются наиболее часто используемым объектом в командной строке.
Миша Арефьев

1
Более краткая версия WORDCHARS=${WORDCHARS//[\/]}.
Джеймс О'Горман

4
еще корочеWORDCHARS=${WORDCHARS/\/}
Науэль Фуйе

2
илиWORDCHARS=$WORDCHARS:s:/:
Стефан Шазелас

это только мне или ;не нужно? Я бы добавил '"'и "'"(одинарные и двойные кавычки) и~
Элиг
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.