컴퓨터 관련

개발자용 고정폭 글꼴(mono font) 추천 - nerd font

sunyzero 2024. 8. 20. 22:04

개발자라면 필수로 고정폭 글꼴(fixed width font, mono font)을 사용한다. 여기서 mono font란 monospace font를 의미한다. 개발자가 고정폭을 좋아하는 이유는 코드를 볼때 간격이 일정해서 가독성이 좋기 때문이다. 반대로 가변폭 글꼴을 사용하면 탭이나 기호가 들어간 코드를 볼때 매우 불편해진다.

글꼴은 취향의 영역이라서 어느 것이 최고라고 말할 수는 없다. 다만 여기서는 많이 사용되는 Nerd font를 기준으로 하겠다. 너드 폰트는 다운로드를 자동화하는 스크립트도 있지만, 시스템 전역으로 쓸때는 그냥 수동으로 /usr/share/fonts/ 밑에 디렉터리를 만들고 설치하는게 좋다.

 

0. 글꼴 선택 기준

본인은 글꼴을 선택할 때 우선적으로 2가지를 살펴본다.

첫번째로 숫자 0 (zero)의 안쪽이 빗금인지 점인지를 확인한다. 개인적으로 빗금 스타일을 더 선호한다. 아래 그림을 보면 좌측은 빗금 스타일 0(slashed zero number)을 사용하고, 우측은 점을 찍은 것이다. 어느 스타일을 선호하는지 본인이 여기서 보고 정하면 된다.

Mono font - Slashed zero vs Doted zero

두번째로는 폭을 본다. 글꼴의 폭이 넓으면 눈이 덜 피로하지만 한 화면에 많이 표시하지 못한다. 대표적으로 폭이 넓은 형태로는 Roboto가 있고, 좁은 형태로는 Iosevka가 있다. 둘을 비교하기 위해 아래 그림을 보면 된다. 위가 Roboto이고 아래가 Iosevka이다.

Roboto (top) vs Iosevka (bottom)

폭이 좁으면 화면에 많은 글을 표시할 수 있어서 log를 보거나 code를 분석할 때는 용이한 측면이 있다. 다만 문서 자료를 작성할 때는 정신이 사나울 수도 있다.

 

 

1. Nerd font란?

Nerd font는 개발자들이 주로 사용하는 폰트에 각종 기호(git이나 vim 에디터에서 사용하는 기호)를 추가한 버전이다. 기존 폰트에 기호 이미지를 추가하는 패치된 폰트이므로 어떤 폰트든지 패치해서 만들 수 있다. 다만 패치 스크립트를 직접 사용하면 작업 시간이 좀 오래 걸리는 편이라서 미리 패치된 글꼴을 제공한다. 아래에서 볼 수 있다.

Nerd Font Downloads - https://www.nerdfonts.com/font-downloads

 

2. 추천하는 폰트

개인적으로 추천하는 Nerd font는 다음과 같다. 

CodeNewRoman 넓은 폭을 가진 글꼴이다.
가독성이 좋아서 터미널용으로 많이 사용된다.
D2coding 네이버에서 제작한 글꼴이다. 
폭이 좁은 편이라 한 화면에 많은 글자를 표시할 수 있다.
EnvyCodeR 좁은 폭과 귀엽게 둥근 글꼴이다.
Iosevka 좁은 폭을 가진 글꼴이다.
자매품으로 Zed가 있다.
Mononoki 중간 폭을 가진 글꼴이다.
동글동글해서 귀여운 글꼴이다.
Roboto Mono 넓은 폭을 가진 글꼴이다.
ZedMono 좁은 폭을 가진 글꼴이다.
Iosevka를 약간 둥글게 수정한 글꼴이다. 개인적으로 추천.

위 글꼴 외에 FiraCode, IBM Plex나 Noto Nerd, Source code pro 도 많이 쓰이므로 한번 위의 Nerd Font 링크에서 확인해보기 바란다. 

그러면 위에서 언급한 글꼴을 순서대로 그림으로 살펴보면 다음과 같다. 참고로 Gnome builder의 설정 화면에서 캡쳐했다.

 

2.1. CodeNewRoman Nerd Font

CodeNewRoman

CodeNewRoman은 터미널인 gnome-terminal에서 설정해도 좋은 글꼴이다. 아래 그림은 gnome-terminal에 설정한 모습이다.

gnome-terminal profile

 

2.2. D2coding Nerd Font

D2coding은 터미널 용으로 써도 좋은 편이다. 그리고 한글이 지원된다는 강점이 있다. 

다운로드 링크 - https://github.com/ryanoasis/nerd-fonts/releases/download/v3.2.1/D2Coding.zip

 

2.3. EnvyCodeR Nerd Font Mono

EnvyCodeR

EnvyCodeR도 좁은 편에 둥글둥글한 스타일인데, 문서 읽을때 오히려 더 좋은 것 같다는 생각이 든다.

 

2.4. Iosevka Nerd Font Medium

Iosevka

Iosevka는 기본적으로 가늘어서 가독성을 높이려면 Medium 정도의 레벨을 사용하는 것을 추천한다.

 

2.5. Mononoki Nerd Font Propo

Mononoki Nerd Font propo

동글동글해서 보기 좋은 글꼴이다. 터미널용으로도 괜찮은 글꼴이다. 개인적으로 추천하는 글꼴 중에 하나이다.

 

2.6. Roboto Nerd Font

Roboto Nerd Font

 

 

2.7. ZedMono Nerd Font Mono Medium

ZedMono Nerd Font Mono Medium

ZedMono는 Iosevka를 다듬은 글꼴이다. 개인적으로 좁은 폰트 중에 제일 좋아하는 폰트이다. 특히 Medium 레벨의 굵기로 표시하면 가독성도 좋다.

 

 

3. 폰트 설치 방법

리눅스에서는 개인 홈디렉터리에 폰트를 설치하는 방법과 시스템에 설치하는 방법이 있는데, 되도록이면 시스템에 설치하는 것을 추천한다. 시스템에 폰트를 설치하는 방법은 매우 간단하다. Nerd Font 사이트에서 받은 폰트는 zip 파일로 되어있는데, 이를 풀면 디렉터리가 나온다. 그리고 해당 디렉터리를 통째로 /usr/share/fonts/ 로 복사하면 된다. (복사는 당연히 root 권한으로 작업해야만 한다)

만일 폰트 파일만 있는 경우, 예를 들어 ttc 파일 1개라면 /usr/share/fonts/ 밑에 적당한 이름의 디렉터리를 만들고 그 안에 넣어주면 된다. 예를 들어 mynerdfont.ttc 파일이라면 /usr/share/fonts/mynerdfont 라고 디렉터리를 만들고 그 안에 파일을 넣어주면 된다. ttf같이 여러개의 파일이 있는 경우라도 방법은 같다.

보통 폰트를 /usr/share/fonts 밑에 복사하면 아무 작업을 안해도 자동으로 인식된다. 그렇지만 간혹 인식이 안된 경우도 생길 수 있는데, 그럴 경우에는 font cache를 재설정하기 위해 fc-cache -f 명령을 내리면 된다. 그래도 안된다면 재부팅하도록 하자.

 

4. 기타 글꼴

이 외에 최근에 Intel One Mono도 인기가 높아지는 글꼴이다. 약간 넓은 스타일인데, 4k나 와이드 스크린을 사용하는 경우에는 가독성이 좋은 편이다. 아래 링크에서 확인해볼 수 있다.

 

 

 

히스토리

2024-10-23 D2coding nerd font 링크 추가

2024-08-27 Intel One Mono 추가

2024-08-20 초고

반응형