답변:
옛날 방식은 POSTEDIT
POSTEDIT=$'\e[0m'
(그리고 이것이 bash가 아닌 방식으로 DEBUG 트랩을 사용하여 시뮬레이션하지 마십시오 preexec
: zsh는 어디에서 왔는지 ) zsh 4.3.11부터 명령 줄 구문 강조 기능을 사용할 수 있습니다 . 프롬프트가 프롬프트에만 관심을 갖도록 설정하고 설정하십시오.
zle_highlight=(default:bold)
원하는 것은 preexec hook 기능입니다 .
preexec() { printf "\e[0m"; }
그런 다음 각 명령을 실행하기 전에 preexec
글꼴을 정상으로 재설정하기 위해 실행됩니다.
따라서 질문에 표시되는 것과 동일한 프롬프트를 얻으려면 다음 행을 다음에 추가하십시오 ~/.zshrc
.
autoload -U colors && colors
PS1="%{$fg_bold[yellow]%}%n@%m %{$fg[blue]%}%~ \$ %{$reset_color%}%{$fg_bold[white]%}"
preexec() { printf "\e[0m"; }