Question

Ce le code de l'article ne le fait pas. travaille pour moi. J'ai collé tout son code dans mon .zshrc.

J'ai les éléments suivants dans mon .zshrc

RPROMPT='%{\[0;33m%}%1v%{\[0m%}'

Il devrait indiquer si vous avez ou non des emplois. Cependant, cela ne le fait pas pour moi.

Je souhaite que le symbole X apparaisse à la bonne invite pour indiquer qu'un travail est en cours d'exécution.

Comment pouvez-vous avoir une invite qui indique à X si vous avez plusieurs emplois en Zsh?

Était-ce utile?

La solution

Le code que vous utilisez ne fonctionnera pas car il essaie d'utiliser la variable $ psvar , que vous n'avez pas encore définie. Cet article l'a probablement mentionné ailleurs.

Dans tous les cas, pour afficher le nombre de tâches dans RPROMPT , utilisez

.
<*>gt; RPROMPT="%1(j.X.)"
gt; RPROMPT="%j Job(s)"

Pour qu'il affiche un 'X' si vous avez au moins un travail en cours d'exécution, utilisez

<*>

Consultez la section PROMPT de la page de manuel zshmisc ou prenez un lien: http://www.manpagez.com/man/1/zshmisc/ . Il explique toutes les séquences d’extension que vous pouvez utiliser pour afficher des informations dans votre invite.

Autres conseils

Il semble que vous manquiez de crochets extra-gauche dans vos séquences d'échappement ANSI, et je ne pense pas que \ [ donne les résultats que vous attendez.

Voici ce que vous voulez:

RPROMPT="%(1j.%{^[[33m%} X%{^[[0m%}.)"

Toutefois, il peut s'avérer plus utile que l'invite indique combien de tâches sont en arrière-plan:

RPROMPT="%(1j.%{^[[33m%} (%j jobs)%{^[[0m%}.)"

Remarque : ces ^ [ ci-dessus sont des caractères d'échappement littéraux - par exemple, 0x1B . Sur la ligne de commande (ou en mode insertion de Vim si vous utilisez Vim pour éditer votre .zshrc ), tapez Control-V puis Control- [pour insérer un caractère d'échappement.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top