当我使用以下脚本运行 latexmk 时,我的索引 .ist 样式文件被忽略...
#!/bin/bash
export TSBIN="$HOME/Library/TeXShop/bin/tslatexmk"
export LTMKBIN="$HOME/Library/TeXShop/bin/tslatexmk"
export LTMKEDIT="$HOME/Library/TeXShop/bin"
# make sure latexmkrcedit exists in bin
if [ ! -e "${LTMKEDIT}/latexmkrcedit" ] ; then
cp "${TSBIN}/latexmkrcDONTedit" "${LTMKEDIT}/latexmkrcedit"
fi
# Use local rc file platexmkrc if it exists. p = project
export localrc=""
if [ -e ./platexmkrc ] ; then
export localrc="-r ./platexmkrc"
fi
"${LTMKBIN}"/latexmk -pdf -r "${LTMKEDIT}/latexmkrcedit" -r "${TSBIN}/pdflatexmkrc" ${localrc} "$1"
platexmkrc
...其中源目录中引用的文件是:
add_cus_dep('idx', 'ind', 0, 'makeidx2ind');
sub makidx2ind {
system("makeindex —s '$_[0]'.ist -o '$_[0]'.ind '$_[0]'.idx");
};
latexmkrcedit
脚本中引用的文件latexmk
主要由注释的示例配置和未注释的add_cus_dep
部分组成,用于处理词汇表和非默认名称索引,但不其他 提及makeindex
.
源文件styledindex.tex
是:
\documentclass{book}
\usepackage{makeidx}
\makeindex
\begin{document}
Some text here.
\index{apple}\index{apricot}
\index{banana}\index{blackberry}\index{blueberry}
\index{currant}\index{cherry}
\printindex
\end{document}
索引样式文件styledindex.ist
为:
headings_flag 1
heading_prefix "{\\medskip\\hfill\\large\\textsf{\\textbf{"
heading_suffix "}}\\hfill}\\medskip\\nopagebreak\n"
尽管索引已经制作并印刷,但不是索引中包含每个字母组的 A、B、C 字母头。
另一方面,如果我运行latex
,那么
makeindex -s styledindex.ist styledindex
最后latex
,又是预期的造型是应用于索引。
为什么 latexmk 配置在这里不起作用?
latexmk 脚本实际上是在 TeXShop 内部运行的“引擎”。但是,.ist
如果我直接latexmk
从源目录中运行该脚本(不直接使用 TeXShop),则会出现相同的结果(忽略文件)。