通过 ACM 论文模版学习 LaTeX 语法 【一、LaTeX简介和安装】

一、LaTeX 简介

LaTeX(读作"Lay-tech"或"Lah-tech")是一种专业的排版系统,特别适用于生成高质量的科技和数学文档。它广泛用于学术界,特别是在撰写论文、报告、书籍以及数学公式较多的文档时。

LaTeX 的特点包括:

  • 内容与格式分离:用户可以专注于文档的内容,而不必过多考虑格式和排版。
  • 高质量输出:生成的文档通常具有专业的印刷品质。
  • 数学公式支持:对数学符号和公式的支持非常好,能够生成复杂的数学表达式。
  • 跨平台性:可以在不同的操作系统上运行,并且有丰富的扩展包(packages)可供使用,满足各种需求。

1.1 编译环境

1.1.1 TeX Live:

  • TeX Live 是一个跨平台的完整的 LaTeX 发行版,支持主流的操作系统(如Windows、macOS、Linux)。
  • 包含了 LaTeX 的核心程序及各种扩展包,是大多数用户选择的首选。

1.1.2 Overleaf:

  • Overleaf 是一个基于 Web 的 LaTeX 编辑器,不需要在本地安装 LaTeX 发行版。
  • 用户可以直接在浏览器中编辑 LaTeX 文档,并实时预览效果,非常适合团队协作和快速起步。
  • https://www.overleaf.com/

1.2 TeX Live + VSCode

1.2.1 TeX Live

TeX Live 是一个跨平台的 TeX 排版系统的发行版,提供了完整的 TeX 处理工具、宏包和文档。它由 TeX Users Group (TUG) 维护,是目前最广泛使用的 TeX 发行版之一,适用于各种操作系统,包括 Windows、Mac OS 和各种 Unix/Linux 发行版。

TeX Live 的官网是:https://www.tug.org/texlive/

在中国,有多个 TeX Live 镜像网站,可以更快地下载和更新 TeX Live。以下是一些常用的国内镜像:

  1. 清华大学镜像站:https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/
  2. 中国科学技术大学镜像站:https://mirrors.ustc.edu.cn/CTAN/systems/texlive/Images/

这些镜像站点提供了 TeX Live 的 ISO 文件和网络安装包,用户可以根据需要选择合适的安装方式。

以清华大学镜像站为例:

  1. 下载 texlive.iso,如下图所示:

在这里插入图片描述

  1. 安装 texlive ,具体步骤如下:

(1)双击打开 texlive.iso ,运行 install-tl-windows.bat

在这里插入图片描述

(2)修改 Installation root 到合适安装位置,点击 Advanced, 其中也可以修改安装地址,我们需要在 Customize ,将语言选为 Chinese、US and UK English,可以减少内存空间占用。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

(3)点击 安装 ,时间可能较长请耐心等待。

1.2.2 VSCode

Visual Studio Code(简称 VSCode)是一款由微软开发的免费、开源的代码编辑器。它支持多种编程语言,提供了丰富的扩展和插件,具有调试、智能代码补全、代码重构、集成终端和版本控制等功能。VSCode 由于其轻量级、快速和强大的功能,成为了开发者中非常受欢迎的编辑器。

VSCode 的主要特点包括:

  1. 跨平台支持:可在 Windows、macOS 和 Linux 上运行。
  2. 丰富的扩展市场:可以安装各种插件和扩展来增强编辑器功能。
  3. 集成 Git:内置了 Git 支持,方便进行版本控制。
  4. 调试功能:支持多种语言的调试。

VSCode 的官方网站和下载地址是:https://code.visualstudio.com/

用户可以访问官网,根据自己的操作系统下载相应的安装包并进行安装。

1.2.3 LaTex Workshop

LaTeX Workshop 是一个 Visual Studio Code 的扩展插件,用于提供 LaTeX 编辑和编译支持。它使得在 VSCode 中使用 LaTeX 变得更加高效和便捷。LaTeX Workshop 提供了强大的功能,如实时预览、代码片段、语法高亮、自动补全、错误提示等,帮助用户更好地撰写和管理 LaTeX 文档。

