Примечание
Теперь это почти стабильно.
В качестве побочного проекта в течение моих выходных я выпущу новую бета-версию, чтобы исправить ошибки, зарегистрированные или столкнуться в моем ежедневном кодировании в течение 1-2 недель, и выполнять некоторую работу на новом веб-сайте и создавать инструменты.
Если все пойдет хорошо, стабильная версия будет выпущена позже в этом году.

Maple Mono - это шрифт с открытым исходным кодом, ориентированный на сглаживание потока кодирования.
Я создаю его, чтобы улучшить свой опыт работы и надеюсь, что это может быть полезно для других.
V7 - это полностью переделанная версия, обеспечивая переменную шрифт, перепроектирование более половины глифов и предлагает более умные лигатуры. Вы можете заказать v6 здесь
@ $ % & Q -> и курсивный fijklxy в курсивом.features/Версия CN содержит глифы упрощенного и традиционного китайца и японцев, которые не так нормальны, как большинство шрифтов CN. Расстояние Glyphs CJK намного больше всего для лучшего выравнивания метрики, см. Подробности в заметках выпуска и в этом вопросе.

Вы можете скачать все архивы шрифтов из релизов.
paru -S ttf-maple-betaMaple Mono )Maple Mono NL )--normal предустановка с лигатурами ( Maple Mono Normal )--normal предустановка без лигатур ( Maple Mono Normal NL )-NF )-CN )-NF-CN )MapleMono-TTF-AutoHint / MapleMono-NF / MapleMono-NF-CN и т. Д.MapleMono-OTF / MapleMono-TTF / MapleMono-NF-unhinted / MapleMono-NF-CN-unhinted и т. Д.-AutoHint и -unhinted ?-AutoHint используется только для формата TTF . Файл config.json используется для настройки процесса сборки. Осмотрите схему или документ для получения более подробной информации.
Есть также некоторые параметры командной строки для настройки процесса сборки. Параметры CLI имеют более высокий приоритет, чем параметры в config.json .
Вы можете использовать действия GitHub для построения шрифта.
config.jsonCustom Build слеваRun workflow с настройкой параметровgit clone https://github.com/subframe7536/maple-font --depth 1 -b variable
docker build -t maple-font .
docker run -v " $( pwd ) /fonts:/app/fonts " -e BUILD_ARGS= " --normal " maple-font Клонировать репо и запустите на местной машине. Убедитесь, что у вас установлены python3 и pip
git clone https://github.com/subframe7536/maple-font --depth 1 -b variable
pip install -r requirements.txt
python build.pyUbuntu или Debian , возможно, также нужен python-is-python3Если у вас возникли проблемы с установкой зависимостей, просто создайте новое кодирование GitHub и запустите команды там
Для пользовательских font-patcher ARGS требуется font-forge (и, возможно, python3-fontforge ) требуется.
Может быть, вам также следует изменить "nerd_font.extra_args" в config.json
Добавить --normal флаг в build.py для общего конфигурации, сделайте шрифт точно так же, как JetBrains Mono (с удаленным нолью).
Есть три вида вариантов для замораживания функций:
enable : перемещать правила лигатуры в calt , что включит функции без настройки cvXX / ssXX / zero в функциях шрифтов, точно так же, как лигатуры по умолчанию по умолчаниюdisable : удалите функции в cvXX / ssXX / zero , что больше не будет влиять, даже если вы включите его вручнуюignore : ничего не делать Запустите build.py с флагом --apply-fea-file -файл функции из source/features/{regular,italic}.fea будет применен в шрифте переменной. Вы можете изменить его, чтобы изменить все функции, например, удалить некоторые лигатуры в calt .
Запустите python build.py --cn , базовые шрифты CN (около 135 МБ) будут загружаться из GitHub.
Если вы хотите создать базовые шрифты CN из переменной (около 35 МБ), настройка "cn.use_static_base_font": false in config.json и быть терпеливым , экземпляра займет около 40-50 минут.
Сценарий сборки будет автоматически загружать активы Necessory от Github. Если у вас есть проблемы с загрузкой, пожалуйста, настройте github_mirror в config.json или $GITHUB для переменной вашей среды. (Target URL будет https://{github_mirror}/<user>/<repo>/releases/download/{tag}/{file} ) или просто загрузить файл Target .zip и поместить его в тот же каталог, что и build.py .
usage: build.py [-h] [-v] [-d] [--debug] [-n] [--feat FEAT] [--apply-fea-file] [--hinted]
[--no-hinted] [--liga] [--no-liga] [--cn-narrow]
[--nerd-font | --no-nerd-font] [--cn | --no-cn] [--cn-both] [--ttf-only]
[--cache] [--archive]
Builder and optimizer for Maple Mono
options:
-h, --help show this help message and exit
-v, --version show program's version number and exit
-d, --dry Output config and exit
--debug Add `Debug` suffix to family name, skip optimization
Feature Options:
-n, --normal Use normal preset, just like `JetBrains Mono` with slashed zero
--feat FEAT Freeze font features, splited by `,` (e.g. `--feat
zero,cv01,ss07,ss08`). No effect on variable format
--apply-fea-file Load feature file from `source/features/{regular,italic}.fea` to
variable font
--hinted Use hinted font as base font
--no-hinted Use unhinted font as base font
--liga Preserve all the ligatures
--no-liga Remove all the ligatures
--cn-narrow Make CN characters narrow (experimental)
Build Options:
--nerd-font Build Nerd-Font version
--no-nerd-font Do not build Nerd-Font version
--cn Build Chinese version
--no-cn Do not build Chinese version
--cn-both Build both `Maple Mono CN` and `Maple Mono NF CN`. Nerd-Font version
must be enabled
--ttf-only Only build unhinted TTF format
--cache Reuse font cache of TTF, OTF and Woff2 formats
--archive Build font archives with config and license. If has `--cache` flag,
only archive Nerd-Font and CN formats
SIL OPEN OPEN LICENGE 1.1