by museonghwang

M1 MacOS iTerm2 설치 및 꾸미기

|

image

MacOS 기본 터미널을 열어보면 위 사진과 같이 코드 하이라이팅도 전혀 되지 않고 밋밋한 기본 검정색 테마라서 가독성이 떨어지는 아쉬운 점이 있습니다. 명령어를 입력해도 전혀 티가 나지않아서 생산성이 좀 떨어지는 것 같습니다.

image

iTerm2를 설치하여 기본 터미널을 꾸며보겠습니다. iTerm2는 MacOS에서 공식 터미널 어플리캐이션 대신에 사용할 수 있는 가상 터미널 어플리케이션입니다. 기존 터미널에서 제공하는 기능보다 더욱 편리하고 가독성을 높여주는 터미널이라고 생각하시면 될 것 같습니다.


✨ 참고 사이트

1️⃣ Homebrew - macOS 패키지 관리자 https://brew.sh/index_ko

2️⃣ iTerm2 - mac용 가상 터미널 애플리케이션 https://iterm2.com/

3️⃣ Homebrew 폰트 설치 github https://github.com/Homebrew/homebrew-cask-fonts

4️⃣ iTerm2 컬러 테마 저장소 https://iterm2colorschemes.com/


🍎 단축키

⌨️ iterm2 설정화면 진입 ⌘ + ,

⌨️ vi편집기 수정모드 cursor + i

⌨️ vi편집기 파일 저장후 종료 ESC + :wq

⌨️ iterm2 상하/좌우 분할 ⌘ + d / ⌘ + ⇧ + d


1. Home-brew 설치하기

iTerm2 패키지를 설치하기 전에 먼저 Homebrew를 설치하도록 하겠습니다. Homebrew는 MacOS의 패키지 관리 소프트웨어인데 쉽게 패키지를 설치하고 삭제할 수 있게 해줍니다.

image

Homebrew 홈페이지에 들어가셔서 스크립트를 복사하시고 터미널로 돌아와 명령어를 입력해주겠습니다.

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

설치가 정상적으로 완료되었는지 버전을 확인해보겠습니다. 정상적으로 버전이 나옵니다.

brew -v
Homebrew 3.6.11
Homebrew/homebrew-core (git revision 1513bfd3b36; last commit 2022-11-17)
Homebrew/homebrew-cask (git revision ad786f1638; last commit 2022-11-17)


2. iTerm2 설치하기

이제 iTerm2를 설치해보겠습니다. 터미널에 다음 명령어를 그대로 입력하면됩니다.

brew install iterm2
🍺  iterm2 was successfully installed!

맥주 이모티콘과 함께 성공적으로 인스톨되었다는 문구를 확인했다면, 그 다음으로 설치할 패키지는 Oh-My-Zsh 입니다.


3. Oh-My-Zsh 설치

이 패키지는 Zsh 터미널을 보기 좋게 꾸며주는 프레임워크 입니다. Oh-My-Zsh을 설치하기 위해 다음 명령어를 입력해주세요. 해당 명령어는 oh-my-zsh github에 있습니다.

sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

image

위 이미지처럼 출력되면 정상적으로 설치가 완료되었습니다. 만약 MacOS에 Zsh이 없다면 다음 명령어로 설치를 먼저 해주시면 됩니다.

brew install zsh

설치 후 iTerm를 열어주면 다음과 같은 화면이 나옵니다.

image

이게 기본 iTerm 터미널인데요, 아직은 코드 하이라이팅도 전혀 되지 않고, 예쁜 모습도 아닙니다. 이제 원하는 테마로 꾸며보도록 하겠습니다.


4. status bar 설정

우선 iTerm 터미널에서 ⌘ + , 를 눌러서 Preferences에 들어갑니다.

image

Profiles 탭으로 이동 후 Session 탭을 들어가면, 하단에 Status bar enabled 체크 박스 부분이 나오는데 해당 부분을 체크해 주세요.

image

Configure Status Bar를 누르면 다음과 같은 창이 나오는데, 이 부분에서 커스텀으로 수정해 줄 수 있습니다. 여기에 굉장히 많은 스테이터스바를 지원해주며, 저는 4가지를 선택해 주었습니다.

image

그리고 Status bar의 위치를 바꾸고 싶다면 Appearance 탭으로 들어가서 Status bar location 부분을 위 아래로 설정해 줄 수 있습니다.

image


5. 폰트 다운로드

테마를 변경하면 폰트가 깨질 수 있기 때문에 폰트를 다운로드 받아주겠습니다. homebrew-cask-fonts github에 들어가면 설치과정이 있습니다. 그리고 fira-code 라는 폰트를 설치하겠습니다. 그럼 다음 명령어를 입력해주겠습니다.

