Установка шрифтов для X Window
Прежде всего, вы должны достать шрифты, содержащие изображения кириллических символов в соответствующих местах. Следует отметить, что все современные дистрибутивы имеют KOI8-R шрифты, более-менее пригодные для использования, так что если xlsfonts не показывает их, то они просто не установлены или не включены в X Font Path.
X Window включила набор KOI8-R шрифтов, разработанных , еще в конце 1995 года. Эти шрифты являются также частью XFree86.
Некоторые дистрибутивы (как правило, очень старые) могут не включать кириллические шрифты для X Window -- в этом случае их придется устанавливать самим.
Подробнее о шрифтах для X-window и о том, где их можно найти, смотрите в разделе .
Более современную коллекцию шрифтов для X windows можно взять у по адресу .
Поэтому вам следует проверить, установлены ли эти шрифты в вашей системе. Спросите системного администратора, или, если вы сами являетесь администратором, проверьте вашу систему сами, а именно:
find / -name crox\*.pcf\*
для того, чтобы найти местоположение шрифтов кириллицы в системе. Вы должны будете сделать эти шрифты доступными для X сервера, как -- я объясню ниже.
Если вы не нашли таких шрифтов в вашей системе, то вы должны установить их сами:
bdftopcf -o <font>.pcf <font>.bdf
Можете сжать их с помощью программы gzip
(очень старые X сервера не поддерживает сжатые шрифты):
gzip *.pcf
Если же вы все-таки хотите поместить новые шрифты в уже существующий каталог шрифтов, то вы должны "срастить" старый и новый файлы с именем fonts.alias в том случае, естественно, если они оба существуют.
cd "директория где лежат шрифты" mkfontdir .
xset +fp <новый каталог шрифтов>
xset fp rehash
Обратите внимание на ключ '+fp' -- это означает, что новые шрифты будут добавлены в начале списка каталогов со шрифтами. То есть, если прикладная программа запрашивает, скажем, шрифт fixed, то будет подставлен fixed font с кириллическими символами, чего мы и добивались. Если нужно установить шрифты в нескольких кодировках, то команда xset +fp с предпочтительной кодировкой должна быть после других.
Чтобы заставить X клиента использовать шрифты кириллицы, вы должны установить соответствующий X ресурс. Например, я делаю кириллический шрифт заданным по умолчанию в моем ~/.Xdefaults:
*font: 6x13
Так как мои шрифты кириллицы идут первыми в списке поиска шрифтов (смотри вывод программы 'xset q'), то они и подставляются, если программа требует какой-либо шрифт с именем, совпадающем с каким-либо из шрифтов, лежащих в кириллической директории.
Вот простые примеры. Если вы хотите научить соответствующий X клиент пользоваться кириллическим шрифтом, то вы должны узнать тип ресурса, который вам надо изменить (это можно сделать, используя editres (1x)) и определить его или в базе данных ресурсов, или в командной строке. Например,
$ xterm -font '-cronyx-*-bold-*-*-*-19-*-*-*-*-*-*-*'
-- запустит xterm с несколько уродливым шрифтом;
$ xfontsel -xrm '*quitButton.font: -*-times-*-*-*-*-13-*-*-*-*-*-koi8-*'
-- установит Cyrillic Times шрифт для кнопки Quit программы xfontsel.