![Пример "babel-\[email protected]", т.е. "babel-*.cfg"? Типичное содержимое? Где мне хранить "babel-latex.cfg", чтобы "kpsewhich" мог его найти?](https://rvso.com/image/399814/%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80%20%22babel-%5C%5Bemail%20protected%5D%22%2C%20%D1%82.%D0%B5.%20%22babel-*.cfg%22%3F%20%D0%A2%D0%B8%D0%BF%D0%B8%D1%87%D0%BD%D0%BE%D0%B5%20%D1%81%D0%BE%D0%B4%D0%B5%D1%80%D0%B6%D0%B8%D0%BC%D0%BE%D0%B5%3F%20%D0%93%D0%B4%D0%B5%20%D0%BC%D0%BD%D0%B5%20%D1%85%D1%80%D0%B0%D0%BD%D0%B8%D1%82%D1%8C%20%22babel-latex.cfg%22%2C%20%D1%87%D1%82%D0%BE%D0%B1%D1%8B%20%22kpsewhich%22%20%D0%BC%D0%BE%D0%B3%20%D0%B5%D0%B3%D0%BE%20%D0%BD%D0%B0%D0%B9%D1%82%D0%B8%3F.png)
e-TeX, созданный с помощью компилятора Джима Фаулера WEB/TeX Pascal to WebAssembly web2jsдолжен выгрузить формат LaTeX из latex.ltx
и спотыкается о babel-latex.cfg
, см.Инструкции ShreevatsaR по получению формата LaTeX, работающего с web2js (с поддельным пустым babe-latex.cfg).
Интересно, что команда etex -ini *latex.ltx /dump
не вызывает этой проблемы. Она загружается switch.def
после hyphen.cfg
. Почему здесь нет проблем?
В руководстве Babel говорится:
Теперь определены хуки. Из соображений эффективности они здесь рассматриваются особым образом. Помимо luatex, учитываются файлы конфигурации, специфичные для формата.
Все это происходит внутри, hyphen.cfg
в строке 121 \def\bbl@hook@everylanguage#1{}
, см. texdoc babel
страницу 134.
Подсказка от Хавьера Безоса: Проблема с примитивом \ifeof
Я хочу доказать \ifeof
догадку Хавьера Безоса о -проблеме, снабдив babel-latex.cfg
сообщением об ошибке. Это приводит к вопросу, где этот файл вообще должен храниться.
Я сохранил babel-latex.cfg
в том же каталоге, что и hyphen.cfg
. kpsewhich
найдет последний, но не babel-latex.cfg
.
✔Как можно kpsewhich
научить находить babel-latex.cfg
?
❓ Может ли кто-нибудь привести пример babel-*.cfg
?
решение1
Выдержка из документации для контроля kpsewhich
:
3.4.6 Интеграция локальных и персональных макросов
Это уже упоминалось неявно в разделе 2.3: TEXMFLOCAL (по умолчанию /usr/local/texlive/texmf-local или %SystemDrive%\texlive\texmf-local в Windows) предназначен для общесистемных локальных шрифтов и макросов; а TEXMFHOME (по умолчанию $HOME/texmfor%USERPROFILE%\texmf) — для персональных шрифтов и макросов. Эти каталоги должны оставаться от выпуска к выпуску, и их содержимое будет автоматически видно новому выпуску TEX Live. Поэтому лучше воздержаться от изменения определения TEXMFLOCAL так, чтобы оно было слишком далеко от основного каталога TEX Live, иначе вам придется вручную изменять будущие выпуски. Для обоих деревьев файлы должны быть размещены в их надлежащей структуре каталогов TEX(ТДС)подкаталоги; см.http://tug.org/tdsorобратитесь к texmf-dist/web2c/texmf.cnf. Например, файл класса LATEX или пакет должен быть помещен в TEXMFLOCAL/tex/latex или TEXMFHOME/tex/latex или в его подкаталог. TEXMFLOCAL требует актуальной базы данных имен файлов, иначе файлы не будут найдены. Вы можете обновить ее с помощью командыmktexlsror
использовать«Переинициализация базы данных файлов»кнопку на вкладке конфигурации графического интерфейса TEXLive Manager.
(texlive-en.pdf
или C:\>texdoc texlive
)
Результат:
C:\>kpsewhich -all babel-latex.cfg
c:/texlive/texmf-local/tex/latex/local/babel-latex.cfg
Благодаря Хавьеру Безосу \ifeof
предположение без web2js babel-language.cfg
просто пропускается. Чтобы доказать это поведение, я создал багги, babel-latex.cfg
чтобы проверить, запрашивается ли он вообще.
c:\texlive>etex -ini *latex.ltx /dump
This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/W32TeX) (INITEX)
restricted \write18 enabled.
entering extended mode
...
===========================================
Local configuration file hyphen.cfg used
===========================================
(c:/texlive/2019/texmf-dist/tex/generic/babel/hyphen.cfg
(c:/texlive/texmf-local/tex/latex/local/babel-latex.cfg
! LaTeX Error: Missing \begin{document}.
Заключение:
web2js
's \openin
или \ifeof
не работают так же, как стандартные примитивы.
Согласновторой намек от Хавьера Безосаскорее всего, \openin
проблема в несуществующих файлах и последующих ошибках.