본문 바로가기
오늘의 삽질... 에러모음

Mac iTerm2 꾸미기 - 이모지 넣기 & prompt_segment error

by 요호유후 2025. 1. 1.
반응형

오늘 iTerm2 꾸미기를 하면서 막혔던 부분에 대해 정리해 보려 한다.

 

문제사항

 - .zshrc에 이모지 관련 라인 추가 시 아래의 에러 발생

 - 왼쪽 이미지와 같이 이모지 관련 라인을 추가하고 저장/업데이트를 하면

    오른쪽 이미지와 같이 에러가 발생

prompt_context:4: command not found: prompt_segment

 

 

사전 진행 사항

 1. iTerm2 설치

 2. oh my zsh 설치

 3. 테마 적용 (powerlevel10k)   

 

문제원인

 참고링크 : https://github.com/Powerlevel9k/powerlevel9k/issues/423

 

 powerlevel10k 테마 자체가 기본적으로 터미널의 hostname을 숨기기 때문에

 위와 같은 문제가 발생하는 것으로 보인다. 그래서 아래와 같이 작성하거나

prompt_context() {}

 

 해당 코드를 삭제해야만 한다.

 

 하지만, 나는 prompt_context() {} 라인을 추가해서 이모지 커스텀을 해야하기 때문에 테마를 변경해 보기로 했다.

 

 

해결

 테마 변경 (powerlevel10k → agnoster)

  * powerlevel10k와 agnoster 테마의 장단점, 차이점 등을 아직은 몰라서 이게 좋은 해결방안 일지는 모르겠다ㅠㅠ

(좌) powerlevel10k 테마 적용 (우) agnoster 테마 적용

 

 위 이미지에서도 보이듯, agnoster 테마로 변경하니 뭔가 변화가 생겼고 에러가 뜨지 않았다.

 왼쪽 이미지와 같이 다시 코드를 추가하고 적용하니 해결!!

 

 

기타

터미널 커스텀 관련 코드들

 - 아래의 모든 코드는 .zshrc에 삽입하였음   

open ~/ .zshrc

 

  1. 컴퓨터 이름 지우기

prompt_context() { 
	if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then 
    	prompt_segment black default "%(!.%{%F{yellow}%}.)$USER" 
    fi 
}

 

 2. 유저명 변경

prompt_context() { 
  prompt_segment black default "하고싶은이름" 
}

ex.
prompt_context() { 
  prompt_segment black default jin 
}

 

 3. 이모지 추가

prompt_context() {
  # Custom (Random emoji)
  emojis=("⚡️" "🔥" "🇰 " "👑" "😎" "🐸" "🐵" "🦄" "🌈" "🍻" "🚀" "💡" "🎉" "🔑" "🚦" "🌙")
  RAND_EMOJI_N=$(( $RANDOM % ${#emojis[@]} + 1))
  prompt_segment black default "{하고싶은이름} ${emojis[$RAND_EMOJI_N]} "
}

ex.
prompt_context() {
  # Custom (Random emoji)
  emojis=("⚡️" "🔥" "🇰 " "👑" "😎" "🐸" "🐵" "🦄" "🌈" "🍻" "🚀" "💡" "🎉" "🔑" "🚦" "🌙")
  RAND_EMOJI_N=$(( $RANDOM % ${#emojis[@]} + 1))
  prompt_segment black default "jin ${emojis[$RAND_EMOJI_N]} "
}

 

 

참고링크 : https://velog.io/@easyhwan/Mac-%EB%A7%A5%EB%B6%81-%ED%84%B0%EB%AF%B8%EB%84%90-%EA%BE%B8%EB%AF%B8%EA%B8%B0-iTerm2-Oh-My-Zsh

참고링크 : https://clolee.tistory.com/52

 

반응형

댓글