使用 Linux 你肯定避不开文本操作,除了 cat、grep、awk、sed等这些牛逼的工具之外,文本编辑也必不可少。你肯定要修改配置文件啦,有时为了看整个文本你可能还需要打开来细细查阅,那么此时你有多个选择,我就喜欢的是 VIM。
VIM 确实是一个很好的编辑工具,但是默认的配置也太丑了吧,就算不求代码高亮,基本的显示行数也没有,好吧,那么作为一个爱折腾的人,我还是把我的 VIM 配置来分享一下。
设置 VIM 样式
1、首先,你肯定要先打开配置文件,在哪?使用下面这条命令即可
vim ~/.vimrc
2、复制粘贴我下面的配置(CV大法又用上了。。)
==
Author : yetship
Website: https://liqiang.io
Version: 1.0
==
按编程语言的语法,对代码进行彩色标示,术语叫做语法高亮
syntax on
显示行数标示
set number
打开状态栏的坐标信息
set ruler
取消底部状态栏显示。1为关闭,2为开启。
set laststatus=1
将输入的命令显示出来,便于查看当前输入的信息
set showcmd
设置魔术匹配控制,可以通过:h magic查看更详细的帮助信息
set magic
设置vim存储的历史命令记录的条数
set history=100
下划线高亮显示光标所在行
set cursorline
插入右括号时会短暂地跳转到匹配的左括号
set showmatch
搜索时忽略大小写
set ignorecase
不对匹配的括号进行高亮显示
let loaded_matchparen=1
在执行宏命令时,不进行显示重绘;在宏命令执行完成后,一次性重绘,以便提高性能。
set lazyredraw
设置一个tab对应4个空格
set tabstop=4
在按退格键时,如果前面有4个空格,则会统一清除
set softtabstop=4
cindent对c语法的缩进更加智能灵活,
而shiftwidth则是在使用<和>进行缩进调整时用来控制缩进量。
换行自动缩进,是按照shiftwidth值来缩进的
set cindent shiftwidth=4
最基本的自动缩进
set autoindent shiftwidth=4
比autoindent稍智能的自动缩进
set smartindent shiftwidth=4
将新增的tab转换为空格。不会对已有的tab进行转换
set expandtab
高亮显示搜索匹配到的字符串
set hlsearch
在搜索模式下,随着搜索字符的逐个输入,实时进行字符串匹配,并对首个匹配到的字符串高亮显示
set incsearch
设置自定义快捷键的前导键
let mapleader=,
利用前导键加b,则可以在一个单子两边加上大括号
map b wbi{<Esc>ea}<Esc>
使用前导键加w来实现加速文件保存,来代替:w!加回车
nmap w :w!<CR>
匹配那些末尾有空格或TAB的行。(es:Endspace Show)
map es :/.*s+$<CR>
删除行末尾的空格或TAB(ed:Endspace Delete)
map ed :s#s+$##<CR>
如果所选行的行首没有#,则给所选行行首加上注释符#(#a:# add)
map #a :s/^([^#]s*)/#1/<CR>
如果所选行行首有#,则将所选行行首所有的#都去掉(#d:# delete)
map #d :s/^#+(s*)/1/<CR>
如果所选行的行首没有//,则给所选行行首加上注释符//(/a:/ add)
map /a :s/^([^//]s*)///1/<CR>
如果所选行行首有//,则将所选行行首的//都去掉(/d:/ delete)
map /d :s/^//(s*)/1/<CR>
3、 按下 :x
收工