vim
 vim是一款强大的文本编辑器,如果配置到位,真的真的非常漂亮,如下图violet主题的浅色和深色
)
 还有经典的molokai配色主题

 还有c++高亮配色

 c++补全

 多行编辑

笔者的vim经历
 先后尝试vim,笔者已经度过了两年,学到了很多,却也很少,
vim安装
 以前笔者使用过linux下的vim,现在正使用的mac下的vim,这里只讲mac如何安装vim,mac本身自带vim,当然mac也可以使用指令
vim基本配置
 vim是需要简单配置一下的,对于没有配置的vim而言,会很难受,下面我先发一下我的vim配置
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 
 | set et "tab用空格替换
 set tabstop=2
 set expandtab
 " Tab键的宽度
 
 set softtabstop=2
 set shiftwidth=2
 "  统一缩进为2
 
 set number
 " 显示行号
 
 set history=10000
 " 历史纪录数
 
 set hlsearch
 set incsearch
 " 搜索逐字符高亮
 
 set encoding=utf-8
 set fileencodings=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936,utf-16,big5,euc-jp,latin1
 " 编码设置
 
 " set mouse=a
 " use mouse
 
 set langmenu=zn_CN.UTF-8
 set helplang=cn
 " 语言设置
 
 set laststatus=2
 " 总是显示状态行 就是那些显示 --insert-- 的怪东西
 
 set showcmd
 " 在状态行显示目前所执行的命令,未完成的指令片段亦会显示出来
 
 set scrolloff=3
 " 光标移动到buffer的顶部和底部时保持3行距离
 
 set showmatch
 " 高亮显示对应的括号
 
 set matchtime=1
 " 对应括号高亮的时间(单位是十分之一秒)
 
 | 
vim的插件
 这里推荐vundle,安装vundle后,我们的配置前面就多了一些东西
| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 
 | " Vundle set nocompatiblefiletype off
 set rtp+=~/.vim/bundle/Vundle.vim
 call vundle#begin()
 Plugin 'VundleVim/Vundle.vim'
 Plugin 'The-NERD-Tree'
 Plugin 'gdbmgr'
 Plugin 'mbbill/undotree'
 Plugin 'majutsushi/tagbar'
 Plugin 'vim-airline/vim-airline' " 状态栏
 Plugin 'vim-airline/vim-airline-themes' "状态栏
 Plugin 'cohlin/vim-colorschemes' " 主题
 Plugin 'tomasr/molokai' " molokai
 Plugin 'jiangmiao/auto-pairs' " 括号补全
 Plugin 'plasticboy/vim-markdown'
 Plugin 'iamcco/mathjax-support-for-mkdp' " 数学公式
 Plugin 'iamcco/markdown-preview.vim' " markdown预览
 Plugin 'Valloric/YouCompleteMe'
 Plugin 'zxqfl/tabnine-vim'
 Plugin 'w0rp/ale' " 语法纠错
 Plugin 'octol/vim-cpp-enhanced-highlight' " c++语法高亮
 Plugin 'Shougo/echodoc.vim' " c++函数提示
 Plugin 'Chiel92/vim-autoformat' " c++代码格式化
 Plugin 'scrooloose/nerdcommenter' " c++代码注释
 Plugin 'ashfinal/vim-colors-violet' " 配色
 Plugin 'terryma/vim-multiple-cursors' " vim 多行编辑
 Plugin 'mhinz/vim-startify'
 call vundle#end()
 filetype plugin indent on
 
 | 
 这里的Plugin “…”指的是使用啥啥啥插件的意思。
vim基础操作
 下面我们进入到最核心的地方,vim的快捷操作
vim 基本移动操作
基本跳转
 jkhl分别对应了上下左右
字符串跳转
 b是向前跳转一个单词,w是向后跳转一个单词
行内跳转
 $跳转到行末,A跳转到行末并输入,0跳转到行首,^跳转到行首非空字符,I跳转到行首非空字符并输入
 f+a跳转到后面的第一个a, F+a跳转到前面第一个a
行间跳转
 gg到首行,G到尾行, :100到100行
 H到屏幕顶,M到屏幕中,L到屏幕底
屏幕跳转
 zz把当前行变为屏幕正中间。
 向上移动一行,向下移动一行
 向上整个屏幕, 向下整个屏幕
文件跳转
 :bn到缓冲区下一个文件,bp到前一个
 :A .c与.h文件跳转
 :IH 到光标指向文件
vim 多行操作
用插件会卡,这里我们可以, 移动,I,写,ESC 
指令10,20s/^/#/g
vim 高质量跳转
 % 跳转括号
vim 高质量组合操作
 c 删除当前字符并插入
 caw  change a word删除当前单词并插入 
渴望变成
先定位到one的o,然后 进入列选择,3j将列选择光标移动到four的f,$将光标移动到尾部,A进入插入模式,,添加逗号,Esc作用与所有列,V进入块选择,3j定位到four,J将行合并,结束了。