![名称中含有两个连续空格的文件无法编译](https://linux22.com/image/408379/%E5%90%8D%E7%A7%B0%E4%B8%AD%E5%90%AB%E6%9C%89%E4%B8%A4%E4%B8%AA%E8%BF%9E%E7%BB%AD%E7%A9%BA%E6%A0%BC%E7%9A%84%E6%96%87%E4%BB%B6%E6%97%A0%E6%B3%95%E7%BC%96%E8%AF%91.png)
我如何编译文件名中有两个连续空格的文件?以下在命名时可以编译file name.tex
,但在命名时不能编译file{two spaces here}name.tex
(抱歉,这里的编辑器将名称中的两个连续空格转换为一个空格,所以我不得不发挥创造力):
\documentclass{article}
\begin{document}
File name with two spaces fails to compile.
\end{document}
我收到的错误是:
这是 pdfTeX,版本 3.14159265-2.6-1.40.18 (TeX Live 2017/W32TeX) (预加载格式=pdflatex) 限制 \write18 已启用。进入扩展模式!我找不到文件 `./file name.tex"'。<*> "./file name.tex"
谢谢!
答案1
您可以通过以下方式输入名称中包含多个空格的文件
\documentclass{article}
\begin{document}
\input{"a\space\space b.tex"}
\end{document}
正如你在终端上看到的那样
LaTeX2e <2020-02-02> patch level 2
L3 programming layer <2020-02-14>
(/usr/local/texlive/2019/texmf-dist/tex/latex/base/article.cls
Document Class: article 2019/12/20 v1.4l Standard LaTeX document class
(/usr/local/texlive/2019/texmf-dist/tex/latex/base/size10.clo))
(/usr/local/texlive/2019/texmf-dist/tex/latex/l3backend/l3backend-pdfmode.def)
(./cc640.aux) (./a b.tex) [1{/usr/local/texlive/2019/texmf-var/fonts/map/pdfte
>>>12<<<
x/updmap/pdftex.map}] (./cc640.aux) )</usr/local/texlive/2019/texmf-dist/fonts/
type1/public/amsfonts/cm/cmr10.pfb>
在命令行上你可以使用
$ tex "a\space\space b"
This is TeX, Version 3.14159265 (TeX Live 2019) (preloaded format=tex)
(./a b.tex)