[Comm] [LINUX] В Emacs не хочет устанавливаться шрифт cronyx-courier по умолчанию
Alexej Kryukov
=?iso-8859-1?q?anagnost_=CE=C1_yandex=2Eru?=
Вс Апр 2 22:20:18 MSD 2006
On Sunday 02 April 2006 21:33, Eugine V. Kosenko wrote:
>
> А где шаманить? В коде или в настройках? Не хотелось бы разводить
> зоопарк шрифтов...
В коде. Идея вот в чем: emacs использует некую внутреннюю кодировку,
которая в числе прочего предусматривает соответствия для символов
iso-8859-5 и символов UTF-8. Поддержка всех прочих кодировок кириллицы
традиционно обеспечивается переводом в ISO. Так вот вместо ISO можно
использовать и Юникод. Но для этого весь код, отвечающий за поддержку
кириллицы, нужно переписывать заново: переводить на новую базу таблицы
перекодировки, языковые окружения, методы ввода.
В свое время я еще для emacs20 написал пакет, где вся эта работа была
проделана. Только там из 8-битных кодировок поддерживалась одна лишь
cp1251, ибо koi я не использую. С тех пор emacs'ом практически не
пользовался, но сейчас проверил -- вроде работает и в новом Компакте.
Если хотите, можете с ним поэкспериментировать.
> Однако, если быть дотошным, то даже установка cyr-rfx не помогает --
> она содержит семейство "rfx-courier", а emacs упорно не хочет
> замечать производителя -- заменяет rfx на adobe и все равно не видит
> курьера в соответствующей кодировке :-(.
Ну, что заменяет -- это само по себе не страшно: у этих -rfx-*
обязательно должны быть алиасы на -adobe-*. Другое дело, если
еще и кодировку не ту выбирает...
В общем, я эту задачу привык решать прописыванием fontset'ов. Это
выглядит примерно так (шрифты заменить нужными):
(create-fontset-from-fontset-spec
"-*-Courier New-medium-r-*-*-16-*-*-*-m-*-fontset-courier16,
latin-iso8859-2:-*-Courier New-medium-r-*-*-16-*-*-*-m-*-iso8859-2,
cyrillic-iso8859-5:-*-Courier New-medium-r-*-*-16-*-*-*-m-*-iso8859-5,
greek-iso8859-7:-*-Courier New-medium-r-*-*-16-*-*-*-m-*-iso8859-7,
mule-unicode-0100-24ff:-*-Courier
New-medium-r-*-*-16-*-*-*-m-*-iso10646-1" t)
(setq default-frame-alist
(append
'((font . "fontset-courier16"))
default-frame-alist))
Если шрифты доступны и прописаны правильно -- всё будет работать.
P.S. Про Xemacs ничего не скажу, т. к. все мои эксперименты в свое
время убедили меня, что механизм mule там неработоспособен. Как люди
умудряются с ним работать, я не знаю.
--
Regards,
Alexey Kryukov <anagnost {at} yandex {dot} ru>
Moscow State University
Historical Faculty
Подробная информация о списке рассылки community