[转载]ubuntu下安装与使用vim-latex suite
- 下载插件: 从 http://sourceforge.net/projects/vim-latex/files/ 下载
vim-latex
插件。 - 安装插件:
- 解压下载的压缩包到
~/.vim
目录。 - 设置vimrc: 详细参见:http://vim-latex.sourceforge.net/documentation/latex-suite/recommended-settings.html
- 安装help文件:
helptags ~/.vim/doc
- 设置
Vim-latex-suite
: 使用xelatex
命令进行文档的编译,利用evince
浏览生成的pdf文档。可以通过修改~/.vim/ftplugin/latex-suite/texrc
完成这些操作:#第88到92行,我进行了如下修改,就是让tex总是被编译成pdf
12345if has(‘macunix’)TexLet g:Tex_DefaultTargetFormat = ‘pdf’elseTexLet g:Tex_DefaultTargetFormat = ‘pdf’endif
#第117行修改,使用xelatex完成 tex -> pdf 的编译
1234” ways to generate pdf files. there are soo many…” NOTE: pdflatex generates the same output as latex. therefore quickfix is” possible.TexLet g:Tex_CompileRule_pdf = ‘xelatex -interaction=nonstopmode $*’
#修改147行,指定用evince程序打开pdf文档
1234elseif has(‘macunix’)” Let the system pick. If you want, you can override the choice here.TexLet g:Tex_ViewRule_ps = ”TexLet g:Tex_ViewRule_pdf = ‘evince
- 解压下载的压缩包到
- 重启vim。
- 初用时需熟记的几个键:
Ctrl-J
,F5
,F7
,F9
,Shift-F5
,Shift-F7
,\ll
(compile快捷键),\lv
(view pdf 快捷键),\ls
,Ctrl-X
,Ctrl-K
(根据字典补全) 等。 - 写出
\cite
{ 后按F9
无反应,没有给出交叉引用,原因在于vim中的Python接口对latex-suite来说有些问题,将其禁用即可。只需要将~/.vim/ftplugin/latex-suite/texrc
中默认的打开~/.vim/ftplugin/latex-suite/texrc
, 将
TexLet g:Tex_UsePython = 1
改为
TexLet g:Tex_UsePython = 0
就行了! - 为了能够正向搜索,应设定好参数并使用
\ll
编译,然而当工作目录下有makefile
时,\ll
并非执行设定的编译命令,而是执行makefile
,于 是导致无法正向搜索,郁闷了半天。其实只要禁用makefile
即可,同样~/.vim/ftplugin/latex-suite/texrc
中
TexLet g:Tex_UseMakefile = 0
- 正向搜索设置,在
~/.vim/ftplugin/tex.vim
中指定
let g:Tex_CompileRule_dvi='latex -src-specials -interaction=nonstopmode $*'
说明上说还要设定:TCTarget dvi
,可是没有设也行,反而把这句话写在上面文件中时运行vi会提示错误,但是在vi中执行该命令却可以,反正能用就不管它了。设定好了以后需重新编译tex文件(用\ll),然后\ls可以搜索并预览。 - 反向搜索,参考了 http://bbs.ctex.org/viewthread.php?tid=39072&extra=&page=1
注意反向搜索仅支持gvim
,且gvim
要以远程模式启动:
gvim --servername latex-suite --remote-silent filename.tex
启动后, 为了能够使用反向搜索,必须让xdvi
知道当前编辑器是工作在remote
模式下的VIM,以便在用户搜索的时候调用编辑器显示查找结果。在你的~/.vimrc
或~/.vim/ftplugin/tex.vim
中添加以下内容:
let g:Tex_ViewRule_dvi="xdvi -editor 'gvim --servername latex-suite --remote-silent'"
这样便可\ll
编译后\ls
查看了,反向搜索时记住要按着Ctrl键双击某处 (似乎左键单击即可),就会跳到tex源文件的相应地方。 - 为了方便,自己也做了一些设置,包括快捷键,在
~/.vim/ftplugin/tex.vim
中:map <F4> <ESC>:q<CR>
“F4关闭窗口(buffer)
map <F2> <ESC>:w<CR>\ll
“F2保存并编译
imap <F2> <ESC>:w<CR>\ll
map <F3> <ESC>\lv
“F3查看
imap <F3> <ESC>\lv
nmap <Tab> <C-j>
“用Tab键来代替Ctrl-j跳转,方便多了
imap <Tab> <C-j>
vmap <Tab> <C-j>
set keywordprg=:help
“按K键查找光标处单词的帮助,默认是man
cmap xxx !make
set iskeyword+=.,_
“便于fig.xx,prl101_12345等形式的搜索补全,否则默认情况下不把fig.xx当成一个词,而是当成fig和xx两个次,中间的“.”被当做词的分隔符了。 - 其实只要
latex -src-specials -interaction=nonstopmode xxx.tex
编译出的dvi文件,就已经包含了正向与反向搜索的信息,就可以正向或反向搜索,如果是用xdvi打开的话,按Ctrl左键单击便可反向搜索,只不过xdvi默认弹出的是xterm -e vi
的窗口,其实是可以自己指定编辑器的,比如
xdvi -editor gedit
照样反向搜索,至于上面所加的gvim的参数只是保证不是每次反向搜索都要打开一个gvim窗口而已。 - 临时取消快捷键定义,比如你想输入双引号,可是一打出”就自动变成“,那么要怎么禁止自动替换,直接输出”呢?记住
<Ctrl-v>
即可!
<Ctrl-v>"
得到 ”
SS<Ctrl-v>S
得到 SSS
~<Ctrl-v>~
得到 ~~
原文链接看这里.
本作品采用创作共用版权协议, 要求署名、非商业用途和保持一致. 转载本站内容必须也遵循署名-非商业用途-保持一致的创作共用协议.
发表回复