문서 내용을 제어하는 ​​사용자 인터페이스 만들기

문서 내용을 제어하는 ​​사용자 인터페이스 만들기

나는 누군가(예를 들어 LaTeX에 능숙하지 않은 사람)가 특정 문서의 내용을 제어할 수 있도록 허용하는 가장 쉬운 방법을 찾고 있습니다. 더 많은 맥락을 제공하기 위해 약 30개의 "작은" 문서 세트의 다양한 조합으로 거의 독점적으로 구성된 동일한 형식의 "기본" 문서 모음을 만들려고 합니다(각각은 기본적으로 문서 내부의 섹션 또는 하위 섹션입니다). "주요" 문서). 중요한 점은 "작은" 문서는 종종 사소한 업데이트를 거치므로 별도의 파일에서 "기본" 문서로 호출된다는 것입니다(작은 변경이 발생할 때 많은 "기본" 문서를 직접 변경하지 않아도 됨).

지금까지 내가 도달한 것은 "기본" 문서에 나타나는 "더 작은" 문서를 제어하는 ​​서문의 토글을 포함하는 일반적인 "기본" 문서입니다. 이 시점에서는 모든 것이 잘 작동하고 있습니다. "기본" 문서를 만드는 사람이 " 기본" 문서에서 특정 "작은" 문서를 원하지 않는 경우 서문 앞에 " %" 에 주석을 달면 됩니다. \toggletrue만들기(예를 들어 아래의 "TheFirstDocument"는 "기본" 문서에 나타나지 않습니다). 또한 아래에 작성한 내용은 물론 컴파일(파일 및 패키지 누락)을 위한 것이 아니라 일반적인 예를 보여주기 위한 것입니다.

내 질문은 "주" 문서를 만드는 사람이 포함하고 싶은 "작은" 문서의 상자를 체크 표시할 수 있는 매우 친숙한 사용자 인터페이스를 만드는 방법이 있느냐는 것입니다. LaTeX 자체에서는 이것이 가능하지 않은 경우 여기에서 이를 달성하기 위해 가장 쉬운 방법을 제안하는 사람이 있습니까?

\documentclass{article}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% Select Desired Documents %%%

\newtoggle{TheFirstDocument}
%\toggletrue{TheFirstDocument}

\newtoggle{TheSecondDocument}
\toggletrue{TheSecondDocument}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}

\iftoggle{TheFirstDocument}
{ExecuteMetaData[TheFirstDocument.tex]{tag}
}
{%nothing
}

\iftoggle{TheSecondDocument}
{ExecuteMetaData[TheSecondDocument.tex]{tag}
}
{%nothing
}

\end{document}

답변1

답변의 LaTeX 절반:

Main.tex먼저 세 가지 파일로 나눌 수 있습니다 .

InitMain.tex\documentcalss, 두 번째 파일의 일부 필수 패키지 및 \newtoggle필요한 모든 항목 이 포함되어 있습니다 .

\documentclass{article}
\usepackage{etoolbox}

\newtoggle{TheFirstDocument}
\newtoggle{TheSecondDocument}

두 번째 파일 ( Main_A.tex) \input에는 필요한 InitMain.tex모든 가 포함되어 있으며 마지막 으로\toggletrue\inputMain.tex

\input{InitMain}
\toggletrue{TheFirstDocument}
%\toggletrue{TheSecondDocument}
\input{Main}

그리고 필요한 Main.tex추가 항목과 기타 항목을 포함할 수 있습니다 . \usepackage물론 여기에 작은 문서도 조건부로 입력합니다.

% additional preamble stuff

\begin{document}

\iftoggle{TheFirstDocument}
{\input{TheFirstDocument.tex}
}
{%nothing
}

\iftoggle{TheSecondDocument}
{\input{TheSecondDocument.tex}
}
{%nothing
}

\end{document}

Main_A.tex그런 다음 최종 문서를 얻으려면 컴파일만 하면 됩니다 .

이를 통해 사용자는 작은 파일만 편집하면 되며 다른 설정으로 파일 등을 가질 Main_A.tex수 있습니다 .Main_B.texMain_C.tex

대답의 나머지 절반은 운영 체제, 사용 가능한 스크립팅 언어, 기술 등에 따라 다릅니다. 을 읽고 Main_A.tex, 체크박스를 초기화하고, 마지막으로 기호가 추가되거나 제거된 새 버전을 작성하는 스크립트를 작성할 수 있습니다 %. 예를 들어, Windows에서는 jscript를 사용하여 표시된 것과 같은 GUI를 구축할 수 있습니다. 컴퓨터에 LaTeX가 설치되어 있는 경우 대화 상자에서 직접 최종 문서를 생성하기 위해 latexmk(이것을 사용한 적이 없음)를 호출하는 버튼을 추가할 수도 있습니다.

관련 정보