Berkeley Mono без покупки лицензии: кастомный шрифт Ioskeley Mono

Красивый моноширинный шрифт в редакторе кода — слабый пунктик многих программистов. Мы готовы часами перебирать темы оформления, меняя JetBrains Mono на Fira Code, а потом на SF Mono. Но в какой-то момент на глаза попадается Berkeley Mono. Выглядит он эстетично, строго и геометрии там ровно столько, сколько нужно для комфортного чтения.
Одна проблема: Berkeley Mono распространяется по платной лицензии. Не каждый готов отдавать ощутимую сумму за шрифт для терминала или любимой IDE.
Недавно я наткнулся на репозиторий IoskeleyMono. Разработчик Ахмед Хатем решил задачу изящным путем. Он взял популярный открытый шрифт Iosevka с его бесконечными возможностями кастомизации и собрал билплан, который с высокой точностью копирует геометрию и символы Berkeley Mono.
Как это выглядит на практике
Шрифт получил гибридное название от двух родителей: Iosevka + Berkeley = Ioskeley.
Автор подобрал пропорции так, чтобы вертикальные метрики, межбуквенные интервалы и размер скобок повторяли оригинальный стиль. В глаза сразу бросаются характерные глифы: одноэтажная g, круглый ноль с точкой внутри (0), восьмерка из двух равных кругов (8), открытый контур у шестерки и девятки (6, 9), а также квадратные точки в знаках препинания и слегка приподнятое нижнее подчеркивание.
Вот так выглядит сравнение бок о бок. Слева вариант Ioskeley Mono, справа — оригинальный Berkeley Mono:
| Ioskeley Mono | Berkeley Mono | | --- | --- | | | |
Если смотреть на скриншоты в реальном окружении разработки, разницу уловить действительно сложно. В редакторе с темной темой шрифт смотрится опрятно и собранно:
Для тех, кто хочет покрутить шрифт до скачивания, автор сделал интерактивный веб-стенд. На странице демо-стенда можно переключить язык программирования, поменять тему, включить сравнение с оригиналом или вписать собственный фрагмент кода.
Наборы и варианты сборки
Часто при скачивании открытых шрифтов приходится вручную искать патчи с иконками или бороться с кривыми лигатурами в терминале. В этом проекте автор подошел к релизу со всей серьезностью.
В разделе релизов лежит с десяток готовых zip-архивов под разные задачи:
IoskeleyMono.zipдля VS Code, JetBrains IDE или Zed.IoskeleyMono-NerdFont.zipс вшитыми иконками Nerd Fonts, если у вас настроен кастомный промпт в Starship или Neovim.IoskeleyMono-Term.zipсо строгой терминальной сеткой (spacing = "term"). Она пригодится, если ваш терминал (например, kitty или Ghostty) ломает отображение стрелок или символов псевдографики.IoskeleyMono-NL.zipбез лигатур. Полезно в средах вроде Xcode, где отключить лигатуры через настройки самой программы нельзя.IoskeleyMono-Web.zipс веб-шрифтами под@font-faceдля сайтов и документации.
Внутри каждого архива есть деление по ширине: Normal, SemiCondensed и Condensed. Если код приходится читать на небольшом экране ноутбука, уплотненные варианты экономят горизонтальное пространство без потери читаемости.
Отдельно стоит упомянуть папки Hinted и Unhinted в каждом архиве. Для мониторов с обычной плотностью пикселей на Windows лучше ставить файлы из папки Hinted, чтобы шрифтовой движок четче попадал в пиксельную сетку. На Retina-дисплеях macOS или HiDPI-экранах Linux предпочтительнее варианты Unhinted.
Градация по жирности тут полная: от тонкого Thin (100) до плотного Black (900), включая прямые и наклонные начертания (Italic).
Как собрать шрифт самостоятельно
Поскольку Ioskeley Mono по сути представляет собой конфигурационный файл для сборщика Iosevka, его можно собрать из исходников прямо у себя на машине. Это полезно, если вы захотите изменить пару глифов под себя.
Процесс сборки выглядит следующим образом:
git clone https://github.com/ahatem/IoskeleyMono.git
git clone --depth 1 https://github.com/be5invis/Iosevka.git
cp IoskeleyMono/private-build-plans.toml Iosevka/
cd Iosevka
npm install
npm run build -- contents::IoskeleyMono contents::IoskeleyMonoTerm
Все кастомные параметры шрифта описаны в файле private-build-plans.toml. Если вы захотите переключить стиль цифры 7 или выбрать другие знаки равенства, достаточно подправить пару строк в этом файле и запустить npm run build.
Стоит ли ставить
Если вам нравится аккуратный инженерный стиль Berkeley Mono, но покупать отдельную лицензию не входит в ваши планы, Ioskeley Mono закрывает эту потребность. Проект живой, свежие релизы собираются автоматически через GitHub Actions при выходе обновлений в базе Iosevka.
Попробовать шрифт можно буквально за пару минут. Скачиваете архив, ставите нужные файлы в систему и выбираете Ioskeley Mono в настройках своего редактора.
