On 2003.04.29 at 14:03:43 +0600, Dimitry N. Naldaev wrote:

> > Во-первых, xlib так никогда не просят. xlib просят
> > 1. Найти шрифт, соотвествтующий этому шаблону. Он его находит,
> > и возвращает некий идентификатор этого шрифта.
> 
> Копать здесь :-) Как ищется шрифт, соответствующий шаблону? какие функции 
> отвечают за этот процесс и где они живут?

XQueryFont, XLoadFont  XLoadQueryFont 

> > Во-вторых, речь шла не столько об xlib, сколько об Xt.
> > Который имеет свой собственный механизм работы с ресурсами, надстроенный
> > над xlib-овским. А Xaw и Motif надстраивают сверху еще один уровень.
> типа если xlib будет находить правильный шрифт, соответствующий шаблону, то 
> эти надстройки могут его "испортить"?

Да запросто. Например, задав шаблон с явным указанием кодировки.
Отличной от текущей.

> > В-третьих есть еще xrdb, который умеет препроцессировать файл ресурсов.
> Не знал, не знал...

Очень рекомендую освоить. Крайне способствует  созданию удобной среды
из тех программ, которые ресурсами пользуются (т.е. всех, кроме Gtk-шных
и Qt-шных).

> > Видимо, самый простой путь борьбы - прикрутить к xrdb макрос
> > FONT_ENCODING, который будет соответствующим образом раскрываться,
> > в зависимости от nl_langinfo(CODESET).
> не уверн, что это будет проще...
> 
> Мне бы еще хотелось, чтобы xlib умел находить фонт с нужным dpi в зависимости 
> от dpi монитора/X-сервера. интересно сдесь тоже можно сделать через xrdb или 
> без пропатчивания xlib не обойтись?

Ты прочитай что-ли описание XLFD. Как раз для этого хватает
возможностей xrdb. Что такое X_RESOLUTION и Y_RESOLUTION она знает.


> > В основном - за ввод с клавиатуры. Используется он в основном
> > в XmbLookupString, которая преобразует присланный  X-сервером код
> > клавиши (KeySym) в строку, сответствующую смыслу этой клавиши в текущей
> > локали.
> 
> А за что тогда там отвечает раздел XLC_FONTSET и где он используется?

В общем-то за то же самое. 

> > Предложением решения в данном случае является не абстрактная фраза
> > "положить трам-там-там", а патчи к пакету, отправленные мейнтейнеру
> > через Debian bug-tracking систему.
> >
> У меня есть подозрение, что проще и правильнее выпустить отдельный/е пакет(ы) 
> аддон(ы) с локалезированными ресурсами для X'ов

Тогда выпускай. Даже если Антон Зиновиев откажется это в task-cyrillic
включать, есть и неофициальные репозитории.

> О да! очень серьезное замечание. меня если чесно уже задалбала борьба с 
> размерами шрифтов на 100 dpi мониторе и боле мене приемлемого решения я до 
> сих пор не знаю :-( особенно если учесть, что gimp почему-то зависит от 
> фонтов в 75 dpi

Cпецифицируй больше полей в шаблоне. Там поле для разрешения есть.
> > Во-вторых, некоторые любят шрифты  -rfx-*, а некоторые -cronyx-*,
> > А в дистрибутиве есть и те и другие.
> 
>  А некоторые ни то и ни другое. но пока больше не из чего выбирать :-(

Ну, так есть xmbdfed. Нарисуй шрифты, которые тебе нравятся.
Прикрути к ним trscripts, чтобы генерировались во всех возможных
кодировках и поделись с обчественностью.

> > Поэтому предложить работающее решение довольно сложно. Призовая игра -
> > предложить решение, работающее в том случае если вдруг любители разных
> > шрифтов работают на одной машине. /etc/X11/имя-локали в этом случае не
> > спасает.
> 
> Вопрос не в том, чтобы удовлетворить вкус самого изысканного гурмана, А в том 
> чтобы предложить работающее решение по умолчанию, чтобы начинающий 

Хитрость в том, что все кто способны реализовать работающее решение,
таки являются гурманами и эстетами. И давно уже имеют свой личный
.Xresorces, который с собой с машины на машину таскают.

Поэтому нужно придумать такое решение чтобы именно они захотели его
реализовать.

Ответить