久闻LaTeX大名,由于Linux下常用的LibreOffice实在太过于糟糕,与Microsoft Office差距太大,并且LibreOffice已经是Linux下最好的Office套件了,使用LaTeX来替代LibreOffice恐怕是一种无奈的选择。

但是我从来没有用过LaTeX,连类似的排版工具也从未用过,可以说丝毫没有经验。不过我还是决定试着学习下LaTeX,首先当然是从配置环境开始,我不熟悉LaTeX和类似软件使用的文件格式,可以说,我只认识PDF格式,所以在配置的时候也是奔着PDF而去。网上的LaTeX配置的文章多如牛毛,但是方法竟然都不一样,有简单的,有繁琐的。英文LaTeX环境很容易就可以搞定,但是中文却没有这么简单。我尝试了几个比较简单的方法,全都不可行。复杂的方法,或是说步骤超过5步的,或是要修改配置文件的方法,我全都不尝试,因为一看这种方法就感到头疼。下载TexLive2010也许比较适合我,但是他的大小实在太恐怖,2GB,不知道为什么会这么大,这个大小恐怕已经超过Microsoft Office了。下载的速度超慢,初步算算大约下载2天,不考虑。

后来发现,其实最简单的方法就是使用XeLaTeX,两个好处:

第一,无须配置,安装后即可使用。

第二,支持中文。

第三,直接将文件转为PDF。

安装只需要三个包

sudo apt-get install texlive-xetex latex-cjk-xcjk texlive-latex-recommended

不过依赖包相当多,apt大约下载半多个小时才能安装。这期间无须任何干涉。

安装完之后,可以先写一个简单的测试文件,当然,要带中文

%% example.tex
\documentclass{article}
\usepackage{xeCJK}  %必须加xeCJK包
\setCJKmainfont{WenQuanYi Micro Hei}  %换成本地字体
\begin{document}
chm文件全名是Microsoft Compiled HTML Help,看名字也猜得出是微软的格式,Windows操作系统自带它的阅读器,chm普遍用于帮助文件和电子书,但在国内,他的应用范围更广,几乎很多在线文档本地化后都采用这个格式。一般做技术的不可能不接触它,但是一般Linux发行版本不自带chm的阅读器,只能安装软件,chmsee就是我所用过最好的chm阅读器了,他还是一款国产软件,我猜之所以看不到比他更好地国外软件,也许是因为中国人更有需求吧。

项目地址:http://code.google.com/p/chmsee/

但是Fedora 14的chmsee包有点奇怪,只有1.1.0版本,没有最新的1.3.0版本。1.1.0的Bug很厉害,影响了正常使用,最新版本则修复了这些Bug。但是Fedora 14没有chmsee最新版本,我在网上也没有搜索到适合Fedora的RPM包,惟一的OpenSUSE的RPM包使用yum localinstall安装仍有不能解决的依赖关系,这使得我们不得不用源码来编译安装了。

我看到项目网站上解释他没有发布二进制安装文件的原因是“Linux 的发行版太多了,还是只发布源码比较省事”,我不否认这种说法的正确性,但也不能否认源码编译安装对我这种Linux菜鸟而言确实非常困难。主要原因当然是缺乏库文件,而且一旦缺乏,我往往不知道该下载哪个包来解决,如果出现RPM包常见的依赖性地狱,更是让我绝望,所以,除非确实找不到二进制包并且需求这个软件,否则我绝对不会去编译源代码。

我看到他的项目文件讲了依赖如下:
cmake >= 2.6.4
gtk2 >= 2.18
xulrunner >= 1.9
chmlib
libxml2
libgcrypt
intltool
幸运的是,Yum库中这些软件全都有,不幸的是,安装了后连cmake都通不过,还是有大量库文件缺乏。后来猜测他的库文件可能不是放在这些可执行的程序中,而是放在devel包中,因此尝试安装了他们的devel包,结果竟然成功了(后来发现项目文件中说的很清楚:Before compiling, you need to check following libraries or their development packages already installed on your system.可惜我一开始没有注意),只要cmake一通过,就不会再有依赖性问题了,安装非常成功。下面复述下正确的依赖。
 
cmake
gtk2-devel
xulrunner-devel
chmlib-devel
libxml2-devel
libgcrypt-devel
intltool
版本方面不用担心,Yum库中的软件都符合要求。
\end{document}

这里把文件命名为example.tex。

可以看到,里面动用了一个中文字体——文泉驿微米黑,这是我最喜欢的字体,也是电脑里唯一一个中文字体,你可以修改这个字体来使用你自己喜欢的字体。你可以用

fc-list :lang=zh-cn

来输出你电脑上所有中文字体。

编译example.tex非常简单,只需要使用

xelatex example.tex

即可获得example.pdf文件,打开即可见到效果。

本人对LaTeX一窍不通,如果你说这样配置出的LaTeX环境会有什么什么缺陷我无法应答,不过我认为这也不要紧。只要有一个简单的工作环境,用它稍微学习下LaTeX,让菜鸟们稍微有一点LaTeX的感觉,和高手们有点共同语言,此时再重新用更好的方法配置LaTeX,才是最人性化的做法。如果一开始就使用那种无法理解的方法配置,想提问又被高手们鄙视,还没开始学习就有了不愉快的感觉,这种做法不利于以后的发展。

另外,求一个LaTeX IDE,简单点就可以了。不太想记很多LaTeX语法。

 

发现一个TexLive 2010在国内的下载点 厦门大学开源软件镜像,下载速度很快。如果有TexLive 2010的光盘,那么参考 www.cnblogs.com/hello_seven/archive/2011/02/15/1955598.html 即可非常容易的配置出更完善的LaTeX环境。

今天中华民国建国九十九周年和Ubuntu 10.10发布之日,可谓双喜临门。更巧合的是,二者都以自由作为自己的信仰。

文泉驿,是Linux下最著名的自由中文字体,对于他的微米黑字体,我更是爱不释手,所有的实验报告都坚决使用它,即使是要放到Windows下,我也会将文档转换成pdf格式,以极大程度的使用它。如果查看本博客的CSS代码,也可以发现,正文字体文泉驿微米黑排名第一,在其他博客里,我自己还真没见过第二个这么做的。

平日里我装Ubuntu的时候习惯使用纯英文版,一方面是认为Linux用中文没有意思,如果用终端更不方便,另一方面也是想创造点英语气氛,但是Ubuntu有一点很奇怪,如果安装纯英文的Ubuntu,那么中文就显示得不正常,字的大小粗细都很奇怪,尤其是在Google Chrome下,上Ubuntu中文论坛,尤其明显。当然不允许这种事情发生,所以我每次都把Chrome的每一种字体都显式的指定为文泉驿微米黑,有时,甚至把全系统的字体都指定为文泉驿微米黑,似乎不是什么好事,为了一个中文字体,放弃了所有的英文字体。所以我探索新的方法,终于找到了通过修改字体配置文件/etc/fonts/local.conf来把中文字体指定为文泉驿微米黑,而不改变英文字体的方法:

<fontconfig>
   <match target="pattern">
      <test qual="any" name="family">
         <string>serif</string>
      </test>
      <edit name="family" mode="prepend" binding="strong">
         <string>Ubuntu</string>
         <string>WenQuanYi Micro Hei</string>
         <string>AR PL UMing CN</string>
         <string>AR PL ShanHeiSun Uni</string>
         <string>Bitstream Vera Serif</string>
         <string>DejaVu Serif</string>
         <string>AR PL UKai CN</string>
         <string>AR PL ZenKai Uni</string>
      </edit>
   </match> 
   <match target="pattern">
      <test qual="any" name="family">
         <string>sans-serif</string>
      </test>
      <edit name="family" mode="prepend" binding="strong">
         <string>Ubuntu</string>
         <string>WenQuanYi Micro Hei</string>
         <string>Bitstream Vera Sans</string>
         <string>DejaVu Sans</string>
         <string>WenQuanYi Zen Hei</string>
         <string>AR PL UMing CN</string>
         <string>AR PL ShanHeiSun Uni</string>
         <string>AR PL UKai CN</string>
         <string>AR PL ZenKai Uni</string>
      </edit>
   </match> 
   <match target="pattern">
      <test qual="any" name="family">
         <string>monospace</string>
      </test>
      <edit name="family" mode="prepend" binding="strong">
         <string>WenQuanYi Micro Hei Mono</string>
         <string>Bitstream Vera Sans Mono</string>
         <string>DejaVu Sans Mono</string>
         <string>WenQuanYi Zen Hei</string>
         <string>AR PL UMing CN</string>
         <string>AR PL ShanHeiSun Uni</string>
         <string>AR PL UKai CN</string>
         <string>AR PL ZenKai Uni</string>
      </edit>
   </match> 
</fontconfig>

编辑/etc/fonts/local.conf,把上述XML复制进去即可。如果没有该文件,就创建一个。修改后无需重启,即时起效。

最后赞美下Ubuntu 10.10的新字体"ubuntu",很漂亮。刚刚已经修改博客支持这个字体作为默认英文字体了。

参考文献:forum.ubuntu.org.cn/viewtopic.php?f=8&t=236013&start=0