본문 바로가기
개발자 도구/Terminal

맥북 구매 후 iTerm2 초기 설정 (for M1, M2, M3...)

by Dev.Andy 2023. 4. 12.

목차

    머리말

    맥북을 구매하거나 초기화 해서 처음 터미널(Terminal)을 들어가 보면 흰 것은 글씨요, 검은 것은 화면이다. 디자인이 너무 밋밋하다는 생각이 든다면 각자 자기 스타일에 맞게 커스텀을 해 보자.

    Before / After

    iTerm2의 세팅 이전 이미지iTerm2 세팅 완료 이미지
    iTerm2 세팅 이전과 이후

    주의 사항

    1. 코드 블럭의 우측 상단에 Copy 버튼을 누르면 손쉽게 명령어가 복사된다.
    2. 혹여나 명령어가 바뀌어 실행이 되지 않는다면 코드 블럭 위의 사이트에 들어가서 명령어를 확인해 보자.
    3. 컴퓨터의 시스템 구조나 OS의 버전 등에 따라 명령어가 다를 수 있다. 따라서 각 단계 별 안내 사항이나 링크의 가이드를 읽어 보도록 하자.
    4. 무작정 명령어를 복사-붙여넣기를 하기 보다는 해당 명령어가 어떠한 방식으로 적용이 되는지 한번 생각해 봤으면 한다.

    iTerm2 초기 설정

    0. Homebrew

    HomeBrew 설치

    Mac이나 Linux의 패키지 관리자이다. 이를 통해 이후 brew라는 명령어로 다른 여러 패키지를 손쉽게 설치, 관리할 수 있다.

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

    Homebrew — The Missing Package Manager for macOS (or Linux)

    HomeBrew 경로 설정

    아마 설치가 완료 되면 마지막에 아래와 같은 문구가 남아 있을 것이다. 

    ==> Next steps:
    - Run these two commands in your terminal to add Homebrew to your PATH:
        (echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> /Users/<USER_ID>/.zprofile
        eval "$(/opt/homebrew/bin/brew shellenv)"
    - Run brew help to get started
    - Further documentation:
        https://docs.brew.sh

    여기서 <USER_ID>만 개인의 아이디에 맞춰서 아래의 두 명령어를 입력하면 brew 명령어를 입력했을 때 경로가 설정된다.

    (echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> /Users/<USER_ID>/.zprofile
    eval "$(/opt/homebrew/bin/brew shellenv)"

    1. iTerm2 & zsh 설치 (필요한 경우)

    이제 방금 설치한 homebrew로 패키지를 손쉽게 설치할 수 있다. 이 블로그를 보고 있다면 최소 2023년 4월 이후일텐데, 이때의 macOS이라면 iTerm과 zsh가 기본적으로 설치되어 있을 것이다. 혹여나 그렇지 않다면 아래의 명령어로 설치하자.

    iTerm2

    brew install iterm2

    zsh

    brew install zsh

    2. oh-my-zsh 설치

    oh-my-zsh은 zsh의 환경 설정을 관리하기 위한 오픈 소스 프레임워크이다. zsh의 테마를 바꾸거나, 명령어를 바꾸는 등 여러 설정이나 옵션을 추가할 수 있어 편리하다.

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

    3. Intro - zsh의 환경 설정 파일(.zshrc) 수정 및 적용

    본격적으로 zsh를 수정하기 전에 파일을 어떻게 수정할지 알아 보자.

    3-1) zshrc를 편집하고 이를 반영하기

    zsh의 설정 파일인 zshrc를 편집해 보자. 위치는 ~/.zshrc이다.

    • vim이 편하다면 vim 명령어를 쓰고,
    • vim를 잘 사용할 줄 모르면 open 명령어를 사용하자.

    3-2) vim 편집이 편한 경우 → vim

    vim ~/.zshrc
    1. 화살표 또는 HJKL 키보드로 커서 이동
    2. 편집은 i로 일반 모드(normal)모드에서 수정 모드(insert mode)로 전환
    3. 원하는 부분을 수정
    4. esc를 눌러 수정 모드에서 일반 모드로 전환
    5. `:wq`로 저장 및 종료

    3-3) vim 편집이 불편한 경우 → open

    open ~/.zshrc
    • 마우스 클릭 또는 화살표로 커서 변경 및 수정
    • 저장 버튼 또는 단축키(CMD + S)로 저장
    • 종료 버튼 또는 단축키(CMD + W)로 종료

    3-4) 편집한 것을 반영하기

    zshrc의 편집을 완료했다고 해서 해당 터미널에 곧바로 반영되지는 않는다. 둘 중 하나를 입력하면 된다.

    (1) source 명령어로 해당 파일을 재실행하기

    source ~/.zshrc

    (2) zsh 명령어로 zsh를 재실행하기

    zsh

    4. oh-my-zsh 테마 변경

    이제 본격적으로 oh-my-zsh의 설정을 편리하게 바꿔줄 차례다. 첫 번째로 테마를 변경해 보자.

    4-1) 기본 테마 종류 살펴 보기 (링크)

    Themes · ohmyzsh/ohmyzsh Wiki

    여러 종류의 테마는 아래를 클릭하면 된다. 주로 agnoster로 많이 바꾸는데 개인 스타일 맞게 적용하면 된다.

    1. .zshrc 편집

    # Set name of the theme to load --- if set to "random", it will
    # load a random theme each time oh-my-zsh is loaded, in which case,
    # to know which specific one was loaded, run: echo $RANDOM_THEME
    # See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
    ZSH_THEME="agnoster"

    2. .zshrc 실행

    source ~/.zshrc

    4-1+) 개인이 만든 테마 찾아 보기 (passion)

    필자는 1번이 아쉬워서 다른 개발자가 따로 만든 걸 찾아서 적용했다. 바로 passion이라는 테마이다. 마음에 안 들면 다른 걸 또 찾아 보자.

    ChesterYue/ohmyzsh-theme-passion: An oh-my-zsh theme.

    자세한 건 위 링크를 참고하고, 설치 방법만 가져 왔다.

    1. git repository clone

    git clone https://github.com/ChesterYue/ohmyzsh-theme-passion.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/passion.zsh-theme

    2. copy theme (clone 된 위치 이동)

    cp ./ohmyzsh-theme-passion/passion.zsh-theme ~/.oh-my-zsh/themes/passion.zsh-theme

    3. .zshrc 편집

    # Set name of the theme to load --- if set to "random", it will
    # load a random theme each time oh-my-zsh is loaded, in which case,
    # to know which specific one was loaded, run: echo $RANDOM_THEME
    # See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
    ZSH_THEME="passion"

    4. .zshrc 실행

    source ~/.zshrc

    이렇게 적용해도 아마 에러가 하나 뜰 것이다. gdate를 찾지 못해서 실시간을 찾을 수 없다는 에러이다.

    /Users/OOOO/.oh-my-zsh/themes/passion.zsh-theme:6: command not found: gdate
    
    passion.zsh-theme depends on cmd [gdate] to get current time in milliseconds
    [gdate] is not installed by default in macOS
    to get [gdate] by running:
    brew install coreutils;
    
    REF: https://github.com/ChesterYue/ohmyzsh-theme-passion#macos

    5. coreutils 설치

    brew install coreutils

    5. oh-my-zsh 컬러 변경

    5-1) 기본 컬러 종류 살펴 보기 (링크)

    위를 클릭하여 여러 컬러를 한번 살펴 보고 개인에 맞는 걸 고르자. 다들 Snazzy로 많이 고르던데 이것도 개인 취향!

    컬러 종류 다운로드 (링크)

    원래는 테마를 하나하나 클릭하여 해당 코드를 파일로 저장하고 .itermcolors로 변환하는 작업이 필요한데 너무 귀찮다. 그냥 아래의 다운로드를 클릭하자.

    (다운로드 한 디렉토리) > schemes > ~~~~~.itermcolors
    1. 다운로드 된 디렉토리에서 schemes 디렉토리를 찾는다.
    2. 여러 .itermcolors 파일이 있을텐데 원하는 컬러를 고른다.

    iterm themes 사이트에서 다운로드한 디렉토리에서 schemes 디렉토리에 여러 .itermcolors 파일이 있다.
    Downloads-디렉토리-schemes에 들어가면 itermcolors 파일들이 잔뜩 있다

    5-2) 개인 컬러 종류 살펴 보기 (passion 테마 링크)

    아까 필자가 선택한 passion 테마에서는 알파벳 s가 하나 더 들어간 passsion.itermcolors가 포함되어 있다.

    open ohmyzsh-theme-passion

    디렉토리에 passsion.itermcolors가 있다
    이미지에 보이는 파일 제일 오른쪽에 passsion.itermcolors가 있다

    5-3) iTerm2에서 해당 파일 Import 하기

    경로는 아래와 같다

    iTerm2 > Preferences > Profiles > Colors > Color Presets … > Import

    참고로 Preferences로 들어가는 단축키는 iTerm2에서 CMD + 쉼표(,)를 클릭하면 바로 들어가진다.

    iTerm2에서 Color Presets을 찾는 경로
    iTerm2에서 컬러 설정을 찾는 경로

    1. 이제 위에 다운로드한 파일 위치로 찾아가 원하는 .itermcolors를 선택하여 클릭한 다음
    2. 다시 Import를 눌러 해당 파일을 클릭하면 적용 된다.

    6. zsh-autosuggestions

    (2023-11-01 수정)

    (GItHub 링크) 기존에 입력했던 명령어 기록을 조회해서 명령어에 따라 자동 제안 기능을 지원한다.

    git clone 하여 설치 및 반영

    git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

    (oh-my-zsh)

    `.zshrc` 파일 편집

    plugins에 zsh-syntax-highlighting 추가

    plugins=(
      # other plugins...
      zsh-autosuggestions
    )

    .zshrc 파일 실행

    source ~/.zshrc

    7. `zsh-highlighting`

    (2023-11-01 수정)

    명령어의 색상을 전환해서 해당 명령어가 있으면 초록색, 없으면 빨간색으로 바꿔준다.

    zsh-users/zsh-syntax-highlighting: Fish shell like syntax highlighting for Zsh.

    git clone 하여 설치 및 반영 (oh-my-zsh 없이)

    git clone https://github.com/zsh-users/zsh-syntax-highlighting.git
    echo "source ${(q-)PWD}/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh" >> ${ZDOTDIR:-$HOME}/.zshrc

    .zshrc 실행

    source ~/.zshrc

    꼬리말

    iTerm2 세팅 완료

    이렇게 터미널 세팅을 완료했다🥳🥳🥳

    iTerm2 세팅 완성 화면
    iTerm2 세팅 완성 화면

     

    수정일 2023-11-01 수 zsh-autosuggestions & zsh-highlighting

    댓글