modyfikowanie podziału słowa powłoki zsh


12

Używam powłoki w stylu podziału słów (powłoka w stylu „wybierz słowo”). Ogólnie podoba mi się, ale chciałbym również rozdzielać ukośniki, aby gdy przechodzę słowo do przodu / do tyłu, jeśli słowo nie zawiera żadnych znaków, całkowicie pomija słowo, ale jeśli zawiera jedno lub więcej ukośników, zatrzymuje się przy pierwszym ukośniku.

Jakieś pomysły?

Odpowiedzi:


18

man zshall /forward-word /backward-word

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

1
+1 Zastanawiam się, dlaczego to nie jest domyślne. Ścieżki są prawdopodobnie najczęściej używaną jednostką w wierszu poleceń.
Mischa Arefiev,

1
Bardziej zwięzła wersja to WORDCHARS=${WORDCHARS//[\/]}.
James O'Gorman,

4
jeszcze krótszyWORDCHARS=${WORDCHARS/\/}
Nahuel Fouilleul,

2
lubWORDCHARS=$WORDCHARS:s:/:
Stéphane Chazelas,

czy to tylko ja, czy ;nie jest potrzebne? Dodałbym '"'i "'"(pojedyncze i podwójne cytaty) i~
elig
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.