LaTeX Workshop 的主要功能包括:

  1. 实时预览:可以在编辑 LaTeX 文档时实时查看编译后的 PDF 预览。
  2. 自动补全:提供 LaTeX 命令和环境的自动补全,提升编辑效率。
  3. 语法高亮:对 LaTeX 语法进行高亮显示,方便阅读和编辑。
  4. 错误提示:在编译过程中,如果出现错误,会在编辑器中进行标记,方便排查和修正。
  5. 代码片段:内置常用的 LaTeX 代码片段,可以快速插入常用结构。
  6. 多语言支持:支持多种语言的 LaTeX 文档编写。

要安装 LaTeX Workshop,可以按照以下步骤操作:

  1. 打开 Visual Studio Code。
  2. 点击左侧活动栏中的扩展图标(或者按 Ctrl+Shift+X)。
  3. 在搜索框中输入 “LaTeX Workshop”。
  4. 找到 “LaTeX Workshop” 插件,点击 “安装”。

安装完成后,LaTeX Workshop 将自动启用,并为 LaTeX 文档提供上述功能支持。

配置 LaTeX Workshop

在这里插入图片描述

设置->配置文件->显示配置文件内容,找到 settings.json文件,配置下述代码即可:

"latex-workshop.latex.tools": [
        {
            "name": "pdflatex",
            "command": "pdflatex",
            "args": [
                "-synctex=1",
                "-interaction=nonstopmode",
                "-file-line-error",
                "%DOCFILE%"
            ]
        },
        {
            "name": "xelatex",
            "command": "xelatex",
            "args": [
                "-synctex=1",
                "-interaction=nonstopmode",
                "-file-line-error",
                "%DOCFILE%"
            ]
        },
        {
            "name": "bibtex",
            "command": "bibtex",
            "args": [
                "%DOCFILE%"
            ]
        }
    ],
    "latex-workshop.latex.recipes": [
        {
            "name": "xelatex",
            "tools": [
                "xelatex"
            ],
        },
        {
            "name": "pdflatex",
            "tools": [
                "pdflatex"
            ]
        },
        {
            "name": "xelatex->bibtex->xelatex*2",
            "tools": [
                "xelatex",
                "bibtex",
                "xelatex",
                "xelatex"
            ]
        },
        {
            "name": "pdflatex->bibtex->pdflatex*2",
            "tools": [
                "pdflatex",
                "bibtex",
                "pdflatex",
                "pdflatex"
            ]
        }
    ],
    "latex-workshop.latex.clean.fileTypes": [
        "*.aux",
        "*.bbl",
        "*.blg",
        "*.idx",
        "*.ind",
        "*.lof",
        "*.lot",
        "*.out",
        "*.toc",
        "*.acn",
        "*.acr",
        "*.alg",
        "*.glg",
        "*.glo",
        "*.gls",
        "*.ist",
        "*.fls",
        "*.log",
        "*.fdb_latexmk"
    ],
    //pdf浏览器,如果用外部浏览器则用 "external"
    "latex-workshop.view.pdf.viewer": "tab",
    //设置 latex-workshop 的 PDF 预览程序,external 指的是外部程序,如果需要用外部程序,把上面那句注释掉,下面这段注释解除
    // "latex-workshop.view.pdf.viewer": "external",
    // "latex-workshop.view.pdf.ref.viewer": "external",
    // "latex-workshop.view.pdf.external.viewer.command": "C:/Users/49163/AppData/Local/SumatraPDF/SumatraPDF.exe", // 注意修改SumatraPDF路径 如果复制过来路径是\记得改成/
    // "latex-workshop.view.pdf.external.viewer.args": [
    //     "-forward-search",
    //     "%TEX%",
    //     "%LINE%",
    //     "-reuse-instance",
    //     "-inverse-search",
    //     "code.cmd -r -g \"%f\":%l",
    //     "%PDF%"
    // ],
    // // 配置正向、反向搜索:.tex -> .pdf
    // "latex-workshop.view.pdf.external.synctex.command": "C:/Users/49163/AppData/Local/SumatraPDF/SumatraPDF.exe", // 注意修改SumatraPDF路径
    // "latex-workshop.view.pdf.external.synctex.args": [
    //     // 正向搜索
    //     "-forward-search",
    //     "%TEX%",
    //     "%LINE%",
    //     "-reuse-instance",
    //     // 反向搜索
    //     "-inverse-search",
    //     "\"D:/Program Files/Microsoft VS Code/Code.exe\" \"D:/Program Files/Microsoft VS Code/resources/app/out/cli.js\" -gr %f:%l", //注意修改VSCode路径
    //     "%PDF%"
    // ],
    //自动编译tex
    "latex-workshop.latex.autoBuild.run": "onSave",
    //显示内容菜单:(1)编译文件;(2)定位游标
    "latex-workshop.showContextMenu": true,
    //显示错误
    "latex-workshop.message.error.show": true,
    //显示警告
    "latex-workshop.message.warning.show": true,
    //从使用的包中自动补全命令和环境
    "latex-workshop.intellisense.package.enabled": true,
    //设置为never,为不清除辅助文件
    "latex-workshop.latex.autoClean.run": "never",
    //设置vscode编译tex文档时的默认编译链
    "latex-workshop.latex.recipe.default": "lastUsed",
    // 用于反向同步的内部查看器的键绑定。ctrl/cmd +点击(默认)或双击
    "latex-workshop.view.pdf.internal.synctex.keybinding": "double-click",

