zoukankan      html  css  js  c++  java
  • ubuntu下安装与使用vimlatex suite

    由于没从源里安装texlive,所以没法直接从源里安装kile、winefish、rubber。首先考虑用gedit编辑latex文档,并 且下了一个gedit的latex插件,但是好像这个插件需要rubber(有没有人能解决这个问题阿,求助!),所以考虑用vim的latex- suite插件。
    1、首先,下载这个插件
    这个网页下面还给了安装方法,可我还是搞了很多次,终于成功,记录下来。
    2、安装
    2.1在/home/用户名 (即~目录)目录下新建.vim文件夹,.vimrc文件
    2.2 在下载下来的vim-latex-1.5-20091002-r1074.tar.gz上点鼠标右键(我还不是很习惯用命令行作这些“日常事务”,呵呵;-)
    选中解压得到的vim-latex-1.5-20091002-r1074文件夹下的所有文件及文件夹,拷贝到新建的~/.vim中
    2.3 在~/.vim/ftplugin目录下新建文档tex.vim,输入以下内容(从vim-latex主页上拷贝即可):
    " this is mostly a matter of taste. but LaTeX looks good with just a bit

    " of indentation.

    set sw=2

    " TIP: if you write your /label's as /label{fig:something}, then if you

    " type in /ref{fig: and press <C-n> you will automatically cycle through

    " all the figure labels. Very useful!

    set iskeyword+=:



    2.4 在新建的~/.vimrc文档中输入以下内容,告诉vim加载latex-suite插件(也可以从主页上copy;-)



    " REQUIRED. This makes vim invoke Latex-Suite when you open a tex file.

    filetype plugin on



    " IMPORTANT: win32 users will need to have 'shellslash' set so that latex

    " can be called correctly.

    set shellslash

    " IMPORTANT: grep will sometimes skip displaying the file name if you

    " search in a singe file. This will confuse Latex-Suite. Set your grep

    " program to always generate a file-name.

    set grepprg=grep/ -nH/ $*

    " OPTIONAL: This enables automatic indentation as you type.

    filetype indent on

    " OPTIONAL: Starting with Vim 7, the filetype of empty .tex files defaults to

    " 'plaintex' instead of 'tex', which results in vim-latex not being loaded.

    " The following changes the default filetype back to 'tex':

    let g:tex_flavor='latex'



    2.5 设置Vim-latex-suite

    我现在使用xelatex命令进行文档的编译,利用evince浏览生成的pdf文档。可以通过修改

    ~/.vim/ftplugin/latex-suite/texrc完成这些操作。

    第88到92行,我进行了如下修改

    88 if has('macunix')

    89   TexLet g:Tex_DefaultTargetFormat = 'pdf'

    90 else

    91  TexLet g:Tex_DefaultTargetFormat = 'pdf'

    92 endif

    就是让tex总是被编译成pdf



    第117行修改为

    114 " ways to generate pdf files. there are soo many...

    115 " NOTE: pdflatex generates the same output as latex. therefore quickfix is

    116 " possible.

    117 TexLet g:Tex_CompileRule_pdf = 'xelatex -interaction=nonstopmode $*'

    使用xelatex完成 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文档。



    2.4 重启vim

    话说怎么个重启法?我就直接注销,然后重新登录了,呵呵呵,很笨很傻很有效;-)

    (关闭Vim程序再打开,就算重启一次了,不必注销那么麻烦)

    这时候用vim打开一个后缀为.tex的文档,就可以在vim中看到关于latex的工具栏选项了。



    使用过程中的几个“窍门”:



    1. 初用时需熟记的几个键:Ctrl-J,F5, F7,F9,Shift-F5,Shift-F7,/ll (compile快捷键),/lv(view pdf 快捷键),/ls,Ctrl-X Ctrl-K(根据字典补全) 等。



    2.  写出/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
                          就行了!
    3. 为了能够正向搜索,应设定好参数并使用/ll编译,然而当工作目录下有makefile时,/ll并非执行设定的编译命令,而是执行makefile,于 是导致无法正向搜索,郁闷了半天。其实只要禁用makefile即可,同样~/.vim/ftplugin/latex-suite/texrc中
    TexLet g:Tex_UseMakefile = 0
    4. 正向搜索设置,在 ~/.vim/ftplugin/tex.vim 中指定
    let g:Tex_CompileRule_dvi='latex -src-specials -interaction=nonstopmode $*'
    说明上说还要设定  :TCTarget dvi ,可是没有设也行,反而把这句话写在上面文件中时运行vi会提示错误,但是在vi中执行该命令却可以,反正能用就不管它了。设定好了以后需重新编译tex文件(用/ll),然后/ls可以搜索并预览。

    5. 反向搜索,参考了 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源文件的相应地方。

    6.  为了方便,自己也做了一些设置,包括快捷键,在 ~/.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两个次,中间的“.”被当做词的分隔符了。
    7. 其实只要 
    latex -src-specials -interaction=nonstopmode  xxx.tex
        编译出的dvi文件,就已经包含了正向与反向搜索的信息,就可以正向或反向搜索,如果是用xdvi打开的话,按Ctrl左键单击便可反向搜索,只不过xdvi默认弹出的是 xterm -e vi 的窗口,其实是可以自己指定编辑器的,比如
    xdvi -editor gedit
    照样反向搜索,至于上面所加的gvim的参数只是保证不是每次反向搜索都要打开一个gvim窗口而已。

    8. 临时取消快捷键定义,比如你想输入双引号,可是一打出"就自动变成``,那么要怎么禁止自动替换,直接输出"呢?
    记住 <Ctrl-v> 即可!
    <Ctrl-v>" 得到 "
    SS<Ctrl-v>S 得到 SSS
    ~<Ctrl-v>~ 得到 ~~
    原文地址:http://blog.csdn.net/guanggy
  • 相关阅读:
    js打开新窗口
    JS普通浏览器页面传参
    MUI之移动APP页面之间传递参数
    flex布局原理
    css3之Tab页面切换
    css之左边竖条的实现方法
    “程序猿”——要理清你的思路!
    win32调试——OutputDebugString
    des加密——补齐
    SVN 过滤文件
  • 原文地址:https://www.cnblogs.com/math2010/p/2454585.html
Copyright © 2011-2022 走看看