Wednesday, May 20, 2009

最近用LaTeX排版的小小心得备忘

很凌乱的一些东西,而且还无法保证正确性 :D

  1. 写数学符号式符号时,要注意语义的逻辑性.比如x,y应该写成$x$,$y$,而不是贪方便写成$x,y$.
  2. 对于某些词语, 如Prof. Xu, 那个`.'并不是句号,因此使用Prof.\ Xu表示句子还没结束.
  3. 使用aspell与diction检查词法与语法错误.
  4. 引用文献时,应该根据情况使用`~', 以保持连贯性不换行. 如Xu \cite{xxx},如果在Xu与\cite之间不加~,则可能排版时它们在不同行,这是不对的做法.
  5. 关于断字, hyphenation. 可以使用\hyphenation{word list}指定TeX断字的规则,也可以直接显示地在有些特意要断字的地方用\-来插入断字提示.如:
    helloworld -> hello\-world 指明这个词只能在hello与world之间断字.
    关于断字: 在英文排版中, knuth爷爷认为一行中如果出现太多了空白很难看, tex虽然能自动断字,但是不能做到100%正确,而且有些字是自造的,字典里没有.
    因此有必要自己断字. 有时在编译文档时看到overfull hbox ... 很可能就是因为断字失败出现了问题.(参见lshort与lnotes)
  6. 使用\documentclass[conference]{IEEETran}来使用IEEE的双栏会议文档类.
  7. 在linux下, 使用pdfopen  --file [filename]可以在不关闭acroread文档的情况下,重新加载文档 .这对使用vim-latexsuite的人(我)来说非常方便!
    只需要设置好快速查看的命令, \lv即可查看. 另外,结合 wmctrl -a [filename]可以把焦点转移到该文档上!
  8. 排版表格时善用multirow与multicol, 得到不同行宽与列宽的表格. 使用\parbox{}{}可以实现cell内词语的自动换行.
  9. 使用minipage与subfigure排版并列的figure,其中minipage可以控制大小, 而subfigure比较方便与自动化,详见 latex插图指南.
  10. algorithm2e宏包可以产生漂亮的算法,但是不知为什么会overfull hbox
  11. 如果想在表格下面放footnote,可用minipage先把tabular包起来,但是不只道这是不是正确的做法...

3 comments:

Meng said...

Hi, do you use emacs to write the tex file? Any suggestions on some pre-defined macro packages so that the work can be eased...

Thanks.

Ivan Z. G. Xiao said...

@George Wang
No, I use vim/kile in Linux and winedt in CTeX suite in Windows

Iveney XIAO said...

@George Wang
No, I use vim/kile in Linux and winedt in CTeX suite in Windows