在 VS Code 中使用 Latex 模板的可能方法有哪些?

在 VS Code 中使用 Latex 模板的可能方法有哪些?

目前,我使用 VS Code 作为我的 Latex 编辑器。我将其与 Latex-Workshop 扩展一起使用。我的工作流程包括编写问题集的解决方案,并偶尔使用 Beamer 进行一些演示。我之前的编辑器 Texpad 有这个有用的模板功能,例如,我可以在其中 problem_set_template.tex定义并立即开始工作,而不必从头开始编写所有内容或从其他地方复制和粘贴某些内容。

我知道 VS Code 有一个原生的 Snippet 功能,但据我所知,我所寻求的并不是一个 Snippet。我想要一种方法,无论是通过终端还是通过 GUI 打开编辑器,并要求它根据我已经定义的模板创建一个新文件。

原则上,人们总是可以将文件problem_set_template.tex存储在某个地方,并在需要时复制它,从而使副本成为事实上文件进行编辑。但这听起来效率极低。有什么想法吗?非常感谢!

答案1

我知道您可能对代码片段不感兴趣,但我在寻找在 VS 代码中制作模板的方法时发现了这个问题,经过一番研究,我认为代码片段是一个非常好的解决方案(带有制表符、作者/标题等预定义值)。但有一个小小的缺点,那就是您必须先生成一个文件并将其保存为 something.tex。

  1. 转到代码 -> 首选项 -> 用户代码片段(或者直接在命令面板中输入用户代码片段)
  2. 选择 LaTeX

将打开一个名为 latex.json 的文件,看起来像这样

{
    // Place your snippets for latex here. Each snippet is defined under a snippet name and has a prefix, body and 
    // description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
    // $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the 
    // same ids are connected.
    // Example:
    // "Print to console": {
    //  "prefix": "log",
    //  "body": [
    //      "console.log('$1');",
    //      "$2"
    //  ],
    //  "description": "Log output to console"
    // }
}

按照说明将所有注释掉的代码替换为您的模板。这是一个非常基本的乳胶模板的示例

{
    "Simple Template": {
        "prefix": ["template-basic"],
        "body": ["\\documentclass{article}",
            "\\title{${1:Default Title}}",
            "\\author{${2:Default Author}}",
            "\\begin{document}",     
            "\\maketitle",
            "$0",
            "\\end{document}"
        ],
        "description": "Generates a simple LaTeX template"
    }
}

这将生成一个 LaTeX 模板,将光标放在标题字段(其默认值为“默认标题”)上,然后按 Tab 键将您移动到作者字段,最后移动到 $0,用于指示最终的光标位置。

该模板的触发方式是在 LaTeX 文档中的“前缀”部分开始输入关键字(请注意,您可以有多个关键字),然后使用标签或者进入执行它  

选择模板片段

相关内容