2010-03-15 150 views
13

我使用\include{}声明逐个在我的latex文件中包含章节,到目前为止,我对此没有任何问题。但是我最近写了一章,我用一个名字包括空格保存下来......因为你可以。在文件名中包含一个带空格的.tex文件

现在的include{}声明显然不喜欢空格,只打印我的文档中的文件名而不是章节。

这可能是一个非常简单的修复(除去删除文件名中的空格;-)),但我找不到它。

UPDATE

它不按照本wiki这个问题好兆头。它说,除非你使用teTeX 3或MikTeX 2.4等最近的发行版,否则你不能这样做。

但是,希望留下了一丝瑕疵,该页面的日期是2005年(很多情况可能会在5年内发生),我使用的是包含在ubuntu中的pdflatex,我认为这是一个相当新近的发行版。

+0

不幸的是,我最后一次在ubuntu的回购版中检查乳胶分布是texlive2007。这有点过时了。 TL2009非常好,包括一个包管理器和一些其他好东西满足您的tex-ing需求。 – Mica 2010-03-15 17:00:51

+0

使用平面文件(仅使用.txt文件)时,也可以使用'\ input {“./章节/ My Chapter Name.txt”}'。尽管堆栈中有TeX社区,但它仍然被认为是编程(如XSL等)。 – 2018-01-23 21:15:52

回答

9

嗯,我通过给出(非常不满意)答案来结束这个问题,我发现(在这个wiki)。

现在答案不幸的是:你不能,除非你使用最近的版本,更恰当地处理这个问题。示例:teTeX 3和MikTeX 2.4。

似乎不寻常的文件名仍然是乳胶中的问题,所以最好的办法是弃权,或者如果必须的话,找到解决问题的版本。

8

尝试

\include{"file\space name"} 

(即使用引号和\space。)您可能需要删除旧.aux文件和/或运行乳胶两次。

+0

恐怕不起作用。它通过这个解决方案的.tex好,但现在挂在.aux上。 – NomeN 2010-03-15 00:37:20

+0

我相信这只适用于图像。 – NomeN 2010-03-24 10:30:40

+0

@NomeN:我试过了,它适用于我的简单测试用例,但我不确定它是否应该适用于所有内容。 – 2010-03-25 03:14:56

5

它的工作原理。你需要做的是,如果你的章节文件是File Of Mine.tex然后在主.tex文件放

\include{"File\space Of\space Mine"} 

但里面File Of Mine.tex你只需要有\chapter{File Of Mine}。试试看看它是否适合你。它为我做。

+0

是否有'\ chapter'命令不应该改变它是否有效。它会再次“工作”吗? @NomeN表示在文件名中使用'\ space'宏将允许加载'.tex'文件,但不能加载相应的'.aux'文件。 – 2010-12-10 14:50:30