您的位置:首页 > 产品设计 > UI/UE

Vim + LaTeX-Suite + Skim的配置以及中文环境设置

2018-02-09 15:48 513 查看
这篇文章分一下几部分

- 前言

- LaTeX-Suite的安装及配置

- Skim的安装及在LaTeX-Suite下的配置

- 中文的处理

- \cite补全问题

如果你刚刚接触LaTeX

如果你和我一样是LaTeX的新手,其实这几天折腾下来之后,我对新人的推荐是先别做任何的环境配置。不如找一款免费的网上编辑器,先动手写一些LaTeX。归根到底, LaTeX是一门工具,能用就行。而且LaTeX的环境配置真的是十分painful,特别是当你选择在Vim上编辑它的时候。

如果你和我一样不怕折腾,想弄出一个舒服的配置环境,请往下看。

LaTeX-Suite的安装

首先是LaTeX的安装,请移步github 或者在Vim的官网下载。

根据Manual,复制以下代码到你的vim-latex/ftplugin/tex.vim:

" 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 alway 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'


这样,你的LaTeX-Suite已经基本配置完成了。

Skim的安装及在LaTeX-Suite下的配置

先去Skim官网下载。

开始配置,这段部分总结自。在安装完Skim后,复制如下代码到你的vim-latex/ftplugin/tex.vim:

let g:Tex_DefaultTargetFormat = 'pdf'

let g:Tex_CompileRule_dvi = 'latex --interaction=nonstopmode $*'
let g:Tex_CompileRule_ps = 'dvips -Pwww -o $*.ps $*.dvi'
let g:Tex_CompileRule_pspdf = 'ps2pdf $*.ps'
let g:Tex_CompileRule_dvipdf = 'dvipdfm $*.dvi'
let g:Tex_CompileRule_pdf = 'pdflatex -synctex=1 --interaction=nonstopmode $*'

let g:Tex_ViewRule_dvi = 'texniscope'
let g:Tex_ViewRule_ps = 'Preview'
let g:Tex_ViewRule_pdf = 'Skim'

let g:Tex_FormatDependency_ps  = 'dvi,ps'
let g:Tex_FormatDependency_pspdf = 'dvi,ps,pspdf'
let g:Tex_FormatDependency_dvipdf = 'dvi,dvipdf'

" let g:Tex_IgnoredWarnings ='
"       \"Underfull\n".
"       \"Overfull\n".
"       \"specifier changed to\n".
"       \"You have requested\n".
"       \"Missing number, treated as zero.\n".
"       \"There were undefined references\n".
"       \"Citation %.%# undefined\n".
"       \"\oval, \circle, or \line size unavailable\n"'


这段配置的作用主要是 1. 设置Skim为你LaTeX的默认浏览器。 2. 设置pdflatex为你的compileEngine。 3. 设置一些基本的依赖关系 (如果你是新手,暂时不需要去管这块。)

3. 打开你的Skim, (我的操作系统是Mac)进入左上角的perference -> Sync. 在下方的Sync Support里选择vim,并把Check for files changes 以及 Reload Automatically勾上。这样Skim就能同步展现你在Vim下做的任何修改。

于此,你也完成了Skim的基本配置。 现在在Vim下使用\ll编译文档后再使用\ls就可以通过skim来预览你的文档了。 之后做出任何修改后,使用\ll, Skim会自动同步文档。

中文的配置

刚才在tex.vim配置下有这么一行代码:

let g:Tex_CompileRule_pdf = 'pdflatex -synctex=1 --interaction=nonstopmode $*'


它告诉LaTeX-Suite用pdflatex去编译的你文件。 但是如果需要中文支持,我们可以(但不仅限于)使用xelatex。所以简单的把代码改成

let g:Tex_CompileRule_pdf = 'xelatex -synctex=1 --interaction=nonstopmode $*'


就可以了。

\cite补全问题

LaTeX-Suite下\cite自动补全需要用到python。请打开你的vim,确保

echo has("python")
或者
echo has("python3")
中的一个返回1 。 如果都不是,那我认为你肯定也是一个Vim新手。 请去你喜欢的搜索引擎搜索 “config vim with python support”。

其他

Vim + LaTeX-Suite 是一个非常强大的工具。 你会发现有很多技巧可以帮助你提高效率, 也有很多地方需要你去仔细阅读Manual。记得勤读手册并活用搜索。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Vim LaTeX-Suite LaTeX