vim-latex-suite使用手冊(cè)

vim-latex-suite使用手冊(cè)

tau@2015.8.2

導(dǎo)語(yǔ)

快捷鍵是提高效率的不二法則,畢竟十個(gè)手指頭比兩個(gè)手指頭要快得多瞎饲。
使用vim-latex-suite的關(guān)鍵亦是如此沈善。

說明:

  • ||中為在普通模式下輸入的命令乡数;
  • <>中為按鍵,C表示Ctrl闻牡,A表示Alt净赴,S表示Shift;

一澈侠、模板

1. 使用方法

模板存放在$VIM/ftplugin/latex-suite/templates/中劫侧,使用命令|:TTemplate|或者從菜單中可以調(diào)出可用的模板。

2. 定制方法

在$VIM/ftplugin/latex-suite/templates/中建立相應(yīng)的文件即可哨啃。

二、包

1. 使用方法

宏包存放在$VIM/ftplugin/latex-suite/packages/中写妥,從菜單中或者使用按鍵<F5>拳球、命令|:TPackage|都可以調(diào)出可用宏包。

2. 定制方法

在$VIM/ftplugin/latex-suite/packages/中建立相應(yīng)的文件即可珍特,可參考exmpl祝峻。

三、環(huán)境

1. 使用方法

(1)插入

  • 方法1:<F5>扎筒,讀取當(dāng)前行的單詞并形成環(huán)境莱找,如果是空行,則給出環(huán)境列表嗜桌;
  • 方法2:<S-F1>-<S-F4>奥溺,每一個(gè)對(duì)應(yīng)一個(gè)自定義的環(huán)境;
  • 方法3:使3字母序列Exx骨宠,第一個(gè)字母E代表Environment浮定,后兩個(gè)字母是環(huán)境名的簡(jiǎn)寫相满,比如EFI插入figure環(huán)境。

(2)包圍

  • 方法1:選中需要放入環(huán)境中的內(nèi)容桦卒,按<F5>立美;
  • 方法2:選中需要放入環(huán)境中的內(nèi)容,按3字母序列方灾,這里的3字母序列和插入中不同的在于首字母需要改為<,>建蹄,后兩個(gè)字母保持不變(小寫即可);

(3)修改

  • 方法1:選中需要修改環(huán)境名的內(nèi)容裕偿,然后按<S-F5>躲撰,多重環(huán)境時(shí)先改變最內(nèi)層環(huán)境;

2.定制方法

設(shè)置變量g:Tex_Env_name即可击费,其中'name'是環(huán)境名拢蛋,例如

let g:Tex_Env_frame = "\\begin{frame}\<cr>\\frametitle{<+title+>}\<cr><++>\<cr>\\end{frame}<++>"

有些帶標(biāo)簽的環(huán)境可設(shè)置變量g:Tex_EnvLabelprefix_name,例如

figure, table, theorem, definition,lemma, proposition, corollary, assumption, remark, equation, eqnarray, align, multline

默認(rèn)給出的環(huán)境列表由變量g:Tex_PromptedEnvironments設(shè)置蔫巩,默認(rèn)值為

'eqnarray\*,eqnarray, equation,equation\*,\[,$$,align,align\*'

<S-F1>-<S-F4>對(duì)應(yīng)的環(huán)境名由g:Tex_HotKeyMappings設(shè)置谆棱,默認(rèn)值為

'eqnarray*,eqnarray,bmatrix'

四、命令

1. 使用方法

(1)插入

  • 方法1:<F7>圆仔,提取當(dāng)前光標(biāo)所在單詞構(gòu)成命令垃瞧,如果是空單詞,則給出命令列表坪郭;

(2)包圍

  • 方法1:選中需要放入命令的內(nèi)容个从,按<F7>

(3)修改

  • 方法1:選中需要修改命令名的內(nèi)容歪沃,按<S-F7>嗦锐。

2. 定制方法

設(shè)置變量g:Tex_Com_name即可,其中'name'是變量名沪曙。

默認(rèn)給出的命令列表由變量g:Tex_PromptedCommands控制奕污,默認(rèn)值為

'footnote,cite,pageref,label'

五、參考文獻(xiàn)

