Categories
日常应用

在LyX里面使用分章节的子文档

不知道各位用latex有没有分章节写书的习惯……一本书若是近10个章节(chapter)甚至更多到后面可是会让人蛮抓狂的。所以就有了主控文档(main document)和子文档(child documents),所以就造福了吾等懒人……

latex里面标准的命令有两个:include和input(怎么看怎么像php里面的include和require),两者的差别简而言之就是include =newpage input。

然而在这个懒人泛滥的时代,我们已然不用latex的文本编辑器们,转投了可视化编辑器LyX。这东西所见即所得的好处多得很,就不赘述了。但是今天我遇到的问题是,如何把一本书各章节分开写?最后再整合到一块儿去?

分开写的好处很多,比如打开文件之后不用先点鼠标翻到想写的那一行,不用为了调试某一处而忍受漫长的整个文档编译过程(尤其是动辄上M的中文文档),不用一下子把所有章节都放出来(在后面的没完工的时候)等等。
好在我们有LyX如此神器……插入子文档也变得格外简单,“插入> 文件 >子文档”即可。这个时候需要选择插入子文档的路径和模式。所以我们需要提前建立好N个LyX文档,分别命名为chapter1, 2, ....即可。然后按按鼠标把它们按顺序插入。这里其实还有个好处,比如我想把第三章模型A提前,放到第二章模型B之前,那么我们只需要在LyX里面改改include的顺序,所有的编码就调过来了……这比整本书一个文档需要剪切/粘帖一大块方便许多吧?所以其实我们子文档的命名也可以按照内容来,最后只是排序的事儿嘛!

Snap4

LyX第一神奇的地方就在于,不仅仅支持子文档,而且在打开主文档并在左侧显示目录的时候(“文档 > 目录”),子文档的目录也是即时更新的,可以直接通过鼠标点击在各个子文当之间跳转。
当然,它最最神奇地方就是子文档是可以单独编译的,这可比传统的Latex方便多了。这样,若是只改了某一小部分,想看效果就不必要编译整个文件了。再者,子文档也是单独有导言区的,这就意味着我们可以给子文档用不同于主控文档的样式(比如字体啊,页面大小啊)去编译。

最后的最后,LyZ此等神器也是支持子文档的……只是你需要稍稍辛苦点在每个子文档后面都加上参考文献数据库。

目前已知的问题就是超级链接及交叉引用……诸位可以暂时参考此帖(用LaTeX写过书的朋友帮帮忙 ),等我完善了之后再补充上。