-
zsh 현재 디렉토리명만 보이기 / 일정 글자이하의 경로만 보이기 / 전체 경로 보이기.리눅스 2021. 8. 11. 16:45반응형
순서
- 테마 적용
- echo $PS1 -> 결과 복사
- vi /.zshrc
원하는 위치에 다음 내용 넣기
export PS1="{2번에서 복사한 내용 | '%~' 혹은 '%c' 찾아서 아래 기호에서 부합한 것 치환.}"
ps.. | 는 pipe이다.. linex의 pipe.. 즉 2번에서 복사한 내용을 수정하겠다는 뜻이다.
경로 기호
${_current_dir}
: 일정 글자 이하의 경로만 보이게함.(추측)%c
: 현재 작업 경로(마지막 경로)만 표시%~
: 전제 경로
이를 alias로 정해서 필요에 따라 바꾸어주어도 된다.
필자의 경우 아래와 같이 설정하여 기본설정으로 경로 기호 1번에 사용자 이름만 보이도록(컴퓨터이름 안보이게) 설정해두었고(%n@%m부분에서%m을 제거하면 된다)
abpath는 absolutepath의 약어로써 3번 경로 기호로 전체 경로를,
rlpath는 relativepath의 약어로써 2번 경로 기호로 현 작업경로만 표시하도록 해두었다.
#for bira #backup for bira #╭─%{$terminfo[bold]$fg[green]%}%n@%m %{$reset_color%}%{$terminfo[bold]$fg[blue]%}%~ %{$reset_color%}$(ruby_prompt_info)$(git_prompt_info)$(virtualenv_prompt_info) #╰─%B$%b export PS1="╭─%{$terminfo[bold]$fg[green]%}%n %{$reset_color%}%{$terminfo[bold]$fg[blue]%}${_current_dir} %{$reset_color%}$(ruby_prompt_info)$(git_prompt_info)$(virtualenv_prompt_info) ╰─%B$%b " alias abpath='export PS1="╭─%{$terminfo[bold]$fg[green]%}%n %{$reset_color%}%{$terminfo[bold]$fg[blue]%}%~ %{$reset_color%}$(ruby_prompt_info)$(git_prompt_info)$(virtualenv_prompt_info) ╰─%B$%b "' alias rlpath='export PS1="╭─%{$terminfo[bold]$fg[green]%}%n %{$reset_color%}%{$terminfo[bold]$fg[blue]%}${_current_dir} %{$reset_color%}$(ruby_prompt_info)$(git_prompt_info)$(virtualenv_prompt_info) ╰─%B$%b "'
하지만, git등을 사용할 때는 위 방법을 이용하면 안된다.
이유는 잘 모르겠지만, branch가 잘 표시가 안되는 문제가 발생한다.
~/.oh-my-zsh/themes/의 파일들을 직접 수정해주자.
반드시 백업을 진행하고 한다.
여기서 %s, %c는 동일하게 사용할 수 있다.
하지만, _curr_dir을 사용하기 위해서는 파일이 이 줄을 추가해주어야한다.
typeset +H _current_dir="%{$fg_bold[blue]%}%3~%{$reset_color%} "
이 문장을 추가하고, dir을 구성하는 곳 등에 사용하도록하자.
예를들어, 필자는 bira를 사용하고 있고 이 테마의 설정파일을 다음과 같이 설정해주었다.
그리고 alias는 주석처리해주자. 쓰다가 branch헷갈리면 오우.. 상상도 하기 싫다..
반응형