set nocompatible
syntax on
set number
"set smartindent
set autoindent
set shiftwidth=4
set tabstop=4
set expandtab
set scrolloff=3
set hlsearch "高亮
"消除高亮:键入:noh就可以了。
"我的做法是把命令模式下<TAB>键绑定,供参考
"nmap <TAB> :nohl<CR>
set incsearch "在进行查找时就会显示出不断匹配的过程
set display=lastline
set cursorcolumn
set cursorline
"highlight CursorLine cterm=NONE ctermbg=black ctermfg=green guibg=NONE guifg=NONE
"highlight CursorColumn cterm=NONE ctermbg=black ctermfg=green guibg=NONE guifg=NONE
set laststatus=2
set showmatch
set encoding=utf-8
~
Normal Mode 普通模式
默认进入vim之后,处于这种模式。
Visual Mode 可视模式
在这种模式下选定一些字符、行、多列。 在普通模式下,可以按v进入。
Insert Mode 插入模式
其实就是指处在编辑输入的状态。普通模式下,可以按i进入。
Select Mode 选择模式
在gvim下常用的模式,用鼠标拖选区域的时候,就进入了选择模式。
和可视模式不同的是,在这个模式下,选择完了高亮区域后,敲任何按键就直接输入并替换选择的文本了。
和windows下的编辑器选定编辑的效果一致。普通模式下,可以按gh进入。
Command-Line/Ex Mode 命令行模式和Ex模式
两者略有不同,普通模式下按冒号(:)进入Command-Line模式,可以输入各种命令。
使用vim的各种强大功能。普通模式下按Q进入Ex模式,其实就是多行的Command-Line模式。
map映射
使用:map命令,可以列出所有键盘映射。
在vim配置文件中经常会看到map、nmap、imap、vmap、vnoremap、nunmap、nmapclear等,都是什么意思呢?
map前的n、v、nore、un等表示下列含义:
nore—— 表示非递归。
n ——表示在普通模式下生效。
v ——表示在可视模式下生效。
i ——表示在插入模式下生效。
c——表示在命令行模式下生效。
un——后面跟按键组合,表示删除这个映射
clear——表示清除相关模式下的所有映射。
:nmap <F2> ohello<Esc>
【解释】o新建一行,并进入insert模式,hello直接插入,<Esc>返回normal模式。
参考:Vim中文在线手册