歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Vim高級應用

Vim高級應用

日期:2017/2/28 15:50:51   编辑:Linux教程

關於vim最基本的一些應用,比如三種模式的轉換,插入命令,怎麼刪除命令,我想熟悉vim的人都很了解了,我就不多說了,在這裡我將一下vim的高級配置。

自動縮進:

在做c語言編程的時候,常常不想每一行都從第一列開始,而是想讓vim自動幫忙布局,讓程序在vc6.0中一樣有層次感,最簡單的辦法就是,每次進入vim中輸入命令

:set cindent shiftwidth=4 寫代碼的時候就會自動縮進

也可以在配置文件中最後一行加入set cindent shiftwidth=4這樣在每次打開vim編寫c/c++都會自動縮進了(Ubuntu的配置文件vimrc /etc/vim 目錄下面).

(注意,在vim直接輸入命令前面有 冒號;而在配置文件下修改前面是沒冒號的,而且是永久的,而在vim輸入命令這是一次性的)

同時想要顯示行號 :(在配置文件修改時不要加冒號)

:set nu

取消顯示行號

:set nonu


設置語法高亮顯示

看到配置文件裡有一行是syntax on沒,如果沒有引號則默認是高亮顯示的,如果有引號,則表示是注釋,去掉引號即可高亮顯示。


自動補全:

最簡單的自動補全是:在輸入函數或者變量的時候輸入前幾個字符之後輸入Ctrl+N的命令,即可實現自動補全的功能。

要實現括號的自動補全

在vimrc文件最下面加上

:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(')')<CR>
:inoremap { {<CR>}<ESC>O
:inoremap } <c-r>=ClosePair('}')<CR>
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(']')<CR>
:inoremap < <><ESC>i
:inoremap > <c-r>=ClosePair('>')<CR>
:inoremap " ""<ESC>i:inoremap ' ''<ESC>ifunction! ClosePair(char) if getline('.')[col('.') - 1] == a:char return "\<Right>" else return a:char endifendfunction
即可。
Copyright © Linux教程網 All Rights Reserved