이 글에서는 맥북에서 사용하는 기본 터미널이 아닌 iTerm2 라는 터미널을 사용하여 내가 원하는 폰트, 테마를 적용해보는 방법을 포스팅합니다. 코딩을 할 때 보기 좋은 터미널에서도 기분 좋게 작업할 수 있듯이 여러분만의 환경을 만들어보세요! 

맥북 터미널(iTerm2) 커스텀해서 꾸미기(폰트, 테마 변경 등)

맥북은 리눅스 기반이라 기본적으로 명령줄 인터페이스를 위해 터미널 에뮬레이터를 제공하고 있다.

기본 터미널

기본 터미널도 좋지만 나는 iTerm2라는 터미널을 설치하여 내 맘대로 꾸며볼 생각이다. iTerm2를 사용하면 사람들이 공유한 많은 스타일의 테마를 손쉽게 적용할 수 있기도 하지만, 순정 터미널에는 없는 창분할 기능이 있기 때문에 대체 터미널로 많이 사용된다고 한다.


반응형

iTerm2, zsh, oh-my-zsh 설치하기

내가 사용할 터미널인 iTerm2는 이미 많은 맥북 사용자들이 터미널 커스텀을 위해 필수로 사용하고 있다.

아래 사이트로 접속하여 최신 릴리즈 버전을 다운로드 하면 된다. 다운로드 받으면 바로 사용할 수 있다. 

 

iTerm2 - macOS Terminal Replacement

iTerm2 by George Nachman. Website by Matthew Freeman, George Nachman, and James A. Rosen. Website updated and optimized by HexBrain

iterm2.com

그리고 커스텀을 하기 위해 아래 명령어를 입력하여 라이브러리 두 가지를 설치해준다.

커스텀이 자유로운 Z쉘(zsh)과 Z쉘의 많은 설정을 편하게 관리하기 위한 프레임워크인 oh-my-zsh를 설치해주어야 한다.

zsh의 경우 맥 OS X 카탈리나 이상의 버전에서는 기본적으로 설치되어 있어서 oh-my-zsh만 설치해주면 된다.

$ brew install zsh
$ sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

oh-my-zsh를 설치하는 화면을 보면 아래와 같이 터미널 화면이 다양한 색으로 표현되고 있다.

oh-my-zsh

그리고 설치가 모두 완료되면, zsh 쉘의 테마를 agnoster(git 사용자에게 유용한 테마)로 변경해주어야 한다.

아래 명령어를 입력하여 zshrc 파일을 열어 준 후, ZSH_THEME의 내용을 변경해주면 된다.

$ vi ~/.zshrc
ZSH_THEME="robbyrussell” 부분을 ZSH_THEME="agnoster” 로 변경

테마 변경

그리고 터미널을 재실행하면 아래와 같이 변경된 테마를 볼 수 있다.


반응형

터미널 폰트 변경하기

그런데 테마가 변경된 터미널에서 보이는 글자가 ?도 보이고 ~도 보이고... 이상하다. 글자가 깨진 것이다. 깨진 글자를 해결하기 위해서는 터미널의 폰트를 변경해주어야 한다.

폰트는 많은 종류의 폰트가 있지만 네이버에서 개발하여 배포하고 있는 D2 Coding체를 다운로드 하였다. 폰트 선택을 위해서 아래 글을 참고하였다.

 

코딩하기 편한 폰트는 무엇일까?

개발은 장비빨이다 - 폰트 편 | 개발자이거나, 개발자를 꿈꾸는 학생이거나, 코딩을 한 줄이라도 해본 사람들에게 질문을 하나 던져보겠습니다. 코딩하는데 폰트가 얼마나 중요하다고 생각하시

brunch.co.kr

D2 Coding체를 다운로드 하는 경로는 아래와 같다.

 

GitHub - naver/d2codingfont: D2 Coding 글꼴

D2 Coding 글꼴. Contribute to naver/d2codingfont development by creating an account on GitHub.

github.com

여러가지 릴리즈 된 파일들이 있지만, 1.3.2 배포라고 적힌 가장 최신의 파일을 받으면 된다. 파일을 받고 압축을 풀면, 내부에 아래와 같이 .ttc 파일이 보이는데, 이 파일을 더블클릭하여 폰트를 설치해주면 된다.

D2Coding폰트 변경

설치한 폰트를 적용하기 위해서, 터미널 상단의 iTerm2 - Preferences로 들어간다.

