Update 2011-12-31: 最新的版本已经直接支持XeTeX了。
LyX默认是和latex/texlive集成在一起的,latex/texlive很强大,如果不是字体的问题,那么这个组合相当不错。 只是我觉得latex-cjk这种做法应该不会有很大的进步,毕竟CJK仅仅只是latex的一个宏,使用这个宏来支持中日韩,其字体的选择就很不灵活,它无法自动选择系统已经安装的字体,这应该是所有其他字处理程序所不能理解的。
因此,考虑选择XeTeX,虽然目前XeTeX还够成熟,至少目前其实还是无法和latex来相比,但是在中文支持方面,我觉得他有天生的优势:
1)XeTeX是tex的一个引擎,而不是像latex一样,是tex的一个宏包,tex本身8bits的,这就注定LaTeX/CJK要想在这个层面上支持中文,很困难;而XeTeX本身就是unicode的,对编码和语言的支持不成问题。
2)因为1)的原因,XeTeX在字体的支持上就非常灵活,他能有效利用系统上安装的字体,这样就免去了使用LaTeX/CJK宏包需要创建字体的麻烦。
要让LyX支持XeTeX其实很简单,只需要做下面几个事情:
1)关闭LyX编辑器。编辑$HOME/.lyx/preferences文件,在文件的最后增加下面这两行:
\format “pdf4″ “pdf” “PDF(XeTeX)” “p” “” “” “document,vector”
\converter “pdflatex” “pdf4″ “xelatex $$i” “latex”
保存关闭。
2)打开LyX,创建一个新文件,选择文档(D)–>首选项,在语言标签表里,语言选择“简体中文”,这里选择“英语”也可以。 编码选择”utf8-plain”,注意是选择utf8-plain,不是utf8,也不是UTF8。然后选择LaTeX序标签,至少要增加下面这个包
\usepackage{fontspec}
其他的根据你的需要,建议增加下面两行:
\usepackage{xunicode}
\usepackage{xltxtra}
如果设置默认主字体,可以增加这么一行:
\setmainfont{Simsun}
然后选择保存为文档缺省设置。
现在测试,创建一个新文件,随便输入一些汉字,然后选择试图(V)–>”PDF(XeTeX)”,如果没有报错,你应该可以看到PDF文档。 你也可以选择文件(F)–>导出(E)–>”PDF(XeTeX)”。
小提示:如何知道系统安装了哪些字体,或者说系统识别的字体名称到底是什么呢?你可以使用fc-list这个命令,该命令在xetex包里自带了,有些Linux发行版本也自带了这个程序,该程序可以列出你的系统目前安装的系统,比如我的
# fc-list |more
Verdana:style=Normal,obyčejné,Standard,Κανονικά,Regular,Normaali,Normál,Normale,Standaard,Normalny,Обычный,Normálne,Navadno,A
rrunta
...
LMRoman10:style=DunhillOblique
LMSans10:style=DemiCondensedOblique
下载你知道怎么在LyX的LaTeX序里设置自己的字体了吧。
试试我的这个例子:
xetex_on_lyx.tar.bz2