시작하기에 앞서, Zsh에 대한 이해가 있으면 좋으므로 Zsh에 대한 간단한 이해를 하고 커스텀을 하면 더 좋다.
참고 : [개발 환경] iTerm2로 터미널 커스텀하기
맥에 있는 기본 터미널을 사용해도 되지만, 조금 더 편리한 기능이 탑재 되어있는 터미널을 사용하고 싶어 iTerm2를 다운 받고 커스텀 해보려고 한다. 해당 글은 모두 M1칩 맥북을 기준으로 한다.
Install Homebrew
아래에 있는 명령어를 복사하여 iterm2를 켜서 명령어창에 붙여넣는다. (이미 설치 돼 있으면 2단계 생략)/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
터미널에 help brew
를 입력해서 homebrew를 실행하면 아래와 같은 오류가 뜬다. M1칩을 사용하면 나타나는 오류라고 한다.
zsh: command not found: brew
이 명령어가 나타난다면 아래 명령어를 입력해주면 정상적으로 해결된다.
echo 'export PATH="/opt/homebrew/bin:$PATH"' >> ~/.zshrc
zsh
패키지와 oh-my-zsh
를 설치한다. 차례로 밑 두 명령어를 입력한다.#zsh install
brew install zsh
#oh-my-zsh install
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
컬러 테마도 내가 맘에 드는 걸로 하면 눈이 즐거우니 색을 골라보자.
curl --version
만일 설치 돼 있지 않다면
#curl 설치
brew install curl
#테마를 다운받을 디렉토리 생성 후 해당 디렉토리로 이동
mkdir theme && cd theme
#curl -L0 을 입력한 후 복사한 url을 붙여넣으면 됨
curl -L0 curl -LO https://raw.githubusercontent.com/mbadolato/iTerm2-Color-Schemes/master/schemes/Snazzy.itermcolors
#다운로드 된 테마 확인
ls
#ls를 치면 Snazzy.itermcolors과 같이 떠야 다운로드 된 것 아무것도 안 뜨면 다운로드에 실패한 것이다.
iTerm2>Settings...>profiles>colors
에 들어가서 우측 하단의 Color presets>import
클릭해서 컬러 테마를 저장했던 경로로 들어가 파일 open을 하고 다시 Color presets
을 누르면 해당 테마가 나타나고 그 테마로 적용 후 설정을 나오면 됨내가 지금 어느 브런치에 있는지 편하게 알 수 있는 agnoster
라는 테마로 바꿀 것
#vi편집기로 해당 파일을 열기
vi ~/.zshrc
여러 기호들로 인해 폰트 깨짐 현상이 일어나기 때문에 폰트도 변경 해줄 것
iTerm2>Settings>profiles>text
에서 폰트 교체 danee@Danees-MacBook-Air ~
터미널에 이렇게 뜨면 너무 길기 때문에 호스트명을 제외하고 뜨게 해줄거임
vi ~/.zshrc
를 열고 아래 코드를 추가 prompt_context() {
if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
prompt_segment black default "%(!.%{%F{yellow}%}.)$USER"
fi
}
vi ~/.oh-my-zsh/themes/agnoster.zsh-theme
build_prompt()
명령어 줄 사이에 prompt_newline
을 추가prompt_hg
와 prompt_end
사이에 순서를 지켜 추가해야 함build_prompt() {
RETVAL=$?
prompt_status
prompt_virtualenv
prompt_context
prompt_dir
prompt_git
prompt_bzr
prompt_hg
prompt_newline
prompt_end
}
prompt_newline
에 대한 함수 추가prompt_newline() {
if [[ -n $CURRENT_BG ]]; then
echo -n "%{%k%F{$CURRENT_BG}%}$SEGMENT_SEPARATOR
%{%k%F{blue}%}$SEGMENT_SEPARATOR"
else
echo -n "%{%k%}"
fi
echo -n "%{%f%}"
CURRENT_BG=''
}
사용하는 문법에 색상을 적용해주는 기능을 추가한다.
#brew를 통해 설치하기
brew install zsh-syntax-highlighting
vi ~/.zshrc
#들어가서 제일 하단에 해당 코드를 추가 후 저장하기(M1칩 기준 intell 맥은 다름)
source /opt/homebrew/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
⬆️ 참고 : M1 Terminal(iTerm2) 꾸미기: zsh-syntax-highlighting
prompt_context() {
# Custom (Random emoji)
emojis=("🐱" "🔥" "🐶" "👑" "🐹" "🐼" "🐯" "🐴" "🌙" "⭐️" "🚀" "💡" "⚡️" "✨" "☀️" "🌙")
RAND_EMOJI_N=$(( $RANDOM % ${#emojis[@]} + 1))
#prompt_segment black default "{원하는사용자명} ${emojis[$RAND_EMOJI_N]} "
prompt_segment black default "Danee ${emojis[$RAND_EMOJI_N]} "
}
prompt_context() {
emojis=("🚀")
prompt_segment black default "${emojis}"
}
⬆️ 참고 : iTerm2 없이 터미널 꾸미기
Settings>Profiles>Session
로 가서 Status bar enabled
활성화Settings>Appearance
Status bar location
위치 설정원하는 기능들을 넣으면 됨