我在 winedt 中打开了几个文件,它们都与某个项目相关。我有一个包含其他文件的主文件。
有什么方法可以设置,这样当我编译任何一个文件时,它都会编译主文件(并保存其他文件)?如果有必要,我不介意对文件名进行硬编码。
我想要一个自定义图标,以便我在处理大型多文件项目时可以修改图标来编译主文件。
答案1
WinEdt 需要使用一个命令\include
来让它知道包含到主目标文件中的文件。如果你在包含文件中使用空格,那么它将破坏 tex。一种解决方法是将包含文件换行以插入\space
空格:
这是一个 lua 函数,它将文件名转换为 tex 可以正确识别的内容:
function tex.ConvertToSpace(str)
str = string.gsub(str, " ", "\\space ")
tex.print('\\incfile{"'..str..'"}')
end
\include
以下是允许 WinEdt 正常工作的命令的修改:
\let\incfile\include
\renewcommand{\include}[1]{\directlua{tex.ConvertToSpace("#1")}}
像平常一样简单调用
\include{My filename with spaces}