Базовый путь встроен в библиотеку расширения X-сервера
/usr/openwin/server/lib/libserverdps.so:
|
|
$ strings libserverdps.so | grep "/usr" | sort -u
/usr/openwin/lib/X11
|
При загрузке X-сервера проверяются файлы .upr, расположенные в этом
каталоге, которые в свою очередь могут содержать ссылки на каталоги,
содержащие ресурсы или другие файлы .upr.
|
|
Так, для каталога /usr/openwin/lib/X11 файлы ресурсов просматриваются
в порядке их размещения на диске:
|
|
$ ls -i1 *.upr | sort -n
228504 DPS.upr
228505 DPS13Fonts.upr
228506 DPSF3Bitmaps.upr
228507 DPSF3Fonts.upr
228514 initF3.upr
228620 DPSType3Fonts.upr
|
Отметим, что не обязательно располагать ресурсы в том-же каталоге, что и
описывающие их файлы .upr. Так, например, файл ресурсов, определяющий
шрифты дисплейного постскрипта /usr/openwin/lib/X11/DPS13Fonts.upr
содержит предложение
|
|
//usr/openwin/lib/X11/fonts/Type1
|
которое и задаёт базовый путь, применяемый системой для поиска файлов
шрифтов Adobe Type 1, описанных в DPS13Fonts.upr. В этом случае, внутри
.upr файла, можно использовать относительные пути к ресурсам.
|
|
Выявленные при загрузке ресурсы, помещаются в виртуальную память VM
интерпретатора Display PostScript. И уже в завершении процедуры
первоначального поиска, файлы .upr разыскиваются в директориях,
добавленных командой xset +fp.
|
|
Таким образом, для локализации iso8859-5, и установленных путях поиска
шрифтов (xset -q):
|
|
/usr/openwin/lib/locale/iso_8859_5/X11/fonts/75dpi/
/usr/openwin/lib/locale/iso_8859_5/X11/fonts/Type1/
/usr/openwin/lib/locale/iso_8859_5/X11/fonts/TrueType/
/usr/openwin/lib/X11/fonts/F3/
/usr/openwin/lib/X11/fonts/F3bitmaps/
/usr/openwin/lib/X11/fonts/Type1/
/usr/openwin/lib/X11/fonts/Speedo/
/usr/openwin/lib/X11/fonts/misc/
/usr/openwin/lib/X11/fonts/75dpi/
/usr/openwin/lib/X11/fonts/100dpi/
|
первоначальный порядок поиска шрифтов будет следующим:
|
|
/usr/openwin/lib/X11/fonts/Type1
/usr/openwin/lib/X11/fonts/F3bitmaps
/usr/openwin/lib/X11/fonts/F3
/usr/openwin/lib/X11/fonts/Type3
/usr/openwin/lib/locale/iso_8859_5/X11/fonts/Type1
/usr/openwin/lib/locale/iso_8859_5/X11/fonts/TrueType
|
Затем, когда информация о шрифтах будет кеширована, порядок нахождения
шрифтов в кеше может не совпадать с первоначальным порядком их
занесения в кеш.
|
|
|