Я хотел бы использовать значение переменной, заданной в моей оболочке zsh, для отображения в строке приглашения.
Например, допустим, export TOKEN='hello'
установлено в моей сессии. В это время я загружаю свою подсказку, которая содержит "$TOKEN"
.
Это отлично работает, и приглашение отображается правильно. Однако, если я изменю значение TOKEN, мое приглашение не будет обновлено.
Как заставить zsh обновлять мое приглашение каждый раз, когда я выполняю команду?
Ответы:
Есть несколько способов сделать это. Вы должны посмотреть на
precmd
иpreexec
функции. Они находятся вhook functions
разделеzshmisc
(который вы можете прочитать онлайн или используяman zshmisc
.Простым решением было бы прочитать этот вопрос unix.stackexchange.com , в котором говорится, чтобы поместить это в ваш
~/.zshrc
файл:Это будет делать то, что вы хотите:
(Это немного портит мою подсказку, но вы можете видеть
foo
иbar
отображать красиво, как они должны, обновляя при$GREETING
изменении. В вашем случае используйте$TOKEN
).Моя подсказка сильно заимствована из подсказки Фила! ZSH , которую я нашел очень полезной, когда учился настраивать мою.
источник