modification de la division des mots du shell zsh

12

J'utilise le mot shell de style divisé (select-word-style shell). Je l'aime en général, mais j'aimerais également diviser les barres obliques, de sorte que lorsque j'avance / recule un mot, si le mot ne contient aucun / s, il saute complètement le mot mais s'il en contient un ou plus de barres obliques, il s'arrête à la première barre oblique.

Des idées?

user23571
la source

Réponses:

18

man zshall /forward-word /backward-word

echo $WORDCHARS
*?_-.[]~=/&;!#$%^(){}<>
WORDCHARS='*?_-.[]~=&;!#$%^(){}<>'  ;# without /
Nahuel Fouilleul
la source
1
+1 Je me demande pourquoi ce n'est pas la valeur par défaut. Les chemins sont probablement l'entité la plus utilisée dans une ligne de commande.
Mischa Arefiev
1
Une version plus succincte est WORDCHARS=${WORDCHARS//[\/]}.
James O'Gorman
4
encore plus courtWORDCHARS=${WORDCHARS/\/}
Nahuel Fouilleul
2
ouWORDCHARS=$WORDCHARS:s:/:
Stéphane Chazelas
est-ce seulement moi ou ;n'est-il pas nécessaire? J'ajouterais '"'et "'"(guillemets simples et doubles) et~
elig