从命令行生成 PDF 不会插入参考文献

从命令行生成 PDF 不会插入参考文献

我正在尝试创建一个从命令行编译我的 latex 文档的函数。我的问题是第一次运行时引用从未显示出来,所以我通常最终会运行这个函数两次……除非我正在处理大型文档,否则这通常不是什么大问题。

有人知道为什么参考文献第一次可能不会显示出来吗?

我根据 TexMaker 的功能来设计我的功能:选项/配置 TexMaker/快速构建

PdfLaTeX + Bib(la)tex + PdfLaTeX (x2) + View Pdf

有什么想法吗?

generatePDF() {
GREEN='\033[1;32m'
NC='\033[0m' # No color                                                                                                

    echo -e "${GREEN}Running pdflatex ${NC}"
    pdflatex -synctex=1 -interaction=nonstopmode -enable-write18 -shell-escape $1.tex

    # TODO: needs more error testing for next commands...                                                              
    echo -e "${GREEN}Running bib(la)tex...${NC}"
    bibtex $1.aux

    echo -e "${GREEN}Running pdflatex again...${NC}"
    pdflatex -synctex=1 -interaction=nonstopmode -enable-write18 -shell-escape $1.tex

    echo -e "${GREEN}Opening pdf... ${NC}"
    gnome-open $1.pdf
}

cleanPDFdir() {
GREEN='\033[1;32m'
NC='\033[0m' # No color                                                                                                
    echo -e "${GREEN}Removing auxiliary files...${NC}"
    rm -v $1.pdf
    rm -v $1.aux
    rm -v $1.bbl
    rm -v $1.bbg
    rm -v $1.log
    rm -v $1.synctex*
}

alias pdfmake='generatePDF'
alias pdfclean='cleanPDFdir'

我仅通过指定主文件的名称(不带扩展名)来运行该函数:

pdfmake my_tex_file

来自评论的附加信息:我正在使用 emacs,因此开始将这个脚本放在一起,以便我可以像使用 TexMaker 的快速构建时一样快速进行编译。

我刚刚在这里和 Stack Overflow 上找到了各个命令,所以我真的不明白每个命令在做什么。

答案1

尝试latexmk my_tex_filelatexmk -xelatex my_tex_file

相关内容