在编写latex文档时,\vspace和\vskip命令都能产生一个垂直距离。然而两者有什么区别呢?
1. \vspace是latex命令,\vskip是tex命令。
2. 使用方法:
\vspace{1cm};
\vskip 1cm;
3. 效果的区别
\vspace命令是在命令出现的当前行输出完后,才生成垂直间距;生成间距后,继续之前段落的内容(逻辑上还是相同的一段);
\vskip命令是在命令出现时立马生成垂直间距;生成间距后,开始一个新的段落(逻辑上分段)。
2012年9月21日星期五
2012年9月20日星期四
vim批注的快捷方式
这里不介绍常用的visual模式下方法,也不给出常用命令的替换方式,而是给出一种映射方式。
当然,NERD_comment.vim插件也提供了快捷注释的功能,这里也不多述。
这里的注释符号以‘%’为例,在vimrc文件中加入如下语句:
" F4 for comment
vmap <F4> :s=^\(\)=\%=g<cr>:noh<cr> % visual 模式下
nmap <F4> :s=^\(\)=\%=g<cr>:noh<cr> % normal 模式下
imap <F4> <ESC>:s=^\(\)=\%=g<cr>:noh<cr> % insert模式下
" F6 for uncomment
vmap <F6> :s=^\(%\)==g<cr>:noh<cr>
nmap <F6> :s=^\(%\)==g<cr>:noh<cr>
imap <F6> <ESC>:s=^\(%\)==g<cr>:noh<cr>
当然,NERD_comment.vim插件也提供了快捷注释的功能,这里也不多述。
这里的注释符号以‘%’为例,在vimrc文件中加入如下语句:
" F4 for comment
vmap <F4> :s=^\(\)=\%=g<cr>:noh<cr> % visual 模式下
nmap <F4> :s=^\(\)=\%=g<cr>:noh<cr> % normal 模式下
imap <F4> <ESC>:s=^\(\)=\%=g<cr>:noh<cr> % insert模式下
" F6 for uncomment
vmap <F6> :s=^\(%\)==g<cr>:noh<cr>
nmap <F6> :s=^\(%\)==g<cr>:noh<cr>
imap <F6> <ESC>:s=^\(%\)==g<cr>:noh<cr>
本质也是vim的替换命令。
:noh表示nohlsearch命令。
重新打开一个新的terminal后,F4和F6就可以用来添加注释和取消注释了。
2012年9月13日星期四
octave 默认编辑器修改
octave的默认编辑器是emacs,如何将其修改为vim或gedit呢?
首先,新建~/.octaverc文件;
然后,在文件中添加如下语句:
edit editor "vim %s" #使用gvim作为编辑器
edit editor "gnome-terminal -e \"vim %s\"" #在gnome-terminal中打开vim作为编辑器
edit editor "gedit %s" #使用gedit作为编辑器
其中,前两句修改成vim,后一句修改成gedit,根据情况自己选择其中一种吧。
首先,新建~/.octaverc文件;
然后,在文件中添加如下语句:
edit editor "vim %s" #使用gvim作为编辑器
edit editor "gnome-terminal -e \"vim %s\"" #在gnome-terminal中打开vim作为编辑器
edit editor "gedit %s" #使用gedit作为编辑器
其中,前两句修改成vim,后一句修改成gedit,根据情况自己选择其中一种吧。
2012年9月11日星期二
latex 数学粗体符号
数学符号通常要求是斜体,如何获得斜体的粗体符号呢?
latex中,通常有以下三种主要方式获得粗体符号:
latex中,通常有以下三种主要方式获得粗体符号:
- latex自身提供的\mathbf命令
- "amsmath"宏包提供的\boldsymbol和\boldmath命令;
- "bm"宏包提供的\bm命令.
以上三种方式又有哪些区别呢?
首先介绍\mathbf命令
- 用法:$\mathbf{abc}$
- 该命令可以得到粗体字母,但是是直立罗马的粗体,并非斜体;
- 该命令只对普通字母a-z,A-Z起作用;
接下来介绍\boldsymbol
- 用法:$\boldsymbol{abc}$
- 该命令可以得到斜体粗体字母;
- 该命令即可以对普通字母起作用,也可以对希腊字母起作用.
\boldmath命令
- 用法:\boldmath $abc$ \unboldmath
- 该命令可以得到\boldsymbol命令的结果
- 该命令是对整个数学公式起作用(包括数学公式中的标点符号等),而其它几个命令都是对公式中的部分符号起作用。
\bm命令
- 用法:\bm{abc}
- 该命令与\boldsymbol命令结果相同
举例:
2012年9月10日星期一
latex-suite技巧总结
1. 输入模式下, F5插入环境。
3.输入((,{{,[[之类的符号可自动替换成\left\right类型
4.三个大写字母,快速插入环境
6. 设置编译命令
打开.tex文件,normal模式下,输入\ll命令,可以编译文件;\lv命令可以查看编译结果;但通常情况下默认的编译命令对应的是latex, 查看结果对应的是dvi.
现在希望使用pdflatex命令,用evince查看pdf文档,修改~/.vim/ftplugin/latex-suite/texrc文件:
第一处(91行左右,不同版本位置稍有不同),
88 if has('macunix')
89 TexLet g:Tex_DefaultTargetFormat = 'pdf'
90 else
91 TexLet g:Tex_DefaultTargetFormat = 'pdf'
92 endif
让tex总是被编译成pdf
第二处(147行左右),
144 elseif has('macunix')
145 "Let the system pick. If you want, you can override the choice here.
146 TexLet g:Tex_ViewRule_ps = ''
147 TexLet g:Tex_ViewRule_pdf = 'evince'
指定用evince程序打开pdf文档。
重启VIM后,以上修改即可生效。
nmap <Tab> <C-j> 用Tab键代替Ctrl-j跳转
imap <Tab> <C-j>
vmap <Tab> <C-j>
map <F2> <ESC>:w<CR>\ll "F2保存并编译(如果maplead改成了",",该命令变为,ll)
imap <F2> <ESC>:w<CR>\ll
map <F3> <ESC>\lv "F3查看
imap <F3> <ESC>\lv
8. 临时取消快捷键定义,比如你想输入双引号,可是一打出"就自动变成``,那么要怎么禁止自动替换,直接输出"呢?记住 <Ctrl-v> 即可!如:
<Ctrl-v>" 得到 "
SS<Ctrl-v>S 得到 SSS
~<Ctrl-v>~ 得到 ~~
- 在空白行,按下F5后,会给出一些环境选项,如果没有你想要的环境名,可以直接输入。
- 如果一行中有个word,按下F5后,该word即作为环境名;
- 选中一些文本后,按下F5,选择或者输入环境名后,选中的文本即可作为该环境的内容。
- SHIFT+F5,更换环境名
3.输入((,{{,[[之类的符号可自动替换成\left\right类型
4.三个大写字母,快速插入环境
- EFA -----> flushleft
- EFR -----> flushright
- EEA -----> equarray
- EEQ -----> equation
- EQE -----> quote
- EQN -----> quotation
- ELI -----> list
- EDE -----> description
- EEN -----> enumerate
- EIT ------> itemize
- ETE -----> table
- ETR -----> tabular
6. 设置编译命令
打开.tex文件,normal模式下,输入\ll命令,可以编译文件;\lv命令可以查看编译结果;但通常情况下默认的编译命令对应的是latex, 查看结果对应的是dvi.
现在希望使用pdflatex命令,用evince查看pdf文档,修改~/.vim/ftplugin/latex-suite/texrc文件:
第一处(91行左右,不同版本位置稍有不同),
88 if has('macunix')
89 TexLet g:Tex_DefaultTargetFormat = 'pdf'
90 else
91 TexLet g:Tex_DefaultTargetFormat = 'pdf'
92 endif
让tex总是被编译成pdf
第二处(147行左右),
144 elseif has('macunix')
145 "Let the system pick. If you want, you can override the choice here.
146 TexLet g:Tex_ViewRule_ps = ''
147 TexLet g:Tex_ViewRule_pdf = 'evince'
指定用evince程序打开pdf文档。
重启VIM后,以上修改即可生效。
:TTarget命令可以 修改默认的文件格式。
7. 一些快捷键设置(在~/.vim/ftplugin/tex.vim中修改):nmap <Tab> <C-j> 用Tab键代替Ctrl-j跳转
imap <Tab> <C-j>
vmap <Tab> <C-j>
map <F2> <ESC>:w<CR>\ll "F2保存并编译(如果maplead改成了",",该命令变为,ll)
imap <F2> <ESC>:w<CR>\ll
map <F3> <ESC>\lv "F3查看
imap <F3> <ESC>\lv
8. 临时取消快捷键定义,比如你想输入双引号,可是一打出"就自动变成``,那么要怎么禁止自动替换,直接输出"呢?记住 <Ctrl-v> 即可!如:
<Ctrl-v>" 得到 "
SS<Ctrl-v>S 得到 SSS
~<Ctrl-v>~ 得到 ~~
latex插入多种格式的图片
latex撰写文档的时候,通常要处理多种格式的图片,如何正确处理呢?
首先,简单介绍一下常见的几种图片格式:
首先,简单介绍一下常见的几种图片格式:
- eps 矢量图形,latex能较好处理该格式图片
- jpg 位图,通常照片的格式
- png 位图,方便网络传输的图片格式
- tiff 位图,有压缩和非压缩格式
- pdf (pdf格式的图片兼容性应该很好,因为最后的文档格式也是pdf格式)
然后,介绍常用的latex编译命令,及其能处理的图片格式:
1. latex+dvipdfmx (等价与latex+dvips+ps2pdf)
该命令只能处理eps格式的图形文件
该命令只能处理eps格式的图形文件
2. pdflatex
该命令能够处理jpg, png, jpeg, pdf格式
3. xelatex
该命令能够处理eps和jpg格式的图片
那么,如果需要同时插入eps和png等其它图片格式,该怎么做的?
解决思路有两种:
- 将所有的图片格式转成eps,然后用组合命令latex+dvipdfmx处理;也可以将eps转成其它格式处理(推荐转成pdf),然后用pdflatex处理;
- 修改命令方式或第三方宏包来进行处理,而不需要对图片进行转换。
利用第一种思路,涉及到图片格式的转换,以下简单介绍转换方法。
- png -----> eps ImageMagick/netpbm命令
- jpeg -----> eps ImageMagick/netpbm命令
- tiff -----> eps ImageMagick/netpbm命令
- eps -----> pdf epstopdf命令
- tiff -----> png ImageMagick/netpbm命令
- tiff ------> pdf tif2eps+epstopdf命令
此外,还有convert 命令(可以用脚本实现批处理),ImageMagick/mogrigy命令(可以批处理)。
注:ImageMagick是linux系统下一款图形格式转换软件。
利用第二种思路,实现pdflatex编译命令能够处理eps图片
方法一:将eps图片转成pdf格式,\includegraphics{pic},pdflatex自动调用相应的pdf文件;
方法二:加载epstopdf宏包,\usepackage{epstopdf}, 编译时命令需要带上参数,如下: pdflatex -shell-escape filename.tex (如要生成索引,该命令需要执行两次)
方法一:将eps图片转成pdf格式,\includegraphics{pic},pdflatex自动调用相应的pdf文件;
方法二:加载epstopdf宏包,\usepackage{epstopdf}, 编译时命令需要带上参数,如下: pdflatex -shell-escape filename.tex (如要生成索引,该命令需要执行两次)
订阅:
博文 (Atom)
