Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.
- 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
- 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
- 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
- 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
- 최소 예제는 "Minimal working example"을 읽어 보세요.
- 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
- 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
- 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
- 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
- MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
- 사용하는 편집기는 CKeditor입니다.
- 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
- 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
- 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.
lualatex command line parameter
2017.02.16 12:14
template file를 lualatex로 컴파일할때 외부의 file을 template file에 \input으로 command line에서 넣고 싶습니다.
pdflatex '\def\filea{test}\input template' 식으로 하면 test.tex를 \input으로 하는 template화일이 compile되는것 같은데, lualatex에서는 어떻게 해야 하는지요?
읽어주셔서 감사합니다.
댓글 3
-
yihoze
2017.02.16 13:14
-
InYongin
2017.02.16 13:47
예. 감사합니다. 제가 하고 싶었던것이 님이 말씀하신 2번째 인것 같습니다. lualatex에서도 pdflatex의 command상 인자들이 작동한다고 하시니 다시 한번 해 보겠습니다.
부연하면, 이미 한권의 책이 되기는 했지만, 그 내용이 때때로 바뀌는 상황이 발생하고있어서요. 이러한 상황에서 일부분이 바뀐 부분 때문에 전체를 다시 compile를 하는것은 번거롭다는 생각을 했습니다.
그래서 sectio별로 전부 화일을 나누었고, 바뀐, 필요한 section만 input으로 처리하고 컴파일 하고 싶었습니다. 물론 당연히 template화일에서 일일히 file명을 input으로 주면 되겠지만, batch file를 통해서 한번에 처리하고 이렇게 만들어진 pdf 화일을 png화일로 변환하는것 까지 같이 batch 화일로 만들수 있을까 하는 생각으로 찾아보고 있었던 것입니다.
답글에 감사합니다.
좀더 해보겠습니다.
-
yihoze
2017.02.16 14:24
찾기-바꾸기 방법을 쓰되 \includeonly를 이용하시는 것이 편하지 않을까 싶습니다.
\includeonly{...}
\begin{document}
\include{AAA}
\include{BBB}
\include{CCC}
\end{document}
#>xelatex \newif\ifxxx\xxxtrue\input foo.tex
이런 것을 말씀하시는 것 같은데요. pdflatex이든 lualatex이든 명령행에서 컴파일 옵션을 주는 방법은 동일합니다. 그런데 저런 방법의 응용이 가능한 범위는 상당히 국한되어 있습니다. 무언가를 텍 파일 밖에서 지정하여 삽입하고자 할 때 무엇을 어디에 삽입할지 먼저 정의해 봐야 합니다.
여기
\documentclass{...}
또는 여기
\begin{document}
또는 여기
\end{document}
\documentclass 앞에 선언된 클래스에서 사용되는 명령들이 먼저 온다면 오류가 발생할 수밖에 없습니다. 다른 곳에 집어넣는 것은 더 어렵습니다. 제가 해본 방법들은 이렇습니다.
1) 옵션에 따라 텍 파일을 달리 만드는 배치 파일을 만든다.
2) 텍 파일에 특정 문자열을 포함시키고, 그것을 옵션에 따라 다른 문자열로(\input{mytemplatex} 같은) 바꾸는 배치를 만든다.
3) 텍 파일에서 bool 변수의 값을 따라 다른 파일을 부르는 조건문을 만들어 두고, 그 bool 변수를 명령행에서 선언한다. 바로 이 댓글의 처음에 제시된 방법입니다.
그런데 사실 이런 번잡한 방법을 써야 할 이유가 있을까요? 어떤 스타일이 달라져야 한다면 최총 산출물의 이름도 달라져야 할 테니, 메인 파일들을 따로 만들어두면 되지 않나요?