이것은 여러 파일로 이루어진 큰 규모의 프로젝트를 만들 적에, 로그 파일로부터 에러 위치를 검출하여 어떤 조작을 가하거나 하려 할 때, 말하자면 로그 분석 스크립트를 만들 때 도움이 되는 옵션입니다. 에디터를 이용하여 문서를 작성하는 일반 사용자에게는 큰 영향을 끼치지 않는 걸로 봐도 되겠지요. 물론 에디터의 로그 분석기가 이 옵션을 요구할 수는 있습니다.
말씀하시는 바와 같이 arara에서 latexmk를 지시할 수는 있습니다. 그렇지만 제 생각에는 latexmk가 일종의 배치 처리기이고 arara 역시 그러하기 때문에 arara를 통하여 latexmk를 부르는 것보다는 다음과 같이 workflow를 제어하는 것이 더 낫지 않겠는가 생각합니다.
% arara: xelatex: { shell: yes, synctex: yes }
% arara: xelatex: { shell: yes, synctex: yes }
% arara: bibtex
% arara: makeindex
% arara: makeglossaries
% arara: xelatex: { shell: yes, synctex: yes }
% arara: lmkclean
아시겠지만
%! arara: makeindex
이렇게 하면 makeindex가 (일시적으로) 실행되지 않게 할 수 있습니다. 이를 이용하여 작업 중 필요한 대로 이용할 수 있습니다.
1. synctex 옵션에 관하여
이것은 xelatexmk rule의 버그입니다. 우습지만 synctex: no로 하면 아마 원하시는 대로.... 될 겁니다.
/usr/local/texlive/2015/texmf-dist/scripts/arara/rules/xelatexmk.yaml 파일을 열어서 --synctex=0와 --synctex=1의 순서를 바꾸어 저장하십시오.
texmf-dist 아래 파일을 수정하는 것이 마음에 걸리신다면, synctex 디렉티브를 쓰지 말고,
이렇게 해도 될 것으로 짐작합니다.
2. file-line-error style에 대하여
이것은 여러 파일로 이루어진 큰 규모의 프로젝트를 만들 적에, 로그 파일로부터 에러 위치를 검출하여 어떤 조작을 가하거나 하려 할 때, 말하자면 로그 분석 스크립트를 만들 때 도움이 되는 옵션입니다. 에디터를 이용하여 문서를 작성하는 일반 사용자에게는 큰 영향을 끼치지 않는 걸로 봐도 되겠지요. 물론 에디터의 로그 분석기가 이 옵션을 요구할 수는 있습니다.
아무튼 이 옵션을 추가하고 싶으시다면, 앞서 보인 options 디렉티브를 이용하십시오.
3. latexmk와 arara
말씀하시는 바와 같이 arara에서 latexmk를 지시할 수는 있습니다. 그렇지만 제 생각에는 latexmk가 일종의 배치 처리기이고 arara 역시 그러하기 때문에 arara를 통하여 latexmk를 부르는 것보다는 다음과 같이 workflow를 제어하는 것이 더 낫지 않겠는가 생각합니다.
아시겠지만
이렇게 하면 makeindex가 (일시적으로) 실행되지 않게 할 수 있습니다. 이를 이용하여 작업 중 필요한 대로 이용할 수 있습니다.
즉, 일종의 "배치파일"을 소스 안에서 작성하는 것처럼 쓰는 것입니다.