[MAC OS] 터미널 개발환경 세팅

SungBum Park·2021년 6월 25일
4

환경설정 및 세팅

목록 보기
1/2

0. 설치 및 설정 목록

  • Iterm2: 기존 터미널을 개선한 터미널
  • Oh my zsh: zsh 을 개선한 버전 (zsh은 기존 shell을 개선한 shell)
  • Homebrew: 패키지 설치
  • Tmux

1. Iterm2 터미널 설치

https://iterm2.com/ 이 링크에서 간단히 다운로드 받을 수 있다.

2. Homebrew 설치

Homebrew는 맥 환경에서 여러 패키지를 쉽게 설치 및 관리해주는 툴이다. 매우 자주 사용하는 툴이고, 이후에 설치는 이를 사용할 때가 많기 때문에 바로 설치해주자.

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

설치 확인

brew -v

3. Oh My Zsh 설치

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

3.1. Oh My Zsh 테마 설정하기

agnoster

agnoster 테마는 Oh My Zsh에서 기본적으로 제공하기 때문에 설정파일인 .zshrc을 변경하는 것으로 쉽게 적용 가능하다.

먼저, .zshrc 파일을 열어보자.

vi ~/.zshrc

위 파일을 열어보면 여러가지 설정이 이미 작성되어 있다. 그 중 테마를 설정하는 ZSH_THEME="robbyrussell" 이 부분을 찾아보자. 기본적으로 robbyrussell 이라는 테마로 설정되어 있는데 이를 agnoster 값으로 변경한 후 파일을 저장하자.

위와 같은 설정 파일을 적용하기 위해서는 source 라는 명령어를 사용해야 한다.

source ~/.zshrc

다른 테마를 적용하고 싶다면 https://github.com/ohmyzsh/ohmyzsh/wiki/External-themes 이 링크를 참조해보자.

Powerlevel10k

Powerlevel10k 테마도 많이 사용하는 테마라고 한다. 그리고 다른 테마에 비해 기능과 속도에서도 더 좋다는 평가가 있었다.

설치는 다음과 같이 명령어를 수행한다.

git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/themes/powerlevel10k

그리고 ~/.zshrc 파일의 테마를 다음과 같이 변경한다.

ZSH_THEME="powerlevel10k/powerlevel10k"

위 변경사항을 적용하면, 터미널에서 상세하게 테마를 설정하는 화면이 나온다. 이를 취향에 맞게 설정하면 된다. 다시 설정하고 싶다면 언제든지 다음 명령어를 실행하면 된다고 한다. (초기에는 추천해주는 것으로만 설치해도 충분했다.)

p10k configure

현재는 agnoster 테마에서 Powerlevel10k로 변경해서 사용하고 있다. Powerlevel10k 이 테마를 적용했다면, 아래의 터미널 입력창 커스텀을 따로 할 필요가 없다. (테마 설정 후 설정창에서 이를 설정한다.)

만약 테마를 적용하고 나면 폰트가 깨진다면 아래 폰트 변경하기를 적용해보자.

3.2. 폰트 변경하기

일반적으로 네이버에서 제공하는 개발자를 위한 서체인 D2codingfont 를 사용한다.

  1. https://github.com/naver/d2codingfont 이 링크 접속
  2. 최신 release 버전의 zip 파일 다운로드
  3. 맥의 서체 관리자 열기
  4. + 버튼으로 다운로드 받은 D2codingfont를 선택하여 추가
  5. 터미널의 환경설정(command + ,) 열기
  6. profiles -> Text 이동
  7. 아래 Font 섹션에서 D2codingfont를 선택 (그 외에 폰트 크기나 Bold체 등은 취향에 맞게 설정)

3.3. 유용한 플러그인 설치하기

Oh My Zsh에는 유용한 플러그인이 많다. 그 중에서도 필수로 사용할만한 플러그인을 소개하고, 그 외 플러그인은 살펴보고 필요에 따라 설치해서 사용하면 좋을 듯 하다. 먼저, 공통적인 설치 방법을 보자.