1. 使用方法

共提供四種插入模式:BBB液走、BBL碳默、BBHBBX
它們的插入方式是一致的缘眶,輸入后會(huì)提示需要插入的文獻(xiàn)類型嘱根。

  • BBB僅插入該種文獻(xiàn)所需的最少字段;
  • BBL插入該種文獻(xiàn)常用的字段巷懈;
  • BBH插入一些更多的字段该抒;
  • BBX則插入所有的字段。

2. 定制方法

如果需要定制不同插入模式下的字段砸喻,那么需要修改全局變量g:Bib_{type}_options

該變量在文件$VIM/ftplugin/bib.vim中定義柔逼,{type}是文獻(xiàn)類型蒋譬,比如'article'、'book'等愉适。
變量取值如下表所示:

字符 對(duì)應(yīng)的字段
w address
a author
b booktitle
c chapter
d edition
e editor
h howpublished
i institution
k isbn
j journal
m month
z note
n number
o organization
p pages
q publisher
r school
s series
t title
u type
v volume
y year

比如犯助,默認(rèn)條件下使用BBB插入'article'

@ARTICLE{<+key+>,
    author = {<++>},
    title = {<++>},
    journal = {<++>},
    year = {<++>},
    otherinfo = {<++>}
}<++>

當(dāng)定義g:Bib_article_options為'mnp',則使用BBB插入'article'為

@ARTICLE{<+key+>,
    author = {<++>},
    title = {<++>},
    journal = {<++>},
    year = {<++>},
    month = {<++>},
    number = {<++>},
    pages = {<++>},
    otherinfo = {<++>}
}<++>

如果還有一些上面沒有列出來(lái)的字段需要插入维咸,則需要定義全局變量
g:Bib_article_extrafields

比如定義

let g:Bib_article_extrafields = "crossref\nabstract"

則'article'的模板會(huì)多出兩個(gè)字段

crossref = {<++>},
abstract = {<++>},

六剂买、編譯及查看

使用按鍵\ll開始編譯。
變量g:Tex_CompileRule_<format>設(shè)置編譯規(guī)則癌蓖,<format>是"pdf"瞬哼、"dvi"等。
設(shè)置編譯依賴租副,比如

.tex -> .dvi -> .ps -> .pdf

可以設(shè)置為

let g:Tex_FormatDependency_pdf = 'dvi,ps,pdf'

同時(shí)需要設(shè)定編譯規(guī)則

let g:Tex_CompileRule_dvi = 'latex --interaction=nonstopmode $*'
let g:Tex_CompileRule_ps = 'dvips -Ppdf -o $*.ps $*.dvi'
let g:Tex_CompileRule_pdf = 'ps2pdf $*.ps'

只編譯部分文件坐慰,選擇模式下選擇一部分內(nèi)容,然后使用\ll編譯這一部分內(nèi)容用僧,用\lv來(lái)查看結(jié)果结胀。對(duì)應(yīng)的命令是|:TPartComp||:TPartView|

查看使用\lv责循。規(guī)則使用變量g:Tex_ViewRule_<format>來(lái)定義糟港。

前向搜索使用\ls。在Mac上院仿,需要設(shè)置g:Tex_TreatMacViewerAsUNIX為1

反向搜索需要設(shè)置查看器與vim的溝通方式秸抚,比如

"C:\Program Files\vim\vim61\gvim" -c ":RemoteOpen +%l %f"

七、折疊

Latex-Suite用插件SyntaxFolds.vim來(lái)進(jìn)行語(yǔ)法折疊歹垫。
折疊是手動(dòng)的剥汤,新寫的內(nèi)容需要按<F6>\rf來(lái)開啟折疊。

有一系列變量用來(lái)控制折疊
g:Tex_FoldedSections控制哪些節(jié)需要折疊县钥,默認(rèn)值為

part,chapter,section,subsection,subsubsection,paragraph

g:Tex_FoldedEnvironments控制哪些環(huán)境需要折疊秀姐,默認(rèn)值為

verbatim,comment,eq,gather,
align,figure,table,thebibliography,
keywords,abstract,titlepage

