我有一个乳胶项目,我想使用pandoc构建到epub文件中。我正在使用\ input {FILE}命令将章节保存在单独的latex文件中。不幸的是,pandoc不理解\ input命令,所以我的章节永远不会被插入。
我需要运行一个脚本或其他东西来处理我的main.tex文件以找到看起来像
的行\input{ch1.tex}
\input{ch2.tex}
...
并在每一行中,将其替换为该文件的内容,然后删除原始\ input命令,然后将结果输入临时文件或将结果直接传递给要构建的pandoc命令。
这个项目分别在WinXP和Debian上使用MikTex和TexLive构建。适用于Linux的解决方案是首选。
答案 0 :(得分:2)
如果你有傻瓜:
gawk '
match($0, /\\input\{([^\}]+)/, a) {
system("cat " a[1])
next
}
{print}
'
答案 1 :(得分:1)
使用Perl:
$ cat file1.txt
foo
bar
qwe\input{file2.txt}asd\input{file3.txt}zxc
baz
$ cat file2.txt
qux
quux
quuux
$ cat file3.txt
xyzzy
xyzzzy
$ <file1.txt perl -pe 's/\\input{([^}]*)}/open $1,"<$1";join("",<$1>)/ge'
foo
bar
qwequx
quux
quuux
asdxyzzy
xyzzzy
zxc
baz