LaTeX 项目与 Sublime Text 2 结合使用

LaTeX 项目与 Sublime Text 2 结合使用

我正在写一篇分为几个部分的论文。我希望有一个主文件,然后是几个我将仅包含的文件。我希望正确地完成它,因为我要将它发送给我的教授,他也必须处理它。

让我解释一下我的意思。文件夹结构如下:

Project/
   |-master.tex
   |-subFolder/
        |-section_one.tex
   |-anotherFolder/
        |-section_two.tex

文件master.tex

\documentclass[a4paper]{article}
    % preamble
\begin{document}
\include{subFolder/section_one}
\include{anotherFolder/section_two}
\end{document}

例如section_one.tex

\section{Section 1}
Lorem ipsum

问题 我在 Sublime Text 2 中使用乳胶。 我想

  1. 按照推荐的智能方式创建项目(如果存在)
  2. 在工作时,假设section_one.tex能够按Ctrl+ b(构建项目的标准快捷方式)并构建文件,master.tex但不能,section_one.tex因为它不包含前言并会引发一堆错误。另外,我不想master.text每次想要构建时都必须切换到 ST2 中的文件。

答案1

来自LaTeXing 文档

一个选项是创建一个 Sublime Text 项目,另一个选项是在 tex 文件的开头添加以下行。路径可以是绝对路径,也可以是当前 tex 文件的相对路径。

% -*- root: Project_Example.tex -*-

现在,如果您指定了一个root文件,您将能够编辑当前.tex文件,并且 LaTeXing 将在编译时构建主文件。

答案2

对于利用 sublime text 2(和 3+?)的解决方案,项目。

进入菜单:

Project -> Add Folder to Project

然后选择项目文件夹,单击确定。然后菜单:

Project -> Save Project As

将其保存在项目文件夹中。再次转到菜单:

Project -> Edit Project

在这里你会发现它已经将项目文件夹添加到项目中。然后,你可以将构建系统添加到项目中,当你按Ctrl+时,它将被执行b。有关如何操作的详细信息,可以在此处找到:构建系统 - Sublime text 2

可以按要求执行的项目文件示例:

{
"folders":
[
    {
        "path": "<Path to Folder>"
    }
],
"build_systems":
[
    {
        "name": "Project Build",
        "working_dir":"${project_path:${folder}}",
        "shell": true,
        "cmd": ["texify.exe","--pdf","$project_path/master.tex"]
    }
]}

这是为 Windows 制作的,安装了 MiKTeX。

[编辑]:请记住选择以下项目构建系统作为系统构建:

Tools -> Build System -> Project Build

请注意路径后面的字符串应该是Sublime保存的路径,而不是我写的路径。

关于Project文件的一般信息看这里: 非官方 Sublime 文档

奖金信息:如果您希望输出位于其自己的文件夹中,则可以创建一个名为outputfolder:(或者如果你喜欢的话还有什么),然后像这样添加字符串/outputfolderWorking_dir

"working_dir":"${project_path:${folder}}/outputfolder",

这将设置在该文件夹中调用的执行,但仍构建正确的 tex 文件,并将所有输出放在该文件夹中。

答案3

因此,在一位朋友的帮助下,我找到了这个解决方案。

项目结构与我的问题基本相同。即:

Project/
   |-master.tex
   |-subFolder/
        |-section_one.tex
   |-anotherFolder/
        |-section_two.tex
   |-makefile

但我已经makefile添加了这个答案,非常感谢德维太阳能。在此makefile只需重写MyDoc代表主文件名称的所有字符串。

然后在里面subFolders添加一个非常简单的 makefile:

# all triggers defined targets, in this case only 'upper'
all: upper

# jumps one directory up and calls make
upper: 
    make -C ../

注释解释了这个技巧。基本上,这会在上层目录中makefile调用。现在只需设置您的 SublimeText2 以使用 make 进行构建。您可以简单地通过 来完成此操作。makefileTools -> Build System -> Make

现在项目结构应如下所示:

Project/
   |-master.tex
   |-subFolder/
        |-section_one.tex
        |-makefile
   |-anotherFolder/
        |-section_two.tex
        |-makefile
   |-makefile

只需确保将正确的 makefile 放入正确的文件夹即可。您也可以将它们嵌套得更深(取决于您的需要)。

按照默认设置,您现在可以编辑section_one.tex,只需按Ctrl+即可b制作您的项目!

相关内容