![Exemplo de "babel-\[email protegido]", ou seja, "babel-*.cfg"? Conteúdo típico? Onde devo armazenar "babel-latex.cfg" para que "kpse Which" possa encontrá-lo?](https://rvso.com/image/399814/Exemplo%20de%20%22babel-%5C%5Bemail%20protegido%5D%22%2C%20ou%20seja%2C%20%22babel-*.cfg%22%3F%20Conte%C3%BAdo%20t%C3%ADpico%3F%20Onde%20devo%20armazenar%20%22babel-latex.cfg%22%20para%20que%20%22kpse%20Which%22%20possa%20encontr%C3%A1-lo%3F.png)
Um e-TeX gerado com o compilador WEB/TeX Pascal para WebAssembly de Jim Fowler web2jsdeveria despejar um formato LaTeX latex.ltx
e tropeçar no babel-latex.cfg
, vejaInstruções do ShreevatsaR para fazer com que um formato LaTeX funcione com web2js (com babe-latex.cfg vazio falso.
Curiosamente, o comando etex -ini *latex.ltx /dump
não causa este problema. Ele carrega switch.def
depois hyphen.cfg
. Por que não há problemas aqui?
O manual da Babel diz:
Agora, os ganchos estão definidos. Por questões de eficiência, eles são tratados aqui de forma especial. Além do luatex, são levados em consideração arquivos de configuração específicos de formato.
A coisa toda acontece hyphen.cfg
na linha 121 \def\bbl@hook@everylanguage#1{}
, veja texdoc babel
a página 134.
Dica de Javier Bezos: Problema com \ifeof primitivo
Quero provar a \ifeof
suposição do problema de Javier Bezos equipando-o babel-latex.cfg
com uma mensagem de erro. Isso leva à questão de onde esse arquivo deve ser armazenado.
Eu armazenei babel-latex.cfg
no mesmo diretório que o hyphen.cfg
. kpsewhich
encontrará o último, mas não babel-latex.cfg
.
✔Como pode kpsewhich
ser ensinado a encontrar um babel-latex.cfg
?
❓ Alguém pode dar um exemplo babel-*.cfg
?
Responder1
Trecho da documentação para controle kpsewhich
:
3.4.6 Integrando macros locais e pessoais
Isto já foi mencionado implicitamente na seção 2.3: TEXMFLOCAL (por padrão, /usr/local/texlive/texmf-local ou %SystemDrive%\texlive\texmf-local no Windows) é destinado a fontes locais e macros de todo o sistema; e TEXMFHOME (por padrão, $HOME/texmfor%USERPROFILE%\texmf), é para fontes e macros pessoais. Esses diretórios destinam-se a permanecer de lançamento em lançamento e ter seu conteúdo visto automaticamente por um novo lançamento do TEX Live. Portanto, é melhor evitar alterar a definição de TEXMFLOCAL para ficar muito longe do diretório principal do TEX Live, ou você precisará alterar manualmente versões futuras. Para ambas as árvores, os arquivos devem ser colocados em sua estrutura de diretório TEX adequada(TDS)subdiretórios; verhttp://tug.org/tdsorconsulte texmf-dist/web2c/texmf.cnf. Por exemplo, um arquivo ou pacote de classe LATEX deve ser colocado em TEXMFLOCAL/tex/latexouTEXMFHOME/tex/latex, ou em um subdiretório dele. TEXMFLOCAL requer um banco de dados de nomes de arquivos atualizado ou os arquivos não serão encontrados. Você pode atualizá-lo com o comandomktexlsror
use o'Reiniciar banco de dados de arquivos'botão na guia de configuração da GUI do TEXLive Manager.
(texlive-pt.pdf
ou C:\>texdoc texlive
)
Resultado:
C:\>kpsewhich -all babel-latex.cfg
c:/texlive/texmf-local/tex/latex/local/babel-latex.cfg
Graças ao palpite de Javier Bezos, \ifeof
sem web2js babel-language.cfg
é simplesmente ignorado. Para provar esse comportamento, criei um buggy babel-latex.cfg
para testar se ele é solicitado.
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}.
Conclusão:
web2js
's \openin
ou \ifeof
não funcionam da mesma maneira que as primitivas padrão
De acordo com osegunda dica de Javier Bezosprovavelmente é mais um \openin
problema de arquivos inexistentes e falhas de acompanhamento.