기호 중심 프로그래밍 언어를 위해 설계된 모노스페이스 서체 Myna

5 hours ago 1

  • Myna는 프로그래밍 언어에서 자주 쓰이는 기호를 알파벳과 동등하게 다루는 모노스페이스 폰트로, 코드 편집기의 시각적 조화를 목표로 함
  • ASCII 기호 중심 설계를 통해 ->, ::, =~ 등 다문자 기호의 정렬을 개선하고, 균형 잡힌 굵기와 명확한 구분을 제공
  • 언어별 가독성을 고려해 Perl, Haskell, C 등에서 기호와 연산자의 형태를 명확히 표현
  • 현재는 단일 굵기와 비리거처 형태로 제공되며, Linux의 fontconfig·pango 환경에서 합성 볼드 지원
  • SIL Open Font License 1.1로 배포되어 자유로운 사용과 수정이 가능하며, 커뮤니티 피드백을 통한 확장 계획 존재

Myna 개요

  • Myna는 기호를 1급 글리프로 다루는 모노스페이스 폰트로, 프로그래밍 언어에서 기호의 시각적 일관성을 높이는 데 초점을 둠
    • ->, $, @, % 등의 기호가 기존 폰트에서 어색하게 보이는 문제를 해결
    • ASCII의 단순함을 유지하면서 리거처의 미적 효과를 모방

주요 특징

  • Symbol-First Design: 프로그래밍 언어 전반에 걸쳐 사용되는 ASCII 기호를 중심으로 설계
  • 정렬 정확도: ->, >>=, :: 등 다문자 기호가 자연스럽게 정렬
  • 균형 잡힌 시각적 무게감: 기호와 문자 간의 대비가 조화롭게 유지
  • 미니멀한 형태: 따옴표와 쉼표 등은 기하학적 형태로 단순화
  • 명확한 구분성: 1, l, I, |, 0, O, o 등 혼동되는 문자의 구별 강화
  • 언어 인식형 디자인: Perl의 시길, Haskell의 연산자, C의 기호 표현을 각각 명확히 표시

개발 배경

  • 기존 모노스페이스 폰트의 세부 글리프에 만족하지 못해 직접 제작된 서체
  • 개발자 본인이 전문 및 개인 프로젝트에서 장기간 사용한 후 공개
  • 모노스페이스 타이포그래피 커뮤니티에 대한 소규모 기여로 소개됨

현재 버전 및 기술적 세부사항

  • 버전 1.0.0, 단일 굵기 제공
  • 리거처 미지원, 향후 수요에 따라 기능 확장 가능
  • Linux 환경에서 fontconfig 및 pango를 통한 합성 볼드 지원
  • SIL Open Font License 1.1 적용

시각적 비교 및 예시

  • Perl, Haskell, C, Bash, Clojure, Erlang, OCaml, Rust, LaTeX, HTML, SQL 등 다양한 언어 코드 예시 제공
  • 다른 인기 모노스페이스 폰트와 비교 시, 리거처의 부드러움과 ASCII의 단순함을 동시에 구현
  • 다크·라이트 테마 모두 지원

설치 방법

  • Linux: ~/.local/share/fonts/에 .otf 복사 후 fc-cache -v 실행
  • macOS: ~/Library/Fonts/에 .otf 복사
  • Windows: 릴리스 파일 다운로드 후 Myna.otf 우클릭 → “Install for all users” 선택

라이선스

  • SIL Open Font License, Version 1.1
  • 자유로운 사용, 수정, 배포 가능

크레딧

  • 초기 버전은 Hera(Source Code Pro 기반 커스터마이즈)에서 출발
  • Fira Mono, Inconsolata, Plex Mono, Office Code Pro, Anonymous Pro 등에서 디자인 요소 차용
  • 코드 배너와 일러스트는 ImageMagickRay.so로 제작

향후 계획

  • 터미널 및 에디터 전반에서의 범용 사용을 목표
  • 비ASCII 글리프(기하학·수학 기호 등) 일부 포함
  • 커뮤니티 피드백에 따라 글리프 확장 및 기능 추가 예정
  • 버그 리포트(간격, 커닝, 렌더링 문제) 및 기능 제안은 GitHub Issues를 통해 접수
  • 문의: irfan@irfanali.org

Read Entire Article