궁서체의 습격
Ghostty를 설치하고 터미널에 한글을 입력하면, 익숙하면서도 당황스러운 폰트를 만나게 됩니다.
바로 궁서체.

영문은 깔끔하게 나오는데, 한글만 입력하면 갑자기 조선시대로 타임슬립합니다. Ghostty가 한글 글리프를 찾지 못해 macOS 시스템 폴백 폰트인 궁서체로 렌더링하기 때문입니다.
일본어나 중국어도 마찬가지입니다. CJK(Chinese, Japanese, Korean) 문자 전반에 해당하는 문제예요.
Noto Sans Mono CJK KR 설치
구글이 만든 Noto Sans Mono CJK KR은 CJK 문자를 모두 지원하는 고정폭 폰트입니다. 터미널용으로 딱입니다.
Homebrew로 간단하게 설치할 수 있습니다.
brew install --cask font-noto-sans-mono-cjk-kr설치 후 Font Book에서 "Noto Sans Mono CJK KR"이 보이면 성공입니다.
Ghostty 설정
Ghostty 메뉴에서 Settings...(Cmd + ,)를 선택하면 설정 파일(~/.config/ghostty/config)이 바로 열립니다.
설정 파일에 아래 내용을 추가합니다.
font-family = "Noto Sans Mono CJK KR"기존에 사용하던 영문 폰트가 있다면, font-family를 여러 번 지정해서 폴백 체인을 만들 수 있습니다. Ghostty는 첫 번째 폰트에서 글리프를 찾지 못하면 다음 폰트로 넘어갑니다.
font-family = "Menlo"
font-family = "Noto Sans Mono CJK KR"이렇게 하면 영문은 Menlo로, 한글은 Noto Sans Mono CJK KR로 렌더링됩니다.
특정 유니코드 범위만 매핑하기
더 세밀한 제어가 필요하다면 font-codepoint-map을 사용할 수 있습니다. 한글 유니코드 범위를 직접 지정하는 방식입니다.
font-family = "Menlo"
font-codepoint-map = "U+AC00-U+D7AF=Noto Sans Mono CJK KR"U+AC00-U+D7AF는 한글 음절 범위입니다. 한글 자모까지 포함하려면 아래처럼 추가합니다.
font-codepoint-map = "U+1100-U+11FF=Noto Sans Mono CJK KR"
font-codepoint-map = "U+3130-U+318F=Noto Sans Mono CJK KR"
font-codepoint-map = "U+AC00-U+D7AF=Noto Sans Mono CJK KR"하지만 대부분의 경우 font-family 폴백 방식으로 충분합니다.
설정 적용
설정 파일을 저장한 후 Ghostty 메뉴에서 Reload Configuration(Cmd + Shift + ,)을 선택하면 재시작 없이 바로 적용됩니다. 물론 Ghostty를 재시작해도 됩니다.

궁서체가 사라지고 깔끔한 고딕체로 한글이 표시됩니다. 터미널이 한결 읽기 편해집니다.
폰트 크기 조정
한글과 영문의 크기 밸런스가 맞지 않는다면 font-size를 조정해보세요.
font-size = 14소수점도 지원하므로 font-size = 13.5 같은 미세 조정도 가능합니다.
정리
| 항목 | 값 |
|---|---|
| 문제 | Ghostty에서 한글이 궁서체로 표시됨 |
| 원인 | CJK 폰트 미설정 시 macOS 폴백 폰트 사용 |
| 해결 | Noto Sans Mono CJK KR 설치 + Ghostty 설정 |
| 설정 파일 | ~/.config/ghostty/config |
| 설치 명령 | brew install --cask font-noto-sans-mono-cjk-kr |