brew tap homebrew/cask-fonts
brew install font-fira-code

다시 iTerm 터미널에서 ⌘ + , 를 눌러서 Profiles탭으로 들어가서 Text 탭을 선택하면 다음과 같은 화면이 나옵니다.

image

Fira Code로 선택되어 있는데, 만약 다른걸로 선택되어 있다면 Fira Code로 바꿔주시고, Use ligatures 체크박스도 눌러주세요. 그럼 이제 폰트 설정은 끝났습니다.

이제 본격적으로 테마를 바꿔보겠습니다.


6. iterm2 테마설정

다시 iTerm 터미널에서 ⌘ + , 를 눌러서 Profiles탭으로 들어가서 Colors 탭을 선택하면 다음과 같은 화면이 나옵니다.

image

각자 하나하나씩 커스텀을 지정해 줄 수도 있고, 기본적으로 내장되어 있는 테마를 사용해도 되며, 마음에 드는게 없으면 부가적으로 제공하는 컬러 테마도 사용 가능합니다.

부가적으로 사용할 수 있는 테마에 대해서 알려드리겠습니다.

image

Iterm2-color-schemes 사이트에 들어가면 여러가지 테마들을 볼 수 있습니다. 타이틀을 클릭하시면 XML 형식의 코드들이 나오는데 파일을 저장해주시면 됩니다.

image

image

다운로드가 완료됐으면 저장한 폴더로 들어가 주셔서 txt라는 확장자를 지워주세요.

image

iTerm2에서 다시 설정 화면으로 들어가서 Color Presets에 해당 파일을 Import 해주고나서 원하는 테마를 선택하시면 됩니다.

image


7. iterm2 External themes

그리고 엔터를 쳤을때 나오는 테마도 변경하겠습니다. oh my zsh github을 들어가면 테마부분이 나옵니다.

image

우선 명령어로 zsh 설정파일을 열어주겠습니다.

vi ~/.zshrc

image

위 화면에서 ZSH_THEME 가 있는 라인데 커서를 두고 i를 입력하면 수정모드로 변경됩니다. 다음과 같이 입력해주세요.

ZSH_THEME="agnoster"

esc를 누르시고 저장하고 나가 보도록 하겠습니다. :wq 를 입력하시면 vi 저장 후 종료가 됩니다. 적용된 모습을 보려면 이 패키지를 껐다가 다시 켜도 되고 저는 설정 파일을 저장하는 명령어를 입력해줍니다.

source ~/.zshrc

정상적으로 적용되었다면 다음과 같은 화면이 등장합니다.

image


8. 빈 줄 넣기

그 다음으로는 중간에 빈 줄을 넣어서 가독성을 더 높여 보겠습니다. 다음 명령어로 테마 설정 파일을 열어줍니다.

vi ~/.oh-my-zsh/themes/agnoster.zsh-theme

image

위 이미지와같이 build_prompt()라는 Main prompt가 있습니다. i를 눌러 수정모드로 들어가서 build_prompt()prompt_newline 을 입력해 주시고 함수를 정의하고 추가하겠습니다.

image

다시 ESC 누르시고 :wq 명령어로 저장하고 나가 줍니다. 그리고 적용된 모습을 보려면 이 패키지를 껐다가 다시 켜도 되고, 설정 파일을 저장하는 명령어를 입력해줍니다.

source ~/.zshrc

image

중간에 빈 줄이 추가되서 위에보다 훨씬 더 가독성이 높아졌습니다.


9. 명령어 하이라이팅

그 다음으로는 명령어에 하이라이트 기능을 주도록 하겠습니다. 그러려면 zsh-syntax-highlighting 이라는 패키지를 설치해줘야 합니다.

brew install zsh-syntax-highlighting

다시 설정 파일을 열어 주시고 다음 소스를 맨 마지막 줄에 추가해주고 저장해 주겠습니다.

vi ~/.zshrc
📌 M1이상
source /opt/homebrew/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

📌 intel Mac
source /usr/local/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

image

터미널을 다시 열어서 명령어를 작성하면, 이렇게 모든 명령어에 하이라이트 처리가 되는 걸 볼 수 있습니다.

image


10. 이모지 넣기

마지막으로 텍스트와 이모지를 넣어 주겠습니다. 그럼 다시 설정 파일을 열어주시고 맨 아래로 내려가서 prompt_context() 라는 함수를 덮어 써주겠습니다.

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

image

모든 과정이 정상적으로 진행되었습니다.