Vim编辑器的常用配置
配置文件目录(在哪里配置文件)
有两种方法:
- 可以直接在vim编辑界面输入 : + 指令 进行设置,例如:
设置显示/取消行号
:set nu
:set nonu
- 可以对用户配置文件(.vimrc)进行编辑,进而实现对 Vim 的永久自定义
在linux下一般用~/.vimrc文件
可以尝试通过如下代码找到:
cd /usr/share/vim
sudo vi vimrc
windows下一般在用户文件夹下的_vimrc文件或vim安装目录下的_vimrc文件。
相关配置:
去掉边框
"传说中的去掉边框用下边这一句
set go=
设置配色
"设置配色,这里选择的是desert,也有其他方案,在vim中输入:color 在敲tab键可以查看
color desert
设置背景色
"设置背景色,每种配色有两种方案,一个light、一个dark
set background=light
设置语法高亮
"打开语法高亮
syntax on
设置行号
"显示行号
set number
设置下划线
"在光标位置为整行添加下划线
这个设置可以让你在复杂的代码中节省眼力
set cursorline
设置缩进
"设置缩进有三个取值cindent(c风格)、smartindent(智能模式,其实不觉得有什么智能)、autoindent(简单的与上一行保持一致)
set cindent
设置粘贴时取消格式
这个功能通常在使用vim编辑器粘贴时防止跳格太多而使用,一般采用 : + 指令来执行
set paste //取消格式
set nopaste //打开格式
设置鼠标
Vim 编辑器里默认是不启用鼠标的,通过此设置即可启动鼠标。
set mouse=a
set selection=exclusive
set selectmode=mouse,key
设置状态行
" 1=启动显示状态行, 2=总是显示状态行.
" 设置总是显示状态行,方便看到当前文件名.
set laststatus=2
" 设置状态行显示的内容. %F: 显示当前文件的完整路径.
- " %r: 如果readonly,会显示[RO]
- " %B: 显示光标下字符的编码值,十六进制.
- " %l:光标所在的行号. %v:光标所在的虚拟列号.
- " %P: 显示当前内容在整个文件中的百分比.
- " %H和%M是strftime()函数的参数,获取时间.
set statusline=%F%r\ [HEX=%B][%l,%v,%P]\ %{
strftime(\"%H:%M\")}
设置在右下角显示光标所在的行号和列号
" 设置ruler会在右下角显示光标所在的行号和列号,
" 不方便查看.改成设置状态栏显示内容
set ruler
设置显示还没有输入完整的命令
" 显示还没有输入完整的命令.例如yy命令,输入第一个y会在右下角显示y.
set showcmd
设置使用Tab键补全时,在状态栏显示匹配的列表
" 使用Tab键补全时,在状态栏显示匹配的列表,
" 方便查看都有哪些命令符合补全条件.
set wildmenu
设置退格
"在windows版本中vim的退格键模式默认与vi兼容,与我们的使用习惯不太符合,下边这条可以改过来
set backspace=indent,eol,start
设置用空格键代替制表符
"用空格键替换制表符
set expandtab
设置制表符占4个空格
"制表符占4个空格
set tabstop=4
设置默认缩进4个空格大小
"默认缩进4个空格大小
set shiftwidth=4
关于搜索
设置增量式搜索
"增量式搜索
set incsearch
设置高亮显示匹配的括号
" 高亮显示匹配的括号
set showmatch
设置高亮显示所有搜索到的内容
(高亮搜索)
" 高亮显示所有搜索到的内容.后面用map映射
" 快捷键来方便关闭当前搜索的高亮.
set hlsearch
设置光标立刻跳转到搜索到内容
(增量式搜索)
" 光标立刻跳转到搜索到内容
set incsearch
设置搜索到最后匹配的位置后,再次搜索不回到第一个匹配处
" 搜索到最后匹配的位置后,再次搜索不回到第一个匹配处
set nowrapscan
解决中文乱码
"有时中文会显示乱码,用一下几条命令解决
let &termencoding=&encoding
set fileencodings=utf-8,gbk
配置检测文件类型
"很多插件都会要求的配置检测文件类型
:filetype on
:filetype plugin on
:filetype indent on
设置根据不同的文件类型执行不同的命令
"下边这个很有用可以根据不同的文件类型执行不同的命令
"例如:如果是c/c++类型
:autocmd FileType c,cpp : set foldmethod=syntax
:autocmd FileType c,cpp :set number
:autocmd FileType c,cpp :set cindent
"例如:如果是python类型
:autocmd FileType python :set number
:autocmd FileType python : set foldmethod=syntax
:autocmd FileType python :set smartindent
设置取消查找高亮以及关闭vim错误响铃
可以查看我的这篇文章:Linux中vim编辑器如何取消查找高亮以及关闭vim错误响铃
也可以尝试:
" 去掉输入错误时的提示声音
set noeb
设置ESC键
" 默认按下Esc后,需要等待1秒才生效,
" 设置Esc超时时间为100ms,尽快生效
set ttimeout
set ttimeoutlen=100
总结
以上是简单的几个比较常用的vim配置,用vim来敲程序还要借助于一些插件,比如:
- omnicppcomplete c/c++代码补全
- taglist 查看函数列表
- NERD_Tree 查看文件列表
- pydiction python代码补全
具体安装方法参见google、baidu或访问http://www.vim.org就不赘述了
对于初学vim的bro:
vim很强大,想要用好vim需要也很值得投入一定的时间去学习,仅凭上边的几条配置与插件是远远不够的。推荐一部教材《vimbook》老外写的,很详细,内容也不多。that’s all.