Linux系统下Vim的常用编辑

配置文件目录(在哪里配置文件)

有两种方法:

  1. 可以直接在vim编辑界面输入 : + 指令 进行设置,例如:
    设置显示/取消行号
:set nu
:set nonu
  1. 可以对用户配置文件(.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.

猜你喜欢

转载自blog.csdn.net/m0_66338176/article/details/134056980