Re: Prompt zsh
Le 2019-11-28 14:34, Erwan David a écrit : Le 28/11/2019 à 13:57, benoit...@ouvaton.org a écrit : Bonjour à toutes et tous, Je recherche une façon de modifier la partie : %~ de mon PROMPT zsh pour réduire sa longueur quand il prend trop de place dans la ligne de commande. echo '%~' ne fonctionne pas. Comment fait-on pour récupérer la valeur de %~ ? J’ai trouvé mon bonheur ici pour n’afficher que les 30 derniers caractères d'une chaîne : http://mywiki.wooledge.org/BashFAQ/073 echo ${string: -30} Il faut regarder la partie sur le prompt dans le man zshmisc(1) En effet c'est bien expliqué : Les deux derniers éléments du path : %2~ Merci. -- Benoit
Re: Prompt zsh
salut, > Je recherche une façon de modifier la partie : %~ de mon PROMPT zsh > pour réduire sa longueur quand il prend trop de place dans la ligne de > commande. > > echo '%~' ne fonctionne pas. tu peux déclencher l'expansion de % de deux façons: * soit avec le flag -P de print (man zshbuiltins) que tu peux coupler avec -v pour écrire dans une variable: print -P 'direct: %~'# direct: ~ print -v PS1 'via PS1: %~' print $PS1 # via PS1: %~ * soit avec l'expansion modifier % (man zshexpn) que tu peux coupler avec (l::) ou (r::) qui te permette de cd /tmp print ${(r:3:%):-%~ >} # /tm cd /tmp print "${(r:20::_:%):-%~}>" # /tmp __> > J’ai trouvé mon bonheur ici pour n’afficher que les 30 derniers > caractères d'une chaîne: > http://mywiki.wooledge.org/BashFAQ/073 Hors des syntaxes historiques/standard, bash et zsh ont des syntaxes très différentes. Ayant tourné le dos à bash il y a presque 20 ans, je ne pourrait pas comparer objectivement mais à l'époque, il n'y avait pas de discution possible sur la supériorité de zsh à mes yeux cordialement, marc
Re: Prompt zsh
Le 28/11/2019 à 13:57, benoit...@ouvaton.org a écrit : > Bonjour à toutes et tous, > > Je recherche une façon de modifier la partie : %~ de mon PROMPT zsh > pour réduire sa longueur quand il prend trop de place dans la ligne de > commande. > > echo '%~' ne fonctionne pas. > > Comment fait-on pour récupérer la valeur de %~ ? > > J’ai trouvé mon bonheur ici pour n’afficher que les 30 derniers > caractères d'une chaîne : > > http://mywiki.wooledge.org/BashFAQ/073 > > echo ${string: -30} > Il faut regarder la partie sur le prompt dans le man zshmisc(1)
Prompt zsh
Bonjour à toutes et tous, Je recherche une façon de modifier la partie : %~ de mon PROMPT zsh pour réduire sa longueur quand il prend trop de place dans la ligne de commande. echo '%~' ne fonctionne pas. Comment fait-on pour récupérer la valeur de %~ ? J’ai trouvé mon bonheur ici pour n’afficher que les 30 derniers caractères d'une chaîne : http://mywiki.wooledge.org/BashFAQ/073 echo ${string: -30} avec pwd -L Ces deux lignes contractées, ça donne : echo ${"$(pwd -L)": -30} Le prompt n’est pas réinterprété quand je change de répertoire en remplaçant ‘%~’ par ${"$(pwd -L)": -30} : PROMPT="%n@%m: ${"$(pwd -L)": -30} %# " Ceci ne fonctionne pas non plus : PROMPT="%n@%m: ${"%~": -30} %# " D’avance un tout grand merci. Avec gratitude, -- Benoit