Difference between r1.5 and the current
@@ -1,45 +1,76 @@
일반적으로 `tex` 파일을 최종적으로 프린트하기 위해서 몇 번에 걸친 명령을 실행하여야 한다. {{{
pdflatex foo
makeindex foo
bibtex foo
pdflatex foo
}}}
이 과정을 자동화하는 방법에 대하여 소개한다.
== LaTeXMk ==
* 대부분의 workflow가 자동화된다. {{{
# latexmk foo
}}}
* 실행 엔진은 다음과 같이 지정한다. {{{
# latexmk -xelatex foo
}}}
* 옵션을 추가할 수 있다. {{{
# latexmk -xelatex -latexoption="-synctex=1" foo
}}}
* bibtex과 biber는 스크립트가 자동으로 선택한다. 자동으로 선택이 되지 않을 때는 latexmkrc 파일을 이용하여 백엔드 프로그램을 강제할 수 있다.
* komkindex로 makeindex를 대체하려면 작업 폴더에 latexmkrc 파일을 만들고 다음 한 줄을 써넣는다. {{{
$makeindex = 'komkindex -s kotex';
}}}
#title LaTeX 작업 흐름 자동화
#keywords arara,bibtex,latexmk,makeindex,workflow,자동화,texify,latex
== 개요 ==
* 일반적으로 `tex` 파일을 인쇄에 적합한 최종 출력물로 만들기 위해서는 상호 참조, 참고문헌, 찾아보기 생성 등을 위해 다음과 같이 여러 번의 명령을 실행하여야 한다. {{{#!bash
# pdflatex foo
# makeindex foo
# bibtex foo
# pdflatex foo}}}
* 이러한 과정을 자동화하기 위해 개발된 방법이 몇 가지 있는데, 이들은 대체로 편리한 텍 작업 환경을 지원하는 편집기나 통합 개별 환경 내부에서 사용된다.
== LaTeX Workflow 자동화 도구 ==
=== LaTeXMk ===
* Perl로 작성된 도구로 대부분의 workflow가 자동화된다.{{{#!bash
# latexmk foo}}}
* (pdf)latex 실행 루트는 다음과 같이 지정한다.
* pdflatex (default) {{{#!sh
# latexmk -pdf foo}}} (`-pdf` 옵션은 따로 지정하지 않아도 된다.)
* latex => dvi {{{#!sh
# latexmk -dvi foo}}}
* latex => ps {{{#!sh
# latexmk -ps foo}}}
* latex+dvips+ps2pdf {{{#!sh
# latexmk -pdfps foo }}}
* latex+dvipdfmx {{{#!sh
# latexmk -pdfdvi foo }}}
* 실행 엔진은 다음과 같이 지정한다.
* xelatex {{{#!bash
# latexmk -xelatex foo}}}
* lualatex {{{#!sh
# latexmk -lualatex foo}}}
* 옵션을 추가할 수 있다.{{{#!bash
# latexmk -xelatex -latexoption="-synctex=1" foo}}}
* 참고문헌 목록 생성을 위한 백엔드인 bibtex과 biber는 스크립트가 자동으로 선택한다. 자동으로 선택이 되지 않을 때는 latexmkrc 파일을 이용하여 백엔드 프로그램을 강제할 수 있다.
* komkindex로 makeindex를 대체하려면 작업 폴더에 latexmkrc 파일을 만들고 다음 한 줄을 써넣는다.{{{#!bash
$makeindex = 'komkindex -s kotex';}}}
* 사용자 설정 가능한 RC 파일은 {{{$HOME/.latexmkrc}}} 또는 작업 폴더의 {{{latexmkrc}}}이다. * TeXworks에 xelatexmk 추가 (Windows라면 프로그램 위치를 {{{C:\usr\texlive\2013\bin\win32\latexmk.exe}}}로 한다.)
* TeXworks에 xelatexmk 추가 (Windows라면 프로그램 위치를 {{{C:\usr\texlive\2014\bin\win32\latexmk.exe}}}로 한다.)
* attachment:xelatexmkadd.png * 설명서{{{#!bash
# texdoc latexmk}}}
== texify ==
* MiKTeX에 있는 latex workflow 자동화 툴.
* arara 지시자를 파일에 다음과 같이 써넣고, {{{#!tex
=== [arara] ===
* 비교적 최근에 개발된 Java로 개발된 LaTeX workflow 자동화 도구
* [arara] 지시자를 파일에 다음과 같이 써넣고, {{{
% arara: pdflatex: {synctex: yes}% arara: makeindex: {style: foo}
% arara: pdflatex: {synctex: yes}
}}}
% arara: pdflatex: {synctex: yes}}}}
* arara로 이 파일을 컴파일하면, 위의 지시자에 지정된 순서대로 실행된다. * 설명서{{{#!bash
# texdoc arara}}}
=== SpiX ===
* shell script와 LaTeX 문서의 통합
* [https://framagit.org/spalax/spix | 홈페이지]
* [http://www.ktug.org/xe/index.php?mid=KTUG_open_board&document_srl=245475 |간략한 소개]
* 장점: shell script를 그대로 써넣는 것에 가깝기 때문에 원하는 거의 모든 동작을 TeX 문서 자체에 지시할 수 있음.
* 단점: Windows에서 안 된다.
{{{
%$ xelatex $texname
}}}
=== LLMK ===
* Light LaTeX Make
* [https://github.com/wtsnjp/llmk | github 저장소]
* `texdoc llmk`
* TOML이라는 간단한 마크업 언어를 이용하여 Workflow를 지시한다.
{{{
% +++
% latex = "xelatex"
% +++
}}}
=== texify ===
* MiKTeX에 포함된 LaTeX workflow 자동화 도구
개요 ¶
- 일반적으로
tex
파일을 인쇄에 적합한 최종 출력물로 만들기 위해서는 상호 참조, 참고문헌, 찾아보기 생성 등을 위해 다음과 같이 여러 번의 명령을 실행하여야 한다.# pdflatex foo # makeindex foo # bibtex foo # pdflatex foo
- 이러한 과정을 자동화하기 위해 개발된 방법이 몇 가지 있는데, 이들은 대체로 편리한 텍 작업 환경을 지원하는 편집기나 통합 개별 환경 내부에서 사용된다.
LaTeXMk ¶
- Perl로 작성된 도구로 대부분의 workflow가 자동화된다.
# latexmk foo
- (pdf)latex 실행 루트는 다음과 같이 지정한다.
- pdflatex (default)
(# latexmk -pdf foo
-pdf
옵션은 따로 지정하지 않아도 된다.) - latex => dvi
# latexmk -dvi foo
- latex => ps
# latexmk -ps foo
- latex+dvips+ps2pdf
# latexmk -pdfps foo
- latex+dvipdfmx
# latexmk -pdfdvi foo
- pdflatex (default)
- 실행 엔진은 다음과 같이 지정한다.
- xelatex
# latexmk -xelatex foo
- lualatex
# latexmk -lualatex foo
- xelatex
- 옵션을 추가할 수 있다.
# latexmk -xelatex -latexoption="-synctex=1" foo
- 참고문헌 목록 생성을 위한 백엔드인 bibtex과 biber는 스크립트가 자동으로 선택한다. 자동으로 선택이 되지 않을 때는 latexmkrc 파일을 이용하여 백엔드 프로그램을 강제할 수 있다.
- komkindex로 makeindex를 대체하려면 작업 폴더에 latexmkrc 파일을 만들고 다음 한 줄을 써넣는다.
$makeindex = 'komkindex -s kotex';
- 사용자 설정 가능한 RC 파일은
$HOME/.latexmkrc
또는 작업 폴더의latexmkrc
이다. - 그밖에 continuous preview, clean aux files 등등 여러 가지 기능을 가지고 있다.
- TeXworks에 xelatexmk 추가 (Windows라면 프로그램 위치를
C:\usr\texlive\2014\bin\win32\latexmk.exe
로 한다.)- [PNG image (109.44 KB)]
- 설명서
# texdoc latexmk
LLMK ¶
- Light LaTeX Make
- | github 저장소
texdoc llmk
- TOML이라는 간단한 마크업 언어를 이용하여 Workflow를 지시한다.
% +++ % latex = "xelatex" % +++