latexmk는 포함된 파일을 무시합니다.

latexmk는 포함된 파일을 무시합니다.

명령의 파일이 포함된 TeX 파일이 있습니다 \embedfile{\jobname.org}. latexmk포함된 파일이 변경되면 실행을 중지하고 싶습니다 . 특정 파일을 무시 하는 공식 옵션은 없지만 latexmk특정 사용 사례에서는 이 옵션을 사용하는 것이 가능할 것 같습니다 $hash_calc_ignore_pattern.

내 에 다음 각 항목을 한 번에 하나씩 추가했습니다 ~/.latexmkrc.

$hash_calc_ignore_pattern{'pdf'} = '^\\embedfile{\\jobname.org}';
$hash_calc_ignore_pattern{'pdf'} = 'jobname.org';
$hash_calc_ignore_pattern{'pdf'} = '.*jobname.org.*';

.org그러나 파일 을 변경할 때마다 latexmk계속 실행됩니다. 이 기능을 작동시키는 방법에 대한 조언이 있는 사람이 있습니까?

답변1

귀하의 필요에 따라 두 가지 솔루션이 있습니다.

값을 설정하는 것은 파일 의 특정 줄을 무시하도록 $hash_calc_ignore_pattern{'pdf'}지시하기 때문에 원하는 것이 아닙니다 . 대신 다음과 같이 파일 의 모든 줄을 무시하도록 지시할 수 있습니다 .latexmk.pdflatexmk.org

$hash_calc_ignore_pattern{'org'} = '^';

.org이는 .dll 뿐만 아니라 확장자를 가진 모든 파일에 적용됩니다 \jobname.org.

대안은 삽입 된 pdflatex파일 사용에 대한 증상이 실행될 때마다 . latexmkrc 파일의 다음은 나에게 효과적이었습니다..flspdflatex

$pdflatex = "pdflatex %O %S && ".
"perl -i -p -e \"s[^INPUT (\./|)\"%R\"\\.org\\s*\$][];\" %Y%R.fls";

(복사 및 붙여넣기를 안전하게 하기 위해 정의를 두 줄로 나누었습니다. 시스템에 전달되는 명령줄에서 인용이 제대로 작동하는지 확인하는 UNIX 관련 마법이 있습니다.)

관련 정보