Замена части cwd в приглашении текстом в TCSH

Я пытаюсь получить следующее поведение для моей подсказки в TCSH:

/users/james/ $ cd /projects/android/new_project/1.0/
New Project {1.0} / $ cd vars
New Project {1.0} /vars/ $

Я рассмотрел использование cwdcmd, но я считаю, что переменная, которую я назначаю для хранения cwd, будет передана в приглашение только один раз. Я также смотрел на использование set prompt='%c3' и т. Д., Но это только показывает трейлинг n dirs, не исключая начальных. Прежде чем кто-либо предложит мне сменить оболочку, я должен использовать TCSH.

Спасибо!

1 ответ

Решение

Для tcsh я использую следующее:

alias precmd 'source ~/bin/prompt.sh'

и внутри сценария я могу делать все, что мне нравится

set prompt="┌[%n@%m variable=${ENV_VAR}]\n└[%~] "

Таким образом, ваш запрос всегда актуален. Более того, вы можете легко создать условную подсказку, основанную на том, где вы находитесь и какие переменные установлены.

Вы можете найти еще несколько "гаджетов" здесь: http://www.owsiak.org/?s=tcsh

Другие вопросы по тегам