这个配置文件是用于 LaTeX Workshop 插件在 VSCode 中的配置,包含了工具链、编译链、文件清理、PDF 预览器和一些其他设置。以下是详细解释:

工具链配置

"latex-workshop.latex.tools": [
    {
        "name": "pdflatex",
        "command": "pdflatex",
        "args": [
            "-synctex=1",
            "-interaction=nonstopmode",
            "-file-line-error",
            "%DOCFILE%"
        ]
    },
    {
        "name": "xelatex",
        "command": "xelatex",
        "args": [
            "-synctex=1",
            "-interaction=nonstopmode",
            "-file-line-error",
            "%DOCFILE%"
        ]
    },
    {
        "name": "bibtex",
        "command": "bibtex",
        "args": [
            "%DOCFILE%"
        ]
    }
]
  • 定义了三个工具:pdflatexxelatexbibtex
  • 每个工具都有名称 (name)、命令 (command) 和参数 (args)。
  • -synctex=1 用于同步 TeX 源文件和 PDF 文件。
  • -interaction=nonstopmode 确保编译过程中遇到错误时不中断。
  • -file-line-error 显示文件和行号的错误信息。
  • %DOCFILE% 是一个占位符,表示要编译的文档文件。

编译链配置

"latex-workshop.latex.recipes": [
    {
        "name": "xelatex",
        "tools": [
            "xelatex"
        ]
    },
    {
        "name": "pdflatex",
        "tools": [
            "pdflatex"
        ]
    },
    {
        "name": "xelatex->bibtex->xelatex*2",
        "tools": [
            "xelatex",
            "bibtex",
            "xelatex",
            "xelatex"
        ]
    },
    {
        "name": "pdflatex->bibtex->pdflatex*2",
        "tools": [
            "pdflatex",
            "bibtex",
            "pdflatex",
            "pdflatex"
        ]
    }
]
  • 定义了四个编译链 (recipes):
    1. xelatex:只使用 xelatex 编译。
    2. pdflatex:只使用 pdflatex 编译。
    3. xelatex->bibtex->xelatex*2:先用 xelatex 编译,然后用 bibtex 处理参考文献,再用 xelatex 编译两次。
    4. pdflatex->bibtex->pdflatex*2:先用 pdflatex 编译,然后用 bibtex 处理参考文献,再用 pdflatex 编译两次。

定义四条编译链是为了满足不同的编译需求,适应各种文档结构和要求。以下是对每条编译链的详细解释:

1. xelatex
{
    "name": "xelatex",
    "tools": ["xelatex"]
}

作用

  • 只使用 xelatex 编译 LaTeX 文档。适用于不包含参考文献或索引的简单文档。
  • xelatex 支持 Unicode 和 OpenType 字体,非常适合需要使用多种语言和复杂字体的文档。
2. pdflatex
{
    "name": "pdflatex",
    "tools": ["pdflatex"]
}

作用

  • 只使用 pdflatex 编译 LaTeX 文档。适用于不包含参考文献或索引的简单文档。
  • pdflatex 是传统的 LaTeX 编译器,广泛应用于各种文档中。
