我想要一个名为“Templates”的目录,其中我想要包含 .tex 文件和图像文件。示例模板将设置带有水印、花式标题、语言设置、字体选择等的信件格式。我希望将模板放在一个位置,将所有其他文档放在另一个位置。例如:
Documents
|
|- Templates
| |
| |-- letter_header.tex
| |-- company_watermark.png
|
|- Contracts
| |
| |-- Company 01
| | |
| | |-- contract01.tex
| | |-- contract02.tex
| | |-- contract03.tex
这是我的问题。从 contract01.tex 中,我想做这样的事情:
\include{../../Templates/letter_header.txt}
但是,这行不通,因为 LateX 无法在该目录中写入辅助文件。在 Microsoft Windows 下,没有可以使用的符号链接。我理解允许 latex 写入任何目录存在安全风险 ((如何)我可以将文件 somedir/file.tex 包含在文件 somedir/subdir/anotherfile.tex 中)。那么安全的方法是什么?我可以指定在“文档”下它应该能够写入任何目录吗?
最重要的问题是:肯定有成千上万的人使用 LateX 和他们自己的模板,他们可能想将模板代码与实际内容分开。他们是否都被迫使用笨拙/不安全的解决方案?
更新:
在此处上传了一个例子:https://www.dropbox.com/s/15dxnu48wdqp897/SyncedFolder.zip
我想要的是能够从 test01.tex、test02.tex、test03.text 或 SyncedFolder/Documents 下的任何文件夹中使用我的 businessletter 类。watermark.jpg 文件属于 businessletter 类,因此应从类文件中加载。
设置TEXINPUT的结果:
答案1
假设您使用的是适用于 Windows 的 TeX Live,以下是适合我的方法:
找出你的
TEXMFHOME
文件夹所在的位置:C:\Users\renfro>c:\texlive\2013\bin\win32\tlmgr conf | 查找/i“TEXMFHOME” TEXMFHOME=C:/用户/renfro/texmf
为你的课程内容创建文件夹,遵循 TeX 目录结构(官方说法来自TeX 文件的目录结构,LaTeX Wikibook 部分的精简版安装额外的软件包)。
C:\Users\renfro>mkdir texmf\tex\latex\base
将您的 .cls 文件复制到您刚刚创建的文件夹,并在其他地方创建的文档中使用它。
与其他操作系统或其他 TeX 发行版的唯一区别在于tlmgr
、kpsexpand
等的特定路径,以及您自己的主目录。