fmt 및 명령줄 명령(예: mylatexformat 사용)

fmt 및 명령줄 명령(예: mylatexformat 사용)

편집 속도를 높이고 싶어서 기본 문서를 두 개의 파일로 분할했습니다.

MWE

프리앰블.tex

\documentclass{article}

\csname endofdump\endcsname

main.tex

\begin{document}

\ifdefined\test
    :)
\else
    :/
\fi

\end{document}

이것은 작동합니다:

#!/bin/bash

pdftex -ini -jobname="preamble" "&pdflatex" mylatexformat.ltx "preamble.tex"
pdflatex -fmt preamble "main.tex"

문제

하지만 행복한 미소를 얻기 위해 명령줄에서 tex로 데이터를 전달하고 싶습니다.

#!/bin/bash
pdftex -ini -jobname="preamble" "&pdflatex" mylatexformat.ltx "preamble.tex"
pdflatex -fmt preamble "\def\test{1}\input{main}"

그리고 나는 무엇을 해야 할지 모르는 대화형 모드를 우연히 발견했습니다. 사용하여-no-parse-first-line도움이 되지도 않습니다.

textput.log

This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2015/dev/Debian) (preloaded format=preamble 2014.12.16)  16 DEC 2014 14:17
entering extended mode
 restricted \write18 enabled.
**\def\test{1}\input{main}

==============================================================================
JOB NAME         : "texput"
CUSTOMISED FORMAT: "preamble"
PRELOADED FILES:
 article.cls    2007/10/19 v1.4h Standard LaTeX document class
  size10.clo    2007/10/19 v1.4h Standard LaTeX file (size option)

==============================================================================
*
! Emergency stop.
<*> \def\test{1}\input{main}

End of file on the terminal!


Here is how much of TeX's memory you used:
 3 strings out of 494701
 113 string characters out of 6174765
 48268 words of memory out of 5000000
 3561 multiletter control sequences out of 15000+600000
 7639 words of font info for 26 fonts, out of 8000000 for 9000
 14 hyphenation exceptions out of 8191
 8i,0n,22p,42b,30s stack positions out of 5000i,500n,10000p,200000b,80000s
!  ==> Fatal error occurred, no output PDF file produced!

답변1

나는 이것에 대한 전문가는 아니지만 입력 파일을 재귀적으로 검색하지 않으므로 형식의 끝을 표시하는 데 필요한 mylatexformat리터럴 \begin{document}in 을 결코 만나지 않을 것 같습니다.main.tex선적 서류 비치. 적어도 MWE의 경우 명령줄에서 실행하면 작동합니다 \endofdump(두 가지를 피하기 위해 형식 끝을 표시하는 대안 ).\begin{document}

pdflatex -fmt preamble "\endofdump\def\test{1}\input{main}"

관련 정보