g:Tex_FoldedCommands控制哪些命令需要折疊,默認(rèn)值為空若贮。
g:Tex_FoldedMisc控制一些其他需要折疊的內(nèi)容,默認(rèn)值為

item,preamble,<<<

八痒留、多文件工程

假設(shè)有如下工程結(jié)構(gòu)

thesis/
    main.tex
    abstract.tex
    intro/
        intro.tex
        figures/
            fig1.eps
            fig2.eps
    chapter1/
        chap1.tex
        figures/
            fig1.eps
    conclusion/
        conclusion.tex
        figures/

main.tex文件如下

% file: main.tex
\documentclass{report}
\begin{document}

\input{abstract.tex}
\input{intro/intro.tex}
\input{chapter1/chap1.tex}
\input{conclusion/conclusion.tex}

\end{document}

只需要?jiǎng)?chuàng)建一個(gè)空文件main.tex.latexmain就可以表明main.tex是主文件谴麦。

九、常用快捷鍵

1. 章節(jié)

可使用3字母序列Sxx進(jìn)行插入和修改伸头。

2. 字體

可使用3字母序列Fxx進(jìn)行插入和修改匾效。

3. 希臘字母

`a至`z分別代表\alpha到\zeta,大寫情況也類似(但不支持所有大寫希臘字母)恤磷。

4. 智能按鍵

...在數(shù)學(xué)模式外是\ldots面哼,在數(shù)學(xué)模式中是\cdots

5. 補(bǔ)全

<F9>可以進(jìn)行各種類型的補(bǔ)全野宜,包括引用補(bǔ)全(\ref、\eqref魔策、\cite)匈子、文件名補(bǔ)全、命令參數(shù)補(bǔ)全闯袒。通常需要設(shè)置

set grepprg=grep\ -nH\ $*

6. Auc-Tex中的一些快捷鍵

數(shù)學(xué)環(huán)境中:

快捷鍵 對(duì)應(yīng)的命令
`^ \Hat{<++>}<++>
`_ \bar{<++>}<++>
`6 \partial
`8 \infty
`/ \frac{<++>}{<++>}<++>
`% \frac{<++>}{<++>}<++>
`@ \circ
`0 ^\circ
`= \equiv
`\ \setminus
`. \cdot
`* \times
`& \wedge
`- \bigcap
`+ \bigcup
`( \subset
`) \supset
`< \le
`> \ge
`, \nonumber
`~ \tilde{<++>}<++>
`; \dot{<++>}<++>
`: \ddot{<++>}<++>
`2 \sqrt{<++>}<++>
` \Big
`I \int_{<++>}^{<++>}<++>

visual模式下:

快捷鍵 對(duì)應(yīng)的命令
`( \left( \right)
`[ \left[ \right]
`{ \left\{ \right\}
`$ 普通選擇 $$虎敦,行選擇 \[ \]

7. Alt相關(guān)

默認(rèn)條件下Alt鍵是菜單欄的熱鍵,如果有沖突則需要設(shè)置

set winaltkeys=no
  • <Alt-L>
    在插入模式下政敢,根據(jù)當(dāng)前光標(biāo)前的字符其徙,插入不同的命令
光標(biāo)之前的字符 對(duì)應(yīng)的命令
( \left( <++> \right)
[ \left[ <++> \right]
\left <++> \right
{ \left{ <++> \right}
< \langle <++> \rangle
q \lefteqn{<++>}<++>

如果當(dāng)前光標(biāo)前面沒有任何字符,則插入\label{<++>}喷户。

  • <Alt-B>
    插入模式中將前面的字符包含在命令\mathbf{}中唾那。

  • <Alt-C>
    在插入模式下,
    如果前面的字符是字母或數(shù)字褪尝,則變成大寫并包含在命令\mathcal{}中闹获;
    其它情況下插入\cite{}。
    在選擇模式下恼五,將選擇的字符包含在\mathcal{}中昌罩。

  • <Alt-I>
    根據(jù)不同的環(huán)境插入\item

環(huán)境名 樣式
itemize \item
enumerate \item
theindex \item
thebibliography \item[<+biblabel+>]{<+bibkey+>} <++>
description \item[<+label+>] <++>

可以通過變量g:TeX_ItemStyle_environment進(jìn)行修改。

十灾馒、宏定制方法

1. 宏文件

在$VIM/ftplugin/latex-suite/macros/中茎用,每一個(gè)文件就是一個(gè)宏。
用命令|:TMacro|或從菜單上可以選擇使用哪個(gè)宏睬罗。
可以用|:TMacroNew|轨功、|:TMacroEdit||:TMacroDelete|進(jìn)行操作容达。

2. IMAP

可以通過IMAP()定制宏古涧,其語(yǔ)法為

call IMAP (lhs, rhs, ft [, phs, phe])
lhs 縮寫
rhs 展開的代碼
ft 適用的文件類型
phs,phe 用來(lái)表示插入點(diǎn)的起始和終止符號(hào),默認(rèn)為<+和+>

例如

:call IMAP('EFE', "\\begin{figure}\<CR><++>\\end{figure}<++>", 'tex')

復(fù)雜一點(diǎn)的情況

call IMAP('FOO', "\<C-r>=AskVimFunc()\<CR>", 'vim')
" Askvimfunc: Asks For Function Name And Sets Up Template
" Description:
function! AskVimFunc()
    let name = input('Name of the function : ')
    if name == ''
        let name = "<+Function Name+>"
    end
    let islocal = input('Is this function scriptlocal ? [y]/n : ', 'y')
    if islocal == 'y'
        let sidstr = '<SID>'
    else
        let sidstr = ''
    endif
    return IMAP_PutTextWithMovement(
        \ "\" ".name.": <+short description+> \<cr>" .
        \ "Description: <+long description+>\<cr>" .
        \ "\<C-u>function! ".name."(<+arguments+>)<++>\<cr>" .
        \       "<+function body+>\<cr>" .
        \ "endfunction \" "
        \ )
endfunction
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末花盐,一起剝皮案震驚了整個(gè)濱河市羡滑,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌算芯,老刑警劉巖柒昏,帶你破解...
    沈念sama閱讀 216,544評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異熙揍,居然都是意外死亡职祷,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)有梆,“玉大人是尖,你說我怎么就攤上這事∧嘁” “怎么了饺汹?”我有些...
    開封第一講書人閱讀 162,764評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)爆袍。 經(jīng)常有香客問我首繁,道長(zhǎng),這世上最難降的妖魔是什么陨囊? 我笑而不...
    開封第一講書人閱讀 58,193評(píng)論 1 292
  • 正文 為了忘掉前任弦疮,我火速辦了婚禮,結(jié)果婚禮上蜘醋,老公的妹妹穿的比我還像新娘胁塞。我一直安慰自己,他們只是感情好压语,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,216評(píng)論 6 388
  • 文/花漫 我一把揭開白布啸罢。 她就那樣靜靜地躺著,像睡著了一般胎食。 火紅的嫁衣襯著肌膚如雪扰才。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,182評(píng)論 1 299
  • 那天厕怜,我揣著相機(jī)與錄音衩匣,去河邊找鬼。 笑死粥航,一個(gè)胖子當(dāng)著我的面吹牛琅捏,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播递雀,決...
    沈念sama閱讀 40,063評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼柄延,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了缀程?” 一聲冷哼從身側(cè)響起搜吧,我...
    開封第一講書人閱讀 38,917評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎杨凑,沒想到半個(gè)月后赎败,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,329評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡蠢甲,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,543評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了据忘。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片鹦牛。...
    茶點(diǎn)故事閱讀 39,722評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡搞糕,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出曼追,到底是詐尸還是另有隱情窍仰,我是刑警寧澤,帶...
    沈念sama閱讀 35,425評(píng)論 5 343
  • 正文 年R本政府宣布礼殊,位于F島的核電站驹吮,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏晶伦。R本人自食惡果不足惜碟狞,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,019評(píng)論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望婚陪。 院中可真熱鬧族沃,春花似錦、人聲如沸泌参。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)沽一。三九已至盖溺,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間铣缠,已是汗流浹背烘嘱。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留攘残,地道東北人拙友。 一個(gè)月前我還...
    沈念sama閱讀 47,729評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像歼郭,于是被迫代替她去往敵國(guó)和親遗契。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,614評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容