플러그인은 대부분 Github에 오픈소스로 공개되어 있으므로, git clone 으로 설치를 한다. (오픈소스로 공개되어 있으므로, 설치법은 해당 Github 페이지에서 쉽게 볼 수 있다.) git clone으로 설치 후, zsh 설정에서 설치된 플러그인을 추가해준다. 추가 방법은 아래와 같다.

  1. vi ~/.zshrc 로 zsh 설정 파일을 연다.
  2. .zshrc 파일에서 아래로 내려가서 plugins=(...) 항목을 찾는다.
  3. plugins=( # other plugins... {설치한 플러그인} ) 으로 설치한 플러그인을 추가한다. (자세한 방법은 아래 추천한 플러그인 설명 참고)
  4. 수정한 부분을 저장하고 파일을 닫는다.
  5. source ~/.zshrc 로 수정한 설정을 적용한다.

3.3.1. zsh-syntax-highlighting

명령어 입력 시 강조 표시로 해당 명령어가 올바른 명령어인지 보여준다. 명령어를 입력할 때 이 명령어가 유용한 명령어인지 확인할 수 있어서 매우 유용하다. 올바른 명령어는 초록색으로, 유효하지 않은 명령어는 빨간색으로 표시된다.

플러그인 설치

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

zshrc 설정 추가 (git은 기본적으로 추가되어 있는 상태)

plugins=(
	git
	zsh-syntax-highlighting
)

3.3.2 zsh-autosuggestions

이 플러그인은 바로 이전에 정상적으로 사용되었던 명령어를 보여준다. 명령어 1자 이상을 입력했을 때, 바로 직전에 사용했던 명령어 중 일치하는 명령어를 보여주는 형식이다. 직전에 사용했던 명령어를 반복해서 사용할 때와 예전에 사용한 명령어의 옵션이 생각나지 않았을 때 매우 유용하게 사용할 수 있다.

플러그인 설치

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

zshrc 설정 추가

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

3.3.3. fzf (fuzzy finder)

fzf는 매우 편리한 파일 검색 도구이다. 그리고 git 명령어 등과 다른 명령어와 같이 사용하게 되면 더욱 편리하게 사용할 수 있다. (git과 같이 사용하는 것은 8. 더 해볼 것 참고)

플러그인 설치

brew install fzf

zshrc 설정 추가

plugins=( 
    # other plugins...
	fzf
)

3.3.4 그 외 플러그인

그 외에 사용할 수 있는 플로그인은 이 링크에서 살펴보고 설치하여 사용하기를 추천한다.

4. Iterm2 터미널 테마 변경하기

좀 더 보기편한 터미널을 위해서는 테마(colors)을 변경하는 것이 좋다. Iterm2에서 제공하는 테마의 다운로드는 https://iterm2colorschemes.com/ 이 링크에서 할 수 있다.

여기서는 Snazzy를 다운로드받아서 사용한다. (기본적으로 제공하는 Solarized Dark 테마도 많이 사용하고 깔끔하다.)

다운로드 방법은 여러가지 있지만, 터미널에서 curl 명령어를 사용해보자.

# curl이 설치되지 않았다면, 설치 (기본적으로 설치되어있는 듯 하다.)
brew curl

# 설치 (위 테마 링크에서 다운로드받고 싶은 테마를 클릭하면 새 링크가 열리는 데 해당 링크를 사용하면 된다.
curl -LO https://raw.githubusercontent.com/mbadolato/iTerm2-Color-Schemes/master/schemes/Snazzy.itermcolors

다운로드한 테마는 다음과 같이 적용할 수 있다.
1. 터미널의 환경설정(command + ,) 열기
2. profiles -> Colors -> Colors Presets... 열기
3. Import... 선택
4. 다운로드받은 테마 열기
5. 해당 테마 선택

5. vi 에디터 편리하게 사용하기

vi 에디터는 에디터 중에서도 매우 오래된 에디터이다. 하지만 터미널에서 기본적으로 사용할 수 있어 현재도 많이 사용하며, 편리하게 사용하기 위해서 여러 도구를 제공하고 있다.

5.1. neovim 설치하기

vi 를 업그레이드한 대표적인 에디터가 vim이지만, 이 역시 오래된 에디터이다 보니 더욱 편리한 vi 류 에디터가 여럿 있다. 그 중에서도 neovim을 설치해보자. (기본 vi와 크게 차이가 느껴지는 것은 하이라이트를 해주므로 가독성이 훨씬 좋아진다.)

설치하기

brew install neovim

neovim을 사용하게 되면, MesloGS NF 폰트가 필요할 수 있다. 설치 방법은 아래와 같다. (만약, Powerline10k 프롬프트를 사용하면 해당 폰트가 같이 설치되어 있다.)

brew tap homebrew/cask-fonts
brew install font-meslo-lg-nerd-font

vi 대신 neovim 기본으로 사용하기

~/.zshrc 파일을 열어 zsh 설정을 아래와 같이 적용한다. (설정 추가 후, source ~/.zshrc 하기)

alias vim="nvim"
alias vi="nvim"
alias vimdiff="nvim -d"
export EDITOR=/usr/local/bin/nvim

6. 터미널 명령어 입력창 커스텀하기

기본적인 터미널 명령어 입력창은 여러 정보가 있어 사용하기 불편할 때가 있다. 이는 모두 필요에 따라 커스텀하여 사용할 수 있다.

참고로, Powerlevel10k 테마를 사용한다면 초기 설정에서 아래 5-1과 5-2는 설정할 수 있다.

6.1. 사용자 이름만 제외하고 모두 지우기

기본적인 터미널 명령어 입력창은 codemcd@codemcdui-MacBookPro 와 같이 길고 딱히 필요하지 않는 정보들이 있다. codemcd 와 같은 사용자 이름만 남기고 모두 삭제하자.

  1. zsh 설정 파일 열기 vi ~/.zshrc
  2. 사용자 이름 이외에 삭제하는 코드 추가 (간단히 파일 마지막 부분에 추가)
prompt_context() {
        prompt_segment black default "%(!.%{%F{yellow}%}.)$USER"
}
  1. 설정 적용하기 source ~/.zshrc

위 적용 후 몇몇 파일에 대한 권한 문제로 zsh에서 경고 메시지가 나올 수 있다. 경고 메시지와 함께 해결방법도 2가지 정도 제시하기 때문에 이 링크를 참고하여 해결하자.

6.2. new line 설정하기

화면이 작거나, 디렉토리 경로가 길어지면 명령어를 입력하기 불편하다. 따라서 new line을 통해 이를 좀 더 편리하게 사용할 수 있다.

  1. zsh 설정 파일 열기 vi ~/.zshrc
  2. New line을 설정하는 코드 추가 참고 링크
prompt_end() {
  if [[ -n $CURRENT_BG ]]; then
      print -n "%{%k%F{$CURRENT_BG}%}$SEGMENT_SEPARATOR"
  else
      print -n "%{%k%}"
  fi

  print -n "%{%f%}"
  CURRENT_BG='' 

  #Adds the new line and ➜ as the start character.
  printf "\n ➜";
}
  1. 설정 적용하기 source ~/.zshrc

7. Tmux 설정하기

터미널을 많이 사용하다보면 여러 개의 터미널을 사용하고 싶은 경우가 있다. 여러 탭을 열거나 윈도우 창을 열 수도 있지만, tmux를 사용하면 한 터미널에서 화면을 분할하여 여러 터미널을 사용할 수 있다.

# Tmux 설치
brew install tmux

# Tmux 설치 확인
tmux -V

# Tmux 실행
tmux

7.1. Tmux에서 마우스 사용하기

Tmux로 여러 Pane을 만들고 이를 사용하려면 기본적으로 키보드로 이동을 해야 한다. 그리고 항상 tmux 명령어를 사용하기 이전에 control + B 를 눌러야하므로 여간 불편한 것이 아니다. 따라서 마우스의 클릭을 통해 간단히 여러 pane을 옮겨다닐 수 있도록 설정할 수 있다.

현재 tmux를 설치하면 대부분 2.1 버전 이상을 사용할 것이므로, 해당 버전 이상인 경우만 설명한다.

  1. Tmux 설정파일 만들기 & 열기 vi ~/.tmux.conf
  2. 마우스 활성화 코드 추가
set -g mouse on
  1. 설정 적용하기tmux source-file ~/.tmux.conf

7.2. Tmux에서 클립보드 활성화

Tmux에서는 복사하는 방식이 일반 터미널과는 다르다. 텍스트를 드래그하여 선택하는 것만으로도 복사가 된다. 하지만 조금 불편한 점은 드래그를 끝내면 일반 터미널과 달리 드래그 자체가 끝나버린다. 자동으로 복사는 되지만, 가끔씩 불편한 경우가 있다.

위처럼 Tmux에서 드래그로 텍스트를 처음 복사하다보면 터미널에서 권한이 없다는 경고창이 뜰 수 있다. 이때는 다음과 같이 설정을 한다.

  1. 터미널 환경 설정창 열기
  2. General -> Selection 으로 이동
  3. Applications in terminal may access clipboard 옵션 활성화 (체크 표시하기)

8. 더 해볼 것

참고자료

profile
https://parker1609.github.io/ 블로그 이전

0개의 댓글