Preferences

Preferences에서 메뉴 중 Profiles - Text로 들어가 Unicode normalization form을 NFC로, 그리고 Font를 설치한 D2Coding으로 변경해주면 된다. NFC 방식을 써야 한글 같은 유니코드를 깨지지 않게 잘 표현해준다.

폰트 변경

그리고 다시 터미널을 재시작 하면, 깨지지 않는 폰트를 확인할 수 있다.

폰트 정상 출력


반응형

테마 변경하기

iTerm2 터미널의 테마를 변경하기 위해서는 아래 사이트로 접속하여 원하는 스타일의 테마를 골라서 다운로드하면 된다.

이 사이트가 아니더라도 테마를 공유하는 사이트가 많지만, 여기에도 충분히 많은 종류가 있고 가장 많이 알려져있어서 공유한다.

 

Iterm Themes - Color Schemes and Themes for Iterm2

 

iterm2colorschemes.com

사이트에 접속하면 아래 그림과 같이 .tar.gz 또는 .zip 파일 형태로 다운로드 받을 수 있는데, 이 파일은 지원하는 모든 터미널의 모든 테마를 다 다운로드 하는 것이다. 다운로드 후 압축을 해제하면 많은 폴더가 보이는데 그 중 schemes 폴더 내의 테마 파일이 iTerm2를 위한 테마 파일이다. 확장자가 .itermcolors인 파일들을 찾으면 된다.

테마 다운로드폴더 구조

원하는 폰트만 받고 싶으면, 아래와 같이 원하는 폰트를 고른 후에 폰트 명에서 오른쪽 클릭 후 '다른 이름으로 링크 저장'을 눌러 저장하면 된다.

다른 이름으로 링크 저장

내가 선택한 테마는 BlueBerryPie라는 테마이다.

BlueBerryPie

테마 적용은 간단하다. 폰트 적용과 동일하게 iTerm2 - Preferences로 들어가 Profiles를 선택한다. 그리고 Text가 아닌 Colors를 선택 후, 오른쪽 아래 Color Presets를 눌러 Import를 선택한다. 그리고 내가 다운로드 한 파일을 Import 해주면 Color Presets 목록에 BlueBerryPie가 등록된다. 등록된 BlueBerryPie를 선택하고 터미널을 재시작 해주면 끝이다.

PreferencesColor Presets

내가 선택한 테마가 적용된 터미널을 볼 수 있다.

BlueBerryPie 테마 적용


반응형

명령줄에서 컴퓨터 이름 제거하기

터미널을 보면 명령어 입력 부분 앞 부분이 '계정 이름@컴퓨터 이름'으로 표기되어 상당히 긴 영역을 차지하는 것을 볼 수 있다.

그래서 해당 영역에서 @ 뒷부분에 해당하는 컴퓨터 이름을 제거하거나 다른 이모티콘 등으로 변경해보려 한다.

 

먼저 컴퓨터 이름을 제거하는 방법이다.

아래 명령어를 입력하여 zshrc 파일을 열어준 후 가장 마지막 부분에 prompt_context() 내용을 추가해주면 된다.

$ vi ~/.zshrc

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

zshrc 파일 변경

적용하고 나면 터미널에서 컴퓨터 이름이 제거되고 간결하게 보인다.

컴퓨터 이름 제거

 

컴퓨터 이름을 다른 이모지로 대체하는 방법이다. 앞선 prompt_context() 내용이 아닌 아래의 내용으로 적용하면, prompt_segment black default 구문에 의해 DogFoot과 뒷 부분에 이모지가 출력된다.

 # 랜덤 이모지 적용
prompt_context() {
    emojis=("🔥" "🐻" "💛" "🔥" "🦊" "🦋" "🌈" "🍻" "🚀" "🦊" "🌙")
    RAND_EMOJI_N=$(( $RANDOM % ${#emojis[@]} + 1))
    prompt_segment black default "DogFoot ${emojis[$RAND_EMOJI_N]} "
}

# 이모지 한 개 적용
prompt_context() {
    emojis="🐝"
    prompt_segment black default "DogFoot ${emojis} "
}

이모지 적용
이모지 적용된 터미널

그리고 사용자 이름을 제거하는 방법도 있는데, 아래 내용을 동일하게 zshrc 파일에 추가해주면 된다.

DEFAULT_USER="사용자 이름"

 

+ Recent posts