当前位置: 首页 > 工具软件 > vimrc > 使用案例 >

VIM-配置-.vimrc

王旺
2023-12-01

前言

在使用vim的时候我们可以输入:set nu 显示行号,但每次都输一遍操作就显得冗余。将这段命令写入vimrc就可以避免重复操作。
在linux环境下,配置文件一般都叫*rc,rc是 run command 的首字母简写。vimrc一个在/etc/vimrc(系统的vim配置文件)。还有一个是~/.vimrc(用户的vim配置文件,也是我们要修改的文件),刚装上vim的时候是没有这个文件的,我们创建一个就行了。

只需要 vim ~/.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 ' ''<ESC>i
function! ClosePair(char)
    if getline('.')[col('.') - 1] == a:char
		        return "\<Right>"
	else
			    return a:char
	endif
endfunction

"采用vim自己的命令,不与vi兼容:

set nocompatible

"不创建备份文件:

set nobackup

"使能语法高亮,自动识别代码,用不同颜色显示:

syntax on

"使用编码格式 utf-8 :

set encoding=utf-8

"区分大小写:

set infercase

"不许文件自动折叠:

set nofoldenable

"换行显示时不把一个单词拆开,遇到指定的符号(比如空格,连词号和其他标点符号)才换行:

set linebreak

"在左侧显示行号:

set number

"显示光标当前行

set cursorline

"在状态栏显示光标当前位置,哪一行哪一列:

set ruler

"高亮显示搜索的匹配结果,输入结束时才显示:

set hlsearch

"高亮显示搜索的匹配过程,每输入一个字符,就自动跳到第一个匹配的结果:

set incsearch

"遇到括号(小括号,中括号,大括号)时,自动高亮匹配的括号:

set showmatch

"命令模式下,显示输入的命令:

set showcmd

"自动缩进,按下回车键后,下一行会自动跟上一行的缩进保持一致:

set autoindent

"智能缩进

set smartindent

"复制粘贴时保留原有的缩进

set copyindent

"自动缩进的空格数

set shiftwidth=4

"按下 tab 键时的空格数

set tabstop=4

"按下 tab 键时自动转为空格

set expandtab

"tab 转换为多少个空格

set softtabstop=4

"将tab键和多余的空格显示出来

set list
set listchars=tab:>>,trail:.

"在命令模式下,按下 tab 键可以自动补全命令

set wildmenu
set wildmode=longest,list,full

"Insert模式下,使退格键可以删掉任何东西

set backspace=indent,eol,start

"即使发生换行时,也逐行移动

map j gj
map k gk

"重新打开文件时,跳到上次的位置

au BufReadPost *
\ if line("'\"") > 1 && line("'\"") <= line("$") |
\ exe "normal! g'\"" |
\ endif

"自动切换到当前文件的目录

set autochdir

"记录历史命令的条数

set history=1000

"撤销的次数

set undolevels=1000

"发生错误时,视觉提示,通常是屏幕闪烁:

set visualbell

"支持使用鼠标

set mouse=a

这里有一个小技巧,当光标在一个括号处时,按下%键即可跳转到与其对应的括号处。如果是在可视模式下就可以选中括号里的内容:)

 类似资料: