LyX是一个开放源代码的文字处理软件, 在Linux上已经出现很长时间了, 而且很早就可以支持中文的使用了. 只可惜此软件在国内似乎还没有受到足够的重视, 还没有被大家广泛接受和使用. 目前LyX也有了Windows Port的版本, 但目前Windows的版本还不支持中文的使用, 而且需要X-Server.
本人已经从一年多以前就开始完全使用LyX来处理日常的文件排版工作. 本文只是简单的向大家介绍一下中文LyX的安装和使用, 希望能够让大家认识一下LyX配合LaTeX-CJK这套文字排版处理软件的强大功能.
1 LyX是什么?
相信许多人已经知道TeX和LaTeX是什么了. TEX是美国计算机专家D. E. Knuth教授研制的一个计算机排版系统, 它可以很容易的完成高质量的科学文件排版工作, 而且由于TeX系统的全部源程序都是开放的, 可以按照自己的要求进行扩充和修改. 世界上许多出版社和杂志编辑部都直接接受TeX/LaTeX投稿. 想详细了解TeX/LaTeX排版软件的读者可阅读东北大学薛定宇教授的<<LaTeX科学文件处理软件入门(修订版).
熟悉TeX的人都知道, TeX的排版指令很复杂, 尽管Leslie Lamport的LaTeX在TeX之上加了打量的宏指令, 使TeX使用变得容易了, 但用LaTeX写文章还是象编程序一样, 功能虽然很强大, 但入门的门槛太高, 使很多初学者望而生喂.
LyX的出现给LaTeX的使用者带来了福音, 解决了初学者的困扰, 它为使用者提供了一个"近乎"所见即所得的文件编辑环境, 有了LyX就不必再去记忆一大堆LaTeX的排版指令了, 特别是对表格和繁杂的数学公式的编排, 你可以将全部精力放在写文章上了, 你只要用鼠标点点按按就可以得到高质量排版的文章, 其中包括直接输出标准的LaTeX文件, dvi文件, 网络上非常流行的html文件, pdf文件和ps文件. 本文即是用CJK-LyX编辑输出的.
LyX是LaTeX的前端, 它使LyX文件转换成LaTeX格式文件, 然后再呼叫系统里的LaTeX程序进行排版工作, 产生排版的结果.
2 LyX与Word的差别
在谈到文字处理和排版时, 相信很多人马上就会想到Microsoft Word, 似乎Microsoft Office已经成了文字处理和排版软件的代名词, 很多人已经习惯了Word的排版方式了. 习惯使用Word的人在初次接触LyX时往往会很不习惯, 如打开LyX后即不能选择字体的式样和大小, 也不能用TAB键来对齐文本, 连想要插入空格将文字摆到自己喜欢的位置都不可能. 其实LyX, 或更确切的说是LaTeX, 和MS Word的设计哲学就存在着根本的差别, Word讲究的是所谓"所见即所得"(WYSIWYG--What You See Is What You Get), 而LaTeX讲究的是"所见即所思"(WYSIWYM--What You See Is What You Mean), 在LyX的屏幕上看到的根本就不是真正的输出结果, 只是大致的文章结构. 用Word写文章时, 你要花很大精力在文章的版式, 字体的大小, 字形选择等琐碎的事情中, 而用LyX排版时你可以将注意力集中到写文章上, 只需用鼠标拉一拉点一点, 告诉LyX这行属于标题(Title), 这段属于正文(Standard)等环境就可以了, 其他如版面格式, 字体字形等排版工作你大可不必费心, 这些繁杂的工作完全由LaTeX程序来完成.
这就是LyX和Word的最大不同. 事实上想写一篇规规矩矩的文章, 大可不必花费太多的时间和精力在排版的细节上, 而LyX正好符合这样的要求. 而用Word写一篇文章时往往要花费很多的时间和精力在对齐, 字形字体大小, 行距字距等排版的细节上, 特别在处理长文件时, 稍有不慎就可能会出现章节编号, 标题字体及格式不统一的现象. LyX(或说LaTeX)的这些特色特别适合于较长或格式固定的文章, 如学术论文和书籍排版.
3 中文LyX软件的安装
如果不用中文的话, 在Linux下安装LyX比在MS Windows下安装Word还要容易, 因为目前的Linux版本都安装有TeTeX, 只要到LyX开发者的网站上(http://www.lyx.org)下载相应版本的rpm包或源码文件安装即可. 而支持中文的LyX的安装可能要费一番力气才行, 这主要是因为目前TeTeX和其它大部分LaTeX版本没有附带直接的中文支持, 但大陆TurboLinux4.0以上版本和台湾的包含CLE的Linux版本都提供了完整的中文LyX环境, 只要安装时选中这些安装包即可顺利使用LyX编辑中文文件了. 本文以XteamLinux4.0版为基础, 介绍中文LyX环境的安装.
3.1 准备必要的软件包
LaTeX已经是linux版本中的基本部分了, 无论你手边的是哪一个Linux版本, 你都可以在它的安装光盘上找到LaTeX的安装包, 目前在Linux下使用最普遍的LaTeX软件为TeTeX, 但大部分不支持中文的使用. 所以要使用中文LyX必须首先安装LaTeX的中文支持. 在Linux下目前使用较多的是CJK(中, 日, 韩)环境.
在开始安装之前首先准备好必要的软件包. 以下是XteamLinux4.0下安装LaTeX中文支持(CJK)和中文CJK-LyX的安装包:
+---------------------------------------+-------------------------------------------+
| 软件包 | 来源 |
+---------------------------------------+-------------------------------------------+
+---------------------------------------+-------------------------------------------+
| CJK-current.tar.gz | http://www.ctan.org |
+---------------------------------------+-------------------------------------------+
| freetype-contrib-2.0.1-4CLE.i386.rpm | http://cle.linux.org.tw |
+---------------------------------------+-------------------------------------------+
| xform-0.88-3.i386.rpm | http://cellular.phys.pusan.ac.kr/cjk.html |
+---------------------------------------+-------------------------------------------+
| CJK-LyX-1.1.6fix3-src.tar.gz | http://cellular.phys.pusan.ac.kr/cjk.html |
+---------------------------------------+-------------------------------------------+
| CJK-LyX-1.1.6fix3-menu-patch | http://cellular.phys.pusan.ac.kr/cjk.html |
+---------------------------------------+-------------------------------------------+
3.2 中文LaTeX环境CJK的安装
CJK是Werner Lamberg的杰作, 是中文(Chinese), 日文(Japanese)和韩文(Korean)三国文字的缩写. 事实上, CJK能够支持在LaTeX中使用包括中文, 日文, 韩文在内的多种亚洲双字节文字. CJK是LaTeX2e的一个宏包, 可以用LaTeX输出标准的dvi文件, 可以在任何DVI Viewer中预览和打印, 无需象CCT那样要用patchdvi进行处理, 而且可以使用TeX和LaTeX的新功能, 如用pdfTeX, pdfLaTeX生成pdf文件, 以及用LaTeX2html生成html文件等.
1. 安装CJK-current.tar.gz
以root身份登入系统. 在家目录下建一个临时子目录temp (mkdir temp).
将CJK-current.tar.gz和freetype-contrib-2.0.1-4CLE.i386.rpm拷贝到temp子目录中.
解开CJK-current.tar.gz
tar xzvf CJK-current.tar.gz
将texinput目录拷贝到texmf目录中
cp /cjk-current/texinput /usr/share/texmf/tex/latex/CJK
cd /usr/share/texmf/tex/latex/CJK/GB
修改或创建文件 c10fs.fd, c10hei.fd, c10kai.fd, c10song.fd, c11fs.fd, c11hei.fd, c11kai.fd, c11song.fd, c19fs.fd, c19hei.fd, c19kai.fd,
c19song.fd, c20fs.fd, c20hei.fd, c20kai.fd, c20song.fd, c21fs.fd, c21hei.fd, c21kai.fd, c21song.fd
下面是c10fs.fd, 其他文件做相应修改或创建
% This is the file c10fs.fd of the CJK package
% for using Asian logographs (Chinese/Japanese/Korean) with LaTeX2e
%
% created by Werner Lemberg <wl@gnu.org
%
% Version 4.2.0 (10-Jan-2001)
%
\def\fileversion{4.2.0}
\def\filedate{2001/01/10}
\ProvidesFile{c10fs.fd}[\filedate\space\fileversion]
%
% simplified Chinese characters
%
% character set: GB 2312-80
% font encoding: CJK (standard)
%
\DeclareFontFamily{C10}{fs}{}
\DeclareFontShape{C10}{fs}{m}{n}{<- CJK * gbfs}{}
\DeclareFontShape{C10}{fs}{bx}{n}{<- CJKb * gbfs}{\CJKbold}
\DeclareFontShape{C10}{fs}{m}{it}{<- CJK * gbfssl}{}
\DeclareFontShape{C10}{fs}{bx}{it}{<- CJKb * gbfssl}{\CJKbold}
\DeclareFontShape{C10}{fs}{m}{sl}{<- CJK * gbfssl}{}
\DeclareFontShape{C10}{fs}{bx}{sl}{<- CJKb * gbfssl}{\CJKbold}
\endinput
2. 安装ttf2pk, 执行:
rpm -i freetype-contrib-2.0.1-4CLE.i386.rpm
cd /usr/share/texmf/ttf2pk
修改ttfonts.map内容如下:
gbfs@UGB@ simfang.ttf Pid = 3 Eid = 1
gbfssl@UGB@ simfang.ttf Slant=0.25 Pid = 3 Eid = 1
gbkai@UGB@ simkai.ttf Pid = 3 Eid = 1
gbkaisl@UGB@ simkai.ttf Slant=0.25 Pid = 3 Eid = 1
gbhei@UGB@ simhei.ttf Pid = 3 Eid = 1
gbheisl@UGB@ simhei.ttf Slant=0.25 Pid = 3 Eid = 1
gbsong@UGB@ simsun.ttf Pid = 3 Eid = 1
gbsongsl@UGB@ simsun.ttf Slant=0.25 Pid = 3 Eid = 1
gbksong@UGBK@ simsun.ttf Pid=3 Eid=1
gbksongsl@UGBK@ simsun.ttf Slan