3. xelatex->bibtex->xelatex*2
{
    "name": "xelatex->bibtex->xelatex*2",
    "tools": ["xelatex", "bibtex", "xelatex", "xelatex"]
}

作用

  • 适用于包含参考文献的文档。
  • 步骤
    1. 使用 xelatex 编译文档,生成辅助文件。
    2. 使用 bibtex 处理文献引用,生成参考文献表。
    3. 再次使用 xelatex 编译,以更新参考文献信息。
    4. 再次使用 xelatex 编译,以确保所有引用和链接都正确。
4. pdflatex->bibtex->pdflatex*2
{
    "name": "pdflatex->bibtex->pdflatex*2",
    "tools": ["pdflatex", "bibtex", "pdflatex", "pdflatex"]
}

作用

  • 适用于包含参考文献的文档。
  • 步骤
    1. 使用 pdflatex 编译文档,生成辅助文件。
    2. 使用 bibtex 处理文献引用,生成参考文献表。
    3. 再次使用 pdflatex 编译,以更新参考文献信息。
    4. 再次使用 pdflatex 编译,以确保所有引用和链接都正确。

编译链的必要性

  • 简单文档:对于不包含参考文献、索引或其他复杂结构的文档,单次编译 (xelatexpdflatex) 就足够了。
  • 包含参考文献的文档:包含参考文献的文档需要多次编译才能正确生成引用和参考文献表。需要先生成辅助文件,再处理引用,最后更新引用信息。
  • 多语言支持xelatex 支持 Unicode 和多语言,适用于需要多语言和复杂字体的文档。

通过定义不同的编译链,可以灵活地处理各种文档需求,确保生成的 PDF 文件内容准确无误。

文件清理配置

"latex-workshop.latex.clean.fileTypes": [
    "*.aux",
    "*.bbl",
    "*.blg",
    "*.idx",
    "*.ind",
    "*.lof",
    "*.lot",
    "*.out",
    "*.toc",
    "*.acn",
    "*.acr",
    "*.alg",
    "*.glg",
    "*.glo",
    "*.gls",
    "*.ist",
    "*.fls",
    "*.log",
    "*.fdb_latexmk"
]
  • 指定了在清理过程中要删除的辅助文件类型,例如 .aux.log 等。

PDF 预览器配置

"latex-workshop.view.pdf.viewer": "tab"
//"latex-workshop.view.pdf.viewer": "external",
//"latex-workshop.view.pdf.ref.viewer": "external",
//"latex-workshop.view.pdf.external.viewer.command": "C:/Users/49163/AppData/Local/SumatraPDF/SumatraPDF.exe",
//"latex-workshop.view.pdf.external.viewer.args": [
//    "-forward-search",
//    "%TEX%",
//    "%LINE%",
//    "-reuse-instance",
//    "-inverse-search",
//    "code.cmd -r -g \"%f\":%l",
//    "%PDF%"
//]
  • 设置了 PDF 预览器为 VSCode 内部标签页 (tab)。
  • 注释掉的部分配置了外部 PDF 预览器(例如 SumatraPDF),可以根据需要启用。

其他设置

"latex-workshop.latex.autoBuild.run": "onSave",
"latex-workshop.showContextMenu": true,
"latex-workshop.message.error.show": true,
"latex-workshop.message.warning.show": true,
"latex-workshop.intellisense.package.enabled": true,
"latex-workshop.latex.autoClean.run": "never",
"latex-workshop.latex.recipe.default": "lastUsed",
"latex-workshop.view.pdf.internal.synctex.keybinding": "double-click"
  • latex-workshop.latex.autoBuild.run:设置为保存时自动编译 (onSave)。
  • latex-workshop.showContextMenu:显示上下文菜单。
  • latex-workshop.message.error.showlatex-workshop.message.warning.show:显示错误和警告信息。
  • latex-workshop.intellisense.package.enabled:启用自动补全命令和环境。
  • latex-workshop.latex.autoClean.run:设置为从不清理辅助文件 (never)。
  • latex-workshop.latex.recipe.default:默认使用最后一次使用的编译链 (lastUsed)。
  • latex-workshop.view.pdf.internal.synctex.keybinding:设置内部 PDF 查看器的键绑定为双击 (double-click)。
  • 20
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Eternity_GQM

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值