한국어 프로그래밍 폰트 만들기
Portfolio
fonts
1 프로그래밍 폰트란
프로그래머가 고정폭(Monospaced) 폰트를 사용하는 이유는 코드의 가독성과 정렬을 유지하기 위함입니다. 일반적인 문서 작업에 쓰이는 가변폭(Proportional) 폰트와 달리, 고정폭 폰트는 모든 글자의 가로 길이가 동일하여 프로그래밍에 다음과 같은 장점을 제공합니다.
1.1 좋은 프로그래밍 폰트의 특징
좋은 프로그래밍 폰트는 단순히 고정폭이라는 점 외에도 몇 가지 중요한 특징을 가집니다.
- 명확한 문자 구분:
0
과O
,1
과l
같은 글자들이 혼동되지 않도록 각 문자의 고유한 형태가 뚜렷해야 합니다. - 일관된 너비: 모든 글자의 너비가 정확하게 일치해야 합니다. 일부 폰트들은 한글과 영어를 같이 쓸 때 너비가 깨지는 경우가 있어, 여러 언어를 사용하는 환경에서는 특히 중요합니다.
- 리거쳐(Ligature) 지원:
->
,==
,!=
와 같은 여러 문자가 합쳐져 하나의 기호처럼 보이는 기능을 지원하는 폰트도 있습니다. 이는 코드를 더 깔끔하고 읽기 쉽게 만들어줍니다. 대표적인 예시로는 Fira Code, JetBrains Mono 등이 있습니다.
1.2 왜 만들었는가?
많은 개발자들이 뛰어난 가독성을 제공하는 영문 프로그래밍 폰트를 선호합니다. 하지만 대부분의 영문 전용 폰트들은 한글을 지원하지 않아, 코드에 한글 주석이나 변수명이 섞여 있을 때 시각적 통일성이 깨지고 가독성이 떨어지는 문제가 발생합니다. 따라서 많이 사용되는 영문 프로그래밍 폰트에 네이버에서 개발한 D2Coding 폰트를 병합하는 프로젝트를 진행했습니다. 아래는 그 목록들이며 각각의 Repo에서 ttf파일을 다운로드 받을 수 있습니다. 하는 김에 Nerd font 버전도 만들어서 터미널에 사용할 버전도 같이 만들었습니다.
1.2.1 Meslo + D2Coding
MeD2 repository 에서 다운로드.
1.2.2 Jetbrain mono + D2Coding
JBD2 repository 에서 다운로드.
1.2.3 Fira Code + D2Coding
FiraD2 repository 에서 다운로드.
1.2.4 MonoLisa + D2Coding
MLD2 repository 에서 다운로드.