O seguinte código resolveu ambos os meus problemas.
set prompt="\n%{3[0;32m%}%n@%m:%{3[0;33m%}%~%{3[1;30m%}>%{3\[1;37m%} "
Estou usando as instruções aqui para personalizar meu prompt do CSH. Aqui está o que estou usando:
set prompt="\n%{3[1;32m%}%m %{3[36m%}${cwd}$ %{3[0m%} "
Primeiro, a parte $ {cwd} não está fornecendo o caminho completo para o diretório em que estou, apenas o caminho completo para o diretório em que estou quando o .cshrc foi originado. Como eu exibo o diretório atual?
Em segundo lugar, se eu não incluir o espaço no final da string, a cor do texto que eu digito é alterada para a cor do diretório da parte anterior. Existe alguma maneira de fazer isso sem adicionar o espaço?
No C Shell, adicione as seguintes linhas ao seu .cshrc:
crie um comando doprompt que defina o prompt para o diretório de trabalho
alias doprompt 'set prompt="'pwd' "'
defina o prompt na primeira vez
doprompt
alias o comando cd para alterar diretórios e redefinir o prompt
alias cd 'chdir !* || doprompt'
Tags command-line csh