其他分享
首页 > 其他分享> > 使用Latex编写论文(pkuthss模板)

使用Latex编写论文(pkuthss模板)

作者:互联网

这段时间在写毕业论文,使用的是Latex编写,这里记录一下期间遇到的各种问题的解决方法。

Latex 和 Word 的对比

Latex 的优势在于参考文献的管理比较简单。毕业论文要求所有参考文献按照出现顺序进行编号,但是我们在改论文的过程中不可避免会出现添加、删除、调整位置的情况。Word 下面每次手动改参考文献顺序是很痛苦的。虽然有一些第三方工具比如 EndNote 可以帮助解决这个问题,但是……我没用过。
Latex的劣势在于格式管理麻烦,尤其是文中频繁出现公式或转义字符的情况,总是会被打断思路。

编译环境

在线环境可以直接使用 Overleaf。Overleaf的优点在于这是一个在线网站,全平台可用,并且支持多人协作。但是缺点在于其编译速度慢,并且亮色背景我不喜欢。Overleaf可以直接导入网站中的 pkuthss 模板开始写作。

本地环境的优势在于编译速度快,尤其是几十页篇幅的文档。另外编辑环境的背景颜色可以自己定制,可以使用喜欢的Dark主题。
本地环境的配置如下:texlive + vscode + Latex Workshop。

本地项目搭建

首先下载 pkuthss 模板,这里从 GitHub下载
然后是编译命令,Overleaf 里使用的 XeLatex,本地我们也保持一致。
涉及到参考文献 ref.bib 的编译,我们按照 pkuthss 中 main.tex 的提示使用 biber。
最终,项目配置 [.vscode/settings.json] 内容编写如下:

{
    "latex-workshop.latex.tools": [
        {
            "name": "xelatex",
            "command": "xelatex",
            "args": [
                "-synctex=1",
                "-interaction=nonstopmode",
                "-file-line-error",
                "-pdf",
                "%DOCFILE%"
            ]
        },
        {
            "name": "biber",
            "command": "biber",
            "args": [
                "%DOCFILE%"
            ]
        }
    ],
    "latex-workshop.latex.recipes": [
        {
            "name": "xe->bib->xe->xe",
            "tools": [
                "xelatex",
                "biber",
                "xelatex",
                "xelatex"
            ]
        }
    ]
}

模板修改

版本管理

写一次论文中间可能经过多次修改,如果不做版本管理,得到的可能就是“初稿、修改1、修改2、...、终稿”这样一堆文件。这显然很不程序员。
我们直接初始化一个Git项目来管理版本。
由于Git只适合管理文本文件,这里我们需要将不合适的内容排除。
我们直接使用Github提供的 Tex.gitignore模板 来填写 .gitnore 文件。
可以看到,左侧文件栏里 *.aux 等一系列编译中间文件都变成了灰色,不会进入版本历史。

插入图表目录

有时候图表比较多,老师会建议插入图表目录。
直接使用 \listoffigures 插入图片目录的话,显示出来的图片是 1.1 xxxx 这种格式,我们希望改为 图 1.1 xxxx 这种格式。
操作方法是在 main.tex 中 \tableofcontents(正文目录) 后面加入这样一段:

	{%
	\let\oldnumberline\numberline%
	\renewcommand{\numberline}{\figurename~\oldnumberline}%
	\renewcommand{\listfigurename}{图目录}
	\listoffigures%
	}

表目录同=同理,fugure 改成 table 就可以:

	{%
	\let\oldnumberline\numberline%
	\renewcommand{\numberline}{\tablename~\oldnumberline}%
	\renewcommand{\listtablename}{表目录}
	\listoftables%
	}

持续更新……

标签:Latex,pkuthss,编译,xelatex,使用,目录,模板
来源: https://www.cnblogs.com/zhcpku/p/16145665.html