
Я пытаюсь изменить кодировку autoinst. В идеале я хотел бы пропатчить ее с помощью аргумента командной строки или чего-то подобного, чтобы процесс можно было легко воспроизвести. Если это неразумно, я хотел бы использовать отдельную кодировку.
Сначала я попытался изменить исходный файл, что сработало, но сломается с обновлениями. Затем я попытался создать дубликат с суффиксом имени файла в том же каталоге, в надежде, что это переопределит значение по умолчанию, но это не дало никакого эффекта.
После создания файлов я запустил:
mktexlsr
fmtutil --sys --all
updmap --sys
в результате чего получается структура:
/opt/texlive/2017/texmf-dist/fonts/enc/dvips/fontools:
fontools_ly1.enc
fontools_ly1_CUSTOM.enc
fontools_ot1.enc
fontools_oml_CUSTOM.enc
fontools_t1.enc
fontools_ts1.enc
Следующей попыткой было создание кодировки, не предусмотренной autoinst, например, с первой строкой вроде:
/otftotfmOMLEncoding [
и затем добавляю -encoding="OML,TS1,OT1,T1,LY1"
в autoinst
командную строку. Это дает ошибку:
otftotfm: encoding 'oml' not found
Какие у меня есть варианты?
решение1
Из autoinst
страницы руководства:
-encoding=encoding[,encoding]
Сгенерировать указанную кодировку(и) для текстовых шрифтов. Значение по умолчанию — «OT1,T1,LY1». Для каждой кодировки файл
<encoding>.enc
(все в нижнем регистре!) должен быть где-то, гдеotftotfm
его можно найти. Подходящие файлы кодировок для OT1, T1/TS1 и LY1 поставляются сautoinst
. (Эти файлы называютсяfontools_ot1.enc
etc., чтобы избежать конфликтов имен с другими пакетами;fontools_
префикс « » можно опустить.)
Поэтому, если вы запросите -encoding="OML,TS1,OT1,T1,LY1"
, то первая кодировка autoinst
будет искать файл с именем oml.enc
или fontools_oml.enc
. fontools_oml_CUSTOM.enc
не является подходящим именем.
Однако, oml.enc
это, безусловно, не подходит, поскольку этот файл будет предполагать, что файл содержит официальную кодировку OML. fontools_oml.enc
будет работать, но вы должны использовать это только в том случае, если ваша кодировка действительно соответствует кодировке OML.
Однако неясно, действительно ли что-то из этого полезно, поскольку неясно, что вы пытаетесь сделать. Некоторое объяснение того, почему вы хотите предоставить здесь файл пользовательской кодировки, облегчило бы людям предоставление полезных советов.
В любом случае НЕ следует изменять или добавлять файлы в основное дерево TEXMF.Это дерево предназначено для использования вашим дистрибутивом TeX и управляется менеджером пакетов. (Или
tlmgr
менеджером пакетов вашего дистрибутива Linux.)
Вместо этого вам следует установить измененные копии файлов под другими именами и дополнительные файлы либо в вашем личном дереве TEXMF, либо в вашем локальном дереве.
kpsewhich -var TEXMFLOCAL
расскажет вам местонахождение местного дерева и
kpsewhich -var TEXMFHOME
вашего личного дерева.