Email or username:

Password:

Forgot your password?
vovᴀɴıᴜᴍ⁺

Хочу признаться.
На самом деле я уже некоторое (довольно продолжительное) время пользуюсь собственными пиксельными шрифтами.
Почему? Потому что могу. Теперь можете и вы.
Что у меня вам есть? Шрифт Salut Mono делался специально для консоли. Он есть в размерах 8, 11, 12, 14, 16 и 22 пикселя высотой (строки целиком), нескольких вариантах ширины и кое где с жирным вариантом. На картинке (
оригинал) есть большая часть из них.
Как установить и использовать?
В
этом архиве есть шрифты в формате BDF и PSF. Если вы на Linux, на десктопе можете использовать BDF. Они лежат в подкаталоге salut-mono архива. Скорее всего (например в KDE) в системе есть встроенный способ установки шрифтов. Если нет, то их можно установить вручную, скопировав в .fonts (скопируйте туда сам каталог salut-sans). После чего может быть нужно обновить кэш шрифтов. Я для этого нашёл команды fc-cache -fv и xset fp rehash.
Правда, не все программы пиксельные шрифты поддерживают — в олдскульных терминалах типа xterm или rxvt всё работает отлично, но, например, в приложениях, использующих библиотеку harfbuzz — нет.
Для установки в консоль Linux (которая по Ctrl-Alt-F1) подходят шрифты в формате PSF. Они в архиве в
build/consolefonts. Здесь только варианты шириной 8 пикселей, т. к. это технические ограничения текстового режима, если надо другие — можете сгенерить сами утилитой bdf2psf. (Далее нужны права рута) Их можно скопировать в /usr/share/consolefonts (сами файлы, не каталог). Как настроить — почитайте в документации в своём дистрибутиве. В системах Debian это делает console-setup, В Gentoo с OpenRC — сервис consolefont.
Ну разумеется, эти шрифты можно использовать не только в консоли. Изначальной задумкой было использовать их во всяких поделках на микроконтроллерах. Формат BDF очень простой и открытый — так что проблем с этим — никаких.
И да, это опенсорс и он лежит в репозитории:
https://git.disroot.org/Vovanium/Salut_fonts
Лицензия CC0 — юзайте где и как хотите.
В репозитории ещё есть Salut Sans (такой же, но пропорциональный), правда он сыроват и его особо негде применять.
#pixelart #fonts

3 comments
vovᴀɴıᴜᴍ⁺

Пример, как настроить rxvt (аналогично настраивается и xterm). Его настройки (обычно) лежат в файле .Xresources.

Rxvt.font: -*-salut mono-medium-r-normal-*-16-*-*-*-*-*-iso10646-1,\
-*-salut mono-medium-r-wide-*-16-*-*-*-*-*-iso10646-1
Rxvt.boldFont: -*-salut mono-bold-r-normal-*-16-*-*-*-*-*-iso10646-1,\
-*-salut mono-medium-r-wide-*-16-*-*-*-*-*-iso10646-1
Rxvt.skipBuiltinGlyphs: true
Первые две строчки устанавливают нормальное начертание, следующие две — жирное. Последняя — отключает встроенные в терминал символы рамок (в Salut Mono есть свои нормальные).
Как расшифровываются эти строки? Это формат XLFD (погуглите, если интересно), в нём дефисами разделены разные параметры, как то название, жирность (medium/bold), курсивность (R — нормальный, не курсив), относительная ширина (normal — обычная), размер (в пикселях). Звёздочка означает, что параметр не важен.
Все эти обозначения могут зависеть от шрифта. В Xorg есть программка
xfontsel, которая позволяет интерактивно подобрать обозначение шрифта, и xlsfonts, выводящая список всех установленных в этом формате.
В отношении Salut-mono значение размера может быть 8, 11, 12, 14, 16, 22.
Относительная ширина может быть следующей:
normal — есть у всех размеров.
semiexpanded — есть у размера 14 это размер 14×8.
extended — у 8 и 11, 8×6 и 11×8
wide — у 8, 11, 12 и 16, двойной ширины по сравнению с normal.

Так почему же в качестве шрифта у меня написано сразу два, причём один normal, другой wide?
А потому, что в это только кажется, что в консоли символы моноширинные. На самом деле они могут быть нормальной ширины (занимать одну „ячейку“ — знакоместо) и удвоенной (два знакоместа).
Но шрифт Salut Mono истинно моноширинный, поэтому для символов двойной ширины нужен отдельный шрифт.
Может, я сделаю более изящное решение для этого, но пока так.
С символами двойной ширины типичный европеец скорее всего не столкнётся. Это в основном восточноазиатские иероглифы, слоговые азбуки, а также (почему-то) некоторые технические символы. Кому интересно, что к чему — ищите описание POSIX-функции
wcwidth() и Unicode® Standard Annex #11. East Asian Width.
На картинке кусок скриншота из консольного плеера
moc с треками на японском языке — на нём катакана в два раза шире латинских букв.

Пример, как настроить rxvt (аналогично настраивается и xterm). Его настройки (обычно) лежат в файле .Xresources.

Rxvt.font: -*-salut mono-medium-r-normal-*-16-*-*-*-*-*-iso10646-1,\
-*-salut mono-medium-r-wide-*-16-*-*-*-*-*-iso10646-1
Rxvt.boldFont: -*-salut mono-bold-r-normal-*-16-*-*-*-*-*-iso10646-1,\
-*-salut mono-medium-r-wide-*-16-*-*-*-*-*-iso10646-1
Rxvt.skipBuiltinGlyphs: true
razzlom but silly

@vovanium У нас в /s/ https://bbs.quietplace.xyz/s/index.html есть тема со шрифтом Monocraft, можно рядом создать и с твоим. Будет круто! ​:blobcatpeek:​

Go Up