- 터미널을 쓰다보면 아래와 같이 경로가 엄청 길어지는 경우가 있다
- 평소에는 괜찮은데 터미널이 작을땐 프롬포트만 2줄을 차지하는 경우가 발생한다.
- 그래서 아래와 같이 경로를 3글자로 줄이면 이쁘다!
하는 법
- ❗제가 쓰는 테마인 agnoster 를 기준으로 작성 되었습니다
~/.oh-my-zsh/themes/agnoster.zsh-theme
에 들어가보시면, 디폴트 설정이 있습니다.
- 디폴트 설정을 보면
prompt_dir
이라는 함수에서 경로와 관련된 부분을 처리하는것을 알 수있습니다.
- 따라서 이부분을 참고하여 수정하도록 하겠습니다.
- 이때, 해당 파일을 바로 수정하면 oh-my-zsh 업데이트시 git 충돌 오류가 날 수 있으니,
- 안전하게 .zshrc 에 수정할 내용을 추가하도록 하겠습니다.
- 3글자씩 보는 구체적인 코드는 아래와 같습니다.
prompt_dir() {
local dir_a dir_p dir_c CUS_HOME
CUS_HOME=$(echo $HOME | sed 's/\\//\\\\\\//g')
dir_a=$(pwd)
dir_p=$(pwd | sed "s/$CUS_HOME/~/g" | awk -F / 'BEGIN {ORS="/"} { for(i=1;i<NF;i++) print substr($i,0,3) }')
dir_c=`basename $dir_a`
if [ "$dir_a" = "$HOME" ]; then
dir_p=""
dir_c="~"
fi
if [ "$dir_a" = "/" ]; then
dir_p=""
fi
prompt_segment 235 white "%F{245}${dir_p}%F{white}${dir_c}"
}
색깔 고치기