别人笑我太疯癫,我笑他人看不穿;不见武林豪杰梦,无花无酒锄作田!
最近在这么忙的环境下,还花了好几天在配置Texlive2008 + XeCjk/Zhspacing + ctex
(当然以前我选择的是Texlive2008 + CJK + ctex,大伙若要看看CJK的配置可以看我的blog:
http://blog.sina.com.cn/haixiangzhang),不记录点东西真的对不住我这几天的折腾!
也是为了给老师一个论文的大概,现在我总结一下我这几天在忙些什么,也算是对自己的一种负责吧!
大伙有时间可以参考:同济大学BBS上的名为”ubuntu下利用texlive 2008的中文简单安装、配置“的文章!
一 ,字体
xetex支持使用系统自带的字体,而系统自带的字体都放在 /usr/share/fonts/ 这个目录下,所以你可以把你手上有的字体都放到这个目录下的truetype文件下,这里介绍几种字体的安装方法:
one. sudo apt-get install ttf-wqy-zenhei xfonts-wqy
two. 复制windows下C:/windows/Fonts/下的东东到这个目录!
three. 至于黑体大家可以到网上去下载!
这里就介绍这三种方法吧!然后让你的字体生效,执行如下命令:
fc-cache -fv
fc-list | grep *** (看那种字体是否装上了)
二, 安装
下载完了执行如下命令:
gksu synaptic(打开synaptic ,把2007 cut off)
sudo apt-get install lzma
lzma -d texlive2008.iso.lzma
sudo mount -o loop /path/to/texlive2008.iso /mnt/iso
sudo apt-get perl-tk p7zip
sudo ./install-tl --gui
图形化的界面很容易操作的!讲到了图形化界面那就来讲讲texlive在图形化界面下的操作:(命令如其名)
tlmgr (tex live manager )
sudo tlmgr option location ftp://ftp.ctex.org/CTAN/systems/texlive/tlnet/2008 配置地址源
sudo tlmgr --help
sudo tlmgr update -list
sudo tlmgr update -all
如果少了某个包什么的,比如说这样一个包macrobag
sudo tlmgr search --global macrobag
sudo tlmgr install macrobag ***
让texlive2008生效,执行:
sudo mktexlsr (make tex ls-R)
加入环境变量于~/.bashrc ~/.profile /etc/bash.bashrc /etc/profile
PATH=/usr/local/texlive/2008/bin/i386-linux:$PATH;
sudo texhash(activate it)
三, 中文的处理
声明:texlive2008能够进行中文文档的处理,但是中英混排的显示效果不算很好!
处理的方式: 使用zhspacing 或者xeCJK来处理,两者都整合到了ctex-kit这个项目中去了!同时注意的一点就是xecjk-2.3.7(ctex-kit中的)支持texlive 2009但是不支持这里使用的texlive 2008,ctex-kit项目主页上的xecjk-2_2_15.zip才支持texlive 2008
下载方式: svn checkout http://ctex-kit.googlecode.com/svn/trunk/ ctex-kit-read-only
wget http://ctex-kit.googlecode.com/files/xecjk-2_2_15.zip
操作:两者的操作几乎是一样的,如下:
cp -R /path/to/zhspacing/ /usr/local/texlive/texmf-local/tex/xelatex/ or
cp -R /path/to/zhspacint/ ~/.texlive2008/texmf-var/tex/xelatex
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
cp -R /path/to/xecjk-2_2_15/ /usr/local/texlive/texmf-local/tex/xelatex or
cp -R /path/to/xecjk-2_2_15/ ~/.texlive2008/texmv-var/tex/xelatex
生效:sudo mktexlsr
sudo texhash
Hint: texconfig conf命令可以让你了解texlive的config file 、 map files 等等!还有什么TEXLOCAL等等!
四 , auctex + emacs 写latex
sudo apt-get install auctex
;;;;;;;;;;;;;;;;;;;auctex 在~/.eamcs中的配置;;;;
(load "auctex.el" nil t t)
(load "tex-site.el" nil t t)
(load "preview-latex.el" nil t t)
(setq TeX-electric-escape t)
(setq LaTeX-math-mode t)
;make AUCTEX aware of style files and multi-file documents right away
(setq TeX-auto-save t)
(setq TeX-parse-self t)
(setq-default TeX-master nil)
(setq TeX-auto-untabify t) ;; 不使用 TAB字符缩进
(setq LaTeX-document-regexp "document//|CJK//*?") ;; CJK 环境中不缩进
;(setq TeX-newline-function 'newline-and-indent) ;;回车时自动缩进
(add-hook 'LaTeX-mode-hook #'LaTeX-install-toolbar)
;(add-hook 'LaTeX-mode-hook 'turn-on-auto-fill)
(add-hook 'LaTeX-mode-hook 'turn-on-reftex)
(autoload 'LaTeX-preview-setup "preview")
(add-hook 'LaTeX-mode-hook #'LaTeX-preview-setup)
(autoload 'reftex-mode "reftex" "RefTeX Minor Mode" t)
(autoload 'turn-on-reftex "reftex" "RefTeX Minor Mode" nil)
(autoload 'reftex-citation "reftex-cite" "Make citation" nil)
(autoload 'reftex-index-phrase-mode "reftex-index" "Phrase mode" t)
(setq reftex-plug-into-AUCTeX t)
(setq reftex-revisit-to-follow t
reftex-auto-recenter-toc t)
(add-hook 'TeX-mode-hook
(lambda ()
(setq reftex-plug-into-AUCTeX t)
(turn-on-reftex)
(define-key LaTeX-mode-map (kbd "TAB") 'TeX-complete-symbol)
(TeX-PDF-mode t)
(setq TeX-save-query nil )
(setq TeX-show-compilation t)
))
(add-hook 'LaTeX-mode-hook (lambda()
(add-to-list 'TeX-command-list
'("XeLaTeX" "%`xelatex%(mode)%' %t" TeX-run-TeX nil t))
(setq TeX-command-default "XeLaTeX")
(setq TeX-save-query nil )
(setq TeX-show-compilation t)
))
;;;;;; 增加 math, reftex 等模式,有数学符号的栏目辅助输入等等
(add-hook 'LaTeX-mode-hook
(lambda ()
(LaTeX-math-mode)
(imenu-add-menubar-index)
(turn-on-reftex)
(turn-off-auto-fill)
))
;;;;;; 用 evince 预览 pdf
(add-hook 'LaTeX-mode-hook
(lambda ()
(setq TeX-output-view-style (cons '("^pdf$" "." "evince %o")
TeX-output-view-style))
))
;;把beamer的frametitle也放入reftex目录缓冲中,但需要把/frametitle写在行首
(setq reftex-section-levels
'(("part" . 0) ("chapter" . 1) ("section" . 2)
("subsection" . 3)
("frametitle" . 4) ("subsubsection" . 4)
("paragraph" . 5)
("subparagraph" . 6) ("addchap" . -1) ("addsec" . -2)))
;;如何编辑编译 Asymptote 的 .asy 文件
;(add-to-list 'load-path "C:/Program Files/Asymptote")
(autoload 'asy-mode "asy-mode.el" "Asymptote major mode." t)
(autoload 'lasy-mode "asy-mode.el" "hybrid Asymptote/Latex major mode." t)
(autoload 'asy-insinuate-latex "asy-mode.el" "Asymptote insinuate LaTeX." t)
(add-to-list 'auto-mode-alist '("//.asy$" . asy-mode))
;;编辑编译 MetaPost 的 .mp 文件
(defun mpost-compile ()
"Compile current file with MetaPost."
(interactive)
(save-buffer)
(compile (concat "mpview --preview=eps --viewer=gs"
(file-name-nondirectory buffer-file-name))))
(add-hook 'metapost-mode-hook
'(lambda nil
(define-key meta-mode-map "/C-c/C-c" 'mpost-compile)))
(add-hook 'metapost-mode-hook
'(lambda nil
(define-key meta-mode-map "/t" 'meta-complete-symbol)
))
;;;;;;;;;;;;;;;;;;;;;;;;;;;end of configuration;;;;;;;;;;;;;;
快捷键: Ctrl-c Ctrl-c 自动编译 再按一次看文档
Ctrl-c Ctrl-v quick view by xpdf(default)
实例如下:
;;;;;;;;;;;;;;;;;;;;;; the begining of example;;;;;;
/documentclass[12pt,a4paper]{article}
/usepackage{xltxtra,fontspec,xunicode}
/usepackage[slantfont,boldfont]{xeCJK} % 允许斜体和粗体
/usepackage{amsmath}
/setCJKmainfont{SimSun} % 设置缺省中文字体
/setCJKmonofont{SimSun} % 设置等宽字体
/setmainfont{Lucida Grande} % 英文衬线字体
/setmonofont{Lucida Grande} % 英文等宽字体
/setsansfont{Lucida Grande} % 英文无衬线字体
/begin{document}
Production fucntion for firm i could be written as/footnote{方
程式最早来自于Spence(1976),他以积分的形式来表示不同intermediate goods
input所产生的util总和,见Spence(1976)的公式(45)。 在Spence(1976)的基础上,
Dixit and Stiglitz(1977)对该方程作以一定修订,将积分改为求和的公式,以更恰当体
现intermediate inputs的特性,见Dixit and Stiglitz(1977)的公式(2)。
Ethier(1982) 在生产函数中利用了该求和公式,见Ethier(1982)的公式(2')。
Romer(1987,1990)首次在内生经济增长和技术进步的模型中用了Ethier(1982)的这条
公式表述形式。}
/begin{equation}
Y_{i}=A/cdot L_{i}^{1-/alpha}/cdot
/sum_{j=1}^{N}(X_{ij})^/alpha /label{Eq-6.1}
/end{equation}
/end{document}
;;;;;;;;;;;;;;;;;;;;;;;the end of the example;;;;;;;;;;;;
五 , jabref处理参考文献
执行命令:
sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts
sudo apt-get install jabref
中文以及使用太多了,下次再写吧!基本步骤是add->generate bibtex key ->save(Ctrl s)
插入.bib的方式:(这里讲我用的方式)
直接利用auctex中的reftex功能:Ctrl c [ 插入参考文献(按提示操作)
编译生成:
1) xelatex *.tex 编译正文 2) bibtex *.tex 编译参考文献 3) xelatex 整合到一起!