하위 파일의 매개변수화된 포함

하위 파일의 매개변수화된 포함

주로 쉬운 사용자 정의를 목적으로 LaTeX를 사용하여 이력서를 준비하고 있습니다. 특히 몇 가지 매개변수를 변경하여 동일한 입력 파일에서 다른 출력을 생성할 수 있기를 원합니다.

그러한 요구 사항 중 하나는 입력 매개변수("dev"/"training"/"generic") 중 하나에 따라 특정 텍스트 덩어리를 선택해야 한다는 것입니다. 별도의 .tex 파일("dev_summary.tex", "training_summary.tex" 등)에서 각 매개변수에 적합한 텍스트 덩어리를 \input매개변수에 따라 가질 수 있습니다. 나는 현재 이것을 다음과 같이 구현했습니다.

  \newcommand{\whoami}[1]{trainer#1}

그리고 나중에

 \input{\whoami{_summary.tex}}

이제 첫 번째 매개변수를 변경할 때마다 새 명령줄에서 "trainer" 문자열을 변경하기만 하면 됩니다. 그러나 이 파일을 편집하지 않은 상태로 유지하고 대신 이 변경 사항을 명령줄 인수로 전달할 수 있는 더 좋은 방법이 있습니까?

답변1

명령줄에서 이러한 항목을 설정하는 방법에는 여러 가지가 있습니다. 아마도 가장 간단한 것은 입력 내용을 약간 변경하여 대신 dev_summary.tex하위 디렉터리/폴더 등 을 갖게 하는 것입니다 dev.trainerdev/summary.tex

그런 다음 기본 파일에는 다음이 필요합니다.

\input{summary}

summary.tex입력 경로의 첫 번째 항목을 입력하므로 명령줄은 다음과 같습니다.

TEXINPUTS=dev: pdflatex mainfile

입력 dev/summary.tex하고

TEXINPUTS=trainer: pdflatex mainfile

입력할 것이다trainer/summary.tex

(이것은 유닉스와 유사한 명령줄을 가정하고 Windows에서는 환경 변수 설정을 별도의 명령으로 수행해야 할 수도 있습니다. 확실하지 않습니다)

관련 정보