4

나는 \ latex에서 거대한 스크립트로 작업합니다.라텍스 용 단순 전처리 기 : 포함 된 파일인지 아니면 독립형 파일인지 여부를 감지하십시오.

라텍스로 세션을 해킹하는 것이 더 쉽기 때문에 각 챕터를 독립형으로 컴파일 할 수 있기를 원합니다.

한편, 지금까지 작성된 전체 스크립트를 포함하는 문서를 유지하고 싶습니다.

tex 파일을 독립 실행 형으로 작성하거나 포함시킬 수 있으므로 오버 헤드를 영구적으로 낭비하지 않으면 서이 두 문서를 유지 관리하는 방법을 알지 못합니다.

C와 유사한 #ifdef와 #ifdef- # else- #endif 문을 사용할 수있는 라텍스 - 프리 프로세서를 사용하는 것이 큰 도움이 될 것입니다. 이것은 글쓰기를 아주 쉽게 할 수 있습니다. 이런 것이 라텍스에 존재하는지 또는 어떻게 동등한 조치를 취할 수 있는지 알고 있습니까? Google은 이에 대한 만족스러운 답변을 제공하지 않았습니다.

편집 : 오해를 피하기 위해 몇 가지주의 사항 : 아주 간단한 내장 TEX- 전처리기를 알고 있지만 예상대로이 명령이 제대로 작동하지 않습니다. 그러므로 이것들에 대한 언급은 나를 도와주지 않을 것입니다. 내 스크립트에

장은이 (의사 코드) 같은 대조적으로

IF being_just_included defined 
    %No header here, and document has already begun 
ELSE 
\input{common_header.tex} %Header things all my documents use 
\begin{document} 
ENDIF 

%%% Lots of stuff 

IF being_just_included defined 
    %Nothing to do here 
ELSE 
    \end{document} 
END IF 

, 내 전체 스크립트 소스 파일 당신이 코드를 게시 할 수있는이

\input{common_header.tex} 
DEFINE being_just_included 
\begin{document} 
\input{preamble.tex} 
\input{first_chapter.tex} 
\input{second_chapter.tex} 
\input{third_chapter.tex} 
\end{document} 

과 같아야 보일 것이다 이런 식으로 뭔가를 수행합니까?

답변

2

이 작업을 수행하는 한 가지 방법은 standalone 패키지를 사용하는 것입니다.

TeX and Friends을 탐색하고 가입 할 수도 있습니다.

1

이 패키지와 포럼에 대한 힌트를 주셔서 감사합니다.

얼마 전 CPP와 비슷한 tex 전처리 기가 있다는 것을 알았습니다. 어쩌면 잘 설계되지는 않았을 지 모르지만 제 목적을 잘 충족시킵니다.

마법의 라인은 다음과 같습니다

\def\justbeingincluded{justbeingincluded} 

\ifx\justbeingincluded\undefined 

\fi 

는 각각의 소스 파일 내에서 appropiatly 사용할 수 있습니다.

+0

나는 그것이 효과가있을 것이라고 확신하지만 CSS 대신 웹 사이트에 어셈블러를 사용하는 것과 조금 비슷합니다 ... –

+0

이 마술 라인은 어디에서 사용됩니까? –

+0

패키지 매튜 사용 –

관련 문제