Vim Latex 的使用和配置技巧 (三)

在前面兩篇文章里, 我簡單地介紹了vim latex suite的用法和配置. 在這一篇文章里, 我將簡單地介紹一下另外一個latex的插件---vimtex.

6. vimtex 插件

6.1 vimtex 插件的安裝

如果你用vundle的插件管理器, 在vimrc文件中, 加入這么一行:

Plugin 'lervag/vimtex'

6.2 vimtex的基本用法

6.2.1 imaps 映射

如下表:

按鍵 效果 模式
\li 文件信息顯示 n
\lt 打開目錄 n
\ll 編譯文檔 n
\lv 查看文檔 n
\lc 清除latex編譯文件 n
6.2.2 模塊編輯

在vim中, 可以快速編輯一些模塊. 比如: di)是刪除( )內(nèi)的東西, 這里, ) 就代表( )的模塊. 在vimtex中, 我們定義了一些常用的latex模塊. 比如:

按鍵 效果 模式
dse 刪除光標周圍的\begin \end環(huán)境 n
dsc 刪除光標周圍的\command{} 環(huán)境 n
ds$ 刪除光標周圍的$ $ 環(huán)境 n
dsd 刪除光標周圍的括號 n
cse [1] 修改光標周圍的\begin \end環(huán)境 n
csc 修改光標周圍的\command{} 環(huán)境 n
cs$ 修改光標周圍的$ $ 環(huán)境 n
csd 修改光標周圍的括號模式 n
tsc \command{}\command*{}的互換 n
tse \begin{env}\begin{env*}的互換 n
tsd ( ... )\left( ... \right) 的互換 n

在這里, tsd默認的變換list

let g:vimtex_delim_toggle_mod_list = [
      \ ['\left', '\right'],
      \ ['\mleft', '\mright'],
      \]

當(dāng)然我們可以進行修改, 比如, 在tex.vim中, 我們可以設(shè)置:

let g:vimtex_delim_toggle_mod_list = [
      \ ['\bigl', '\bigr'],
      \ ['\Bigl', '\Bigr'],
      \ ['\biggl', '\biggr'],
      \ ['\Biggl', '\Biggr'],
      \]

這樣一來, 通過tsd命令, 我們可以在這些型號的括號選擇了.

另外還有下面的幾個常用textobj模塊, 這些可以和y(復(fù)制), d (刪除)c (修改)搭配使用:

按鍵 效果 模式
]] 補全括號和環(huán)境[^2] i
ac 全部\command命令 xo
ic \command{...} 括號內(nèi)的內(nèi)容 xo
ad 整個括號和括號里的內(nèi)容 xo
id 括號里的內(nèi)容 xo
ae 整個環(huán)境和環(huán)境里的內(nèi)容 xo
ie 環(huán)境里的內(nèi)容 xo
a$ 整個$ ... $的內(nèi)容 xo
i$ $ ... $ 里的內(nèi)容 xo
K \usepackage{package} 跳到package的幫助文檔 n

vim-textobj-user的幫助下, 我們開可以自己定義模塊, 比如說:

call textobj#user#plugin('latex', {
\  'bracket-math': {
\     '*pattern*': ['\\\[', '\\\]'],
\     'select-a': 'au',
\     'select-i': 'iu',
\   },
\  'paren-math': {
\     '*pattern*': ['\\(', '\\)'],
\     'select-a': 'a\',
\     'select-i': 'i\',
\   },
\  'double-quote': {
\     '*pattern*': ['``', "''"],
\     'select-a': 'aQ',
\     'select-i': 'iQ',
\   },
\  'biglimiter': {
\     '*pattern*': ['\\{', '\\}'],
\     'select-a': 'aU',
\     'select-i': 'iU',
\   },
\ })

在這里, 我們定義了\( \), \{ \}, quotes\[ \]的幾個模塊.

6.2.3 自動補全label
  1. labels: >
    \ref{sec:<CTRL-X><CTRL-O>
  2. numbers: >
    \eqref{2<CTRL-X><CTRL-O>
  3. labels and numbers together (separated by whitespace): >
    \eqref{eq 2<CTRL-X><CTRL-O>

至于其他的自動補全, 可以參考YouCompleteMe 插件.


相關(guān)文章:


  1. 比如在一個環(huán)境align周圍, 我們按下按鍵cse, 在命令行里就會出現(xiàn): Change surrounding environment: align 的提示, 然后輸入equation, 那么這個環(huán)境就會變成\begin{equation} ... \end{equation}了. ?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容