首页 技术 正文
技术 2022年11月19日
0 收藏 831 点赞 4,284 浏览 17129 个字

据说这世界上只有三种编辑器:Vim,Emacs 和 其他编辑器,其中 Vim 被称作编辑器之神,Emacs 被称作神的编辑器,当然,其他编辑器永远只能是其他编辑器。

拿一位 网友的话 来说,VIM 的优点就是:快!惨绝人寰的快!模式编辑高度灵活,定制性强,用键盘能完成所有的事情,键盘党的最爱,逼格高… … 当然它也有缺点:那就是,懵逼,一直懵逼,全程懵逼(我在哪儿,我在干什么,这特么是什么鬼玩意,我要怎么退出… …)

事实上,VIM 可以称得上是“上古神器”了,因为其初始版本的发行早在1991年11月2日(不过现在已经更新到版本8了),而现如今 IDE 编辑器如 VSCode,Sublime Text 等,由于其多样的功能且容易上手,显然更受大众的喜爱和欢迎。

但为什么在众多的选择中,我最后还是入了它的坑呢?

VIM 是许多老式程序员和键盘爱好者的最爱(啊,解释一下,我不是程序猿,最主要我不老(狗头

VIM 可以完全通过键盘进行导航,从而使其更快,更高效。

它也是高度可定制的(在一定程度上可以定制命令行程序)。你可以使用许多键盘快捷键来加快代码编辑过程,甚至更好的方法是创建自定义命令以适合你自己的工作流程。

Vim极其稳定,快速,对于资深的命令行爱好者和新的感兴趣的用户都非常有用。

但由于完全缺乏UI,Vim因其最陡峭的学习曲线而获得大奖,也许是整体上最差的用户体验之一。

以上都是网友总结的,当然我也认同。不过对我来说,我选择 VIM 作为主力编辑器,只是因为之前我在 Windows 本地安装的 jupyter lab 不能用了(没找到原因和解决办法),而 Sublime Text 安装上打开就一直卡(不知道什么原因),又不想用 VSCode,因为打开太慢了。考虑到轻便、快捷、不卡顿,并且随处可编辑,一个键盘走天下的特点,我选择了 VIM。又因为之前在 Linux 编辑大文件也用 VIM,所以干脆也在 Linux 上重新配置了一遍 VIM。当然 Mac 也不能落单,所以给 Mac 上也重新配置了 VIM。

接下来就是记录在 Windows,Mac,Linux 三个操作系统上对编辑器之神——VIM 及其插件的安装和使用过程,也给感兴趣的小伙伴一个参考~

目录

Windows VIM 编辑器及其插件安装

先看一下 Windows VIM 编辑器及其插件安装完成后的最终效果:

这就是我在 Windows 上的主力编辑器了,接下来就记录下 Windows VIM 编辑器及其插件的具体安装过程~

001 下载和安装 Windows VIM

https://www.vim.org/download.php 下载和安装 gVIM https://github.com/vim/vim-win32-installer/releases/download/v8.2.2825/gvim_8.2.2825_x86_signed.exe (我安装在 D 盘)

002 使用 Vundle 安装和管理 VIM 插件

##### 01 在 Windows VIM 软件的安装路径下新建文件夹 bundle
D:/Vim/vim82/bundle##### 02 在 bundle 文件夹下新建文件夹 Vundle.vim
D:/Vim/vim82/bundle/Vundle.vim##### 03 打开 Git Bash 终端,克隆Vundle仓库到上述文件夹
git clone https://github.com/VundleVim/Vundle.vim.git D:/Vim/vim82/bundle/Vundle.vim##### 04 打开 Git Bash 终端,编辑 VIM 配置文件 _vimrc
vim D:/Vim/_vimrc
### 向 _vimrc 中添加如下内容(注意:一个双引号 " 加空格是类似 # 加空格的注释作用):
set nocompatible
filetype off
set rtp+=D:/Vim/vim82/bundle/Vundle.vim
call vundle#begin('D:/Vim/vim82/bundle/Vundle.vim/plugins')
Plugin 'VundleVim/Vundle.vim'
Plugin 'tpope/vim-fugitive'
Plugin 'L9'
Plugin 'git://git.wincent.com/command-t.git'
Plugin 'scrooloose/nerdtree'
call vundle#end()
filetype plugin indent on
filetype plugin on##### 05 以上是实际写进去的内容,以下是对每一行代码的解释:
" 去除VI一致性,必须要添加
set nocompatible
" 必须要添加
filetype off
" 设置包括vundle和初始化相关的runtime path
set rtp+=D:/Vim/vim82/bundle/Vundle.vim
" 指定vundle安装插件的路径
call vundle#begin('D:/Vim/vim82/bundle/Vundle.vim/plugins')
" 安装插件
" 让vundle管理插件版本,必须首先安装插件Vundle.vim
Plugin 'VundleVim/Vundle.vim'
" 安装其他插件
Plugin 'tpope/vim-fugitive'
Plugin 'L9'
Plugin 'git://git.wincent.com/command-t.git'
Plugin 'scrooloose/nerdtree'
" 结束安装,所有插件安装必须在下面这行之前进行:
call vundle#end()
" 加载vim自带和插件相应的语法和文件类型相关脚本
filetype plugin indent on
" 忽视插件改变缩进,可以使用以下替代
filetype plugin on

003 安装插件中

修改完 VIM 配置文件 _vimrc 后,打开 Vim(注意不是 gVim),输入 :PluginInstall ,即开启插件安装过程,一个插件安装可能需要5~10分钟,此过程需耐心等待。如果安装不成功,那就一直安装,因为有些插件来源是 GitHub,而 GitHub 能否成功连接是要看运气的~

004 安装完毕

插件安装成功的前面是 + 号,否则是 !号,可以看到,vim-fugitive 和 nerdtree 插件安装成功了,但是其他3个没有安装成功。

005 NERDTree 插件安装成功打开 gVim 后的界面

打开 gVim,敲 F7 键,即可看到目录树:

006 VIM 插件推荐

##### 01 配置vim安装目录下面的_vimrc文件
### 打开 Git Bash 终端,编辑 VIM 配置文件 _vimrc
vim D:/Vim/_vimrc
### 添加如下内容
Plugin 'VundleVim/Vundle.vim'
Plugin 'tpope/vim-fugitive'
Plugin 'L9'
Plugin 'git://git.wincent.com/command-t.git'
Plugin 'scrooloose/nerdtree'
Plugin 'scrooloose/nerdcommenter'
Plugin 'itchyny/lightline.vim'
Plugin 'altercation/vim-colors-solarized'
Plugin 'mechatroner/rainbow_csv'
Plugin 'junegunn/seoul256.vim'
Plugin 'sheerun/vim-polyglot'
Plugin 'airblade/vim-rooter'
Plugin 'ryanoasis/vim-devicons'
Plugin 'tiagofumo/vim-nerdtree-syntax-highlight'
" Plugin 'ryanoasis/nerd-fonts'
Plugin 'konfekt/vim-office'
Plugin 'jiangmiao/auto-pairs'
Plugin 'machakann/vim-sandwich'
Plugin 'tpope/vim-markdown'
Plugin 'mzlogin/vim-markdown-toc'
Plugin 'iamcco/markdown-preview.nvim'
Plugin 'luochen1990/rainbow'
Plugin 'google/vim-searchindex'
Plugin 'datawraith/auto_mkdir'
"Error: E185: Cannot find color scheme for synload.vim (Line 19)
"solution for the above
Plugin 'jpo/vim-railscasts-theme'
Plugin 'vim-airline/vim-airline'
Plugin 'vim-airline/vim-airline-themes'
Plugin 'Xuyuanp/nerdtree-git-plugin'
Plugin 'haya14busa/incsearch.vim'
Plugin 'anyakichi/vim-surround'##### 02 启动vim,执行 :BundleInstall 即可,vundle常用的命令有:
:BundleList:列举出列表中(.vimrc中)配置的所有插件
:BundleInstall :安装列表中全部插件
:BundleInstall!:更新列表中全部插件
:BundleSearch xx:查找xx插件
:BundleClean:清除列表中没有的插件##### 03 插件配置,比如 NERDTree
### 打开 Git Bash 终端,编辑 VIM 配置文件 _vimrc
vim D:/Vim/_vimrc
### 添加如下内容:""""""""""""""""""""""""""""""
"scrooloose/nerdtree
""""""""""""""""""""""""""""""
" 添加 F7 为 NERDTree 插件打开和关闭的快捷方式,注意 :NERDTreeToggle<CR> 是一个整体,中间不能有任何空格; <ESC>:NERDTreeToggle<CR> 是一个整体,中间也不能有任何空格;和 <F7> 中间需要有一个空格,表示用 <F7> 快捷键代替那2个整体操作
" F7 NERDTree 快捷键设置为 F7
map <F7> :NERDTreeToggle<CR>
imap <F7> <ESC>:NERDTreeToggle<CR>
" 修改树的显示图标
let g:NERDTreeDirArrowExpandable = '+'
let g:NERDTreeDirArrowCollapsible = '-'
" 窗口位置
let g:NERDTreeWinPos='left'
" 窗口尺寸
let g:NERDTreeSize=40
" 窗口是否显示行号
let g:NERDTreeShowLineNumbers=1
" 显示隐藏文件
let g:NERDTreeHidden=1
" 在 vim 启动的时候默认开启 NERDTree(autocmd 可以缩写为 au)
autocmd VimEnter * NERDTree""""""""""""""""""""""""""""""
"jiangmiao/auto-pairs
""""""""""""""""""""""""""""""
let g:AutoPairsFlyMode = 0 "不要启用飞行模式,因为会无法手动添加右括号
let g:AutoPairs = {'(':')', '[':']', '{':'}',"'":"'",'"':'"'}
"let g:AutoPairs['<']='>'""""""""""""""""""""""""""""""
"luochen1990/rainbow
""""""""""""""""""""""""""""""
let g:rainbow_active = 1
"let rainbow_parenthesis#active = 0 "避免Rainbow Parentheses插件运行时报错""""""""""""""""""""""""""""""
"nerdtree-git-plugin settings
""""""""""""""""""""""""""""""
"let g:NERDTreeShowIgnoredStatus = 1
let g:NERDTreeGitStatusShowIgnored = 1"let g:NERDTreeIndicatorMapCustom = {
let g:NERDTreeGitStatusIndicatorMapCustom = {
\ "Modified" : "✹",
\ "Staged" : "✚",
\ "Untracked" : "✭",
\ "Renamed" : "➜",
\ "Unmerged" : "═",
\ "Deleted" : "",
\ "Dirty" : "✗",
\ "Clean" : "︎",
\ 'Ignored' : '☒',
\ "Unknown" : "?"
\ }""""""""""""""""""""""""""""""
"airline
""""""""""""""""""""""""""""""
set t_Co=256 "在windows中用xshell连接打开vim可以显示色彩
let g:airline#extensions#tabline#enabled = 1 " 是否打开tabline
"这个是安装字体后 必须设置此项"
let g:airline_powerline_fonts = 1 " 支持 powerline 字体
set laststatus=2 "永远显示状态栏
let g:airline_theme='bubblegum' "选择主题
let g:airline#extensions#tabline#enabled=1 "Smarter tab line: 显示窗口tab和buffer
"let g:airline#extensions#tabline#left_sep = ' ' "separater
"let g:airline#extensions#tabline#left_alt_sep = '|' "separater
"let g:airline#extensions#tabline#formatter = 'default' "formater
let g:airline_left_sep = ''
let g:airline_left_alt_sep = '❯'
let g:airline_right_sep = ''
let g:airline_right_alt_sep = '❮'""""""""""""""""""""""""""""""
"vim-nerdtree-syntax-highlight settings
""""""""""""""""""""""""""""""
"Highlight full name (not only icons). You need to add this if you don't have vim-devicons and want highlight.
let g:NERDTreeFileExtensionHighlightFullName = 1
let g:NERDTreeExactMatchHighlightFullName = 1
let g:NERDTreePatternMatchHighlightFullName = 1"Highlight full name (not only icons). You need to add this if you don't have vim-devicons and want highlight.
let g:NERDTreeHighlightFolders = 1"highlights the folder name
let g:NERDTreeHighlightFoldersFullName = 1"you can add these colors to your .vimrc to help customizing
let s:brown = "905532"
let s:aqua = "3AFFDB"
let s:blue = "689FB6"
let s:darkBlue = "44788E"
let s:purple = "834F79"
let s:lightPurple = "834F79"
let s:red = "AE403F"
let s:beige = "F5C06F"
let s:yellow = "F09F17"
let s:orange = "D4843E"
let s:darkOrange = "F16529"
let s:pink = "CB6F6F"
let s:salmon = "EE6E73"
let s:green = "8FAA54"
let s:Turquoise = "40E0D0"
let s:lightGreen = "31B53E"
let s:white = "FFFFFF"
let s:rspec_red = "FE405F"
let s:git_orange = "F54D27"
let s:gray = "808A87"let g:NERDTreeExtensionHighlightColor = {} " this line is needed to avoid error
let g:NERDTreeExtensionHighlightColor['o'] = s:gray " sets the color of o files to blue
let g:NERDTreeExtensionHighlightColor['h'] = s:blue " sets the color of h files to blue
let g:NERDTreeExtensionHighlightColor['c'] = s:green " sets the color of c files to blue
let g:NERDTreeExtensionHighlightColor['cpp'] = s:green " sets the color of cpp files to blue
let g:NERDTreeExtensionHighlightColor['c++'] = s:green " sets the color of c++ files to blue""""""""""""""""""""""""""""""
"vim-devicons settings
""""""""""""""""""""""""""""""`
set encoding=UTF-8"Can be enabled or disabled
let g:webdevicons_enable_nerdtree = 1"whether or not to show the nerdtree brackets around flags
let g:webdevicons_conceal_nerdtree_brackets = 1"adding to vim-airline's tabline
let g:webdevicons_enable_airline_tabline = 1"adding to vim-airline's statusline
let g:webdevicons_enable_airline_statusline = 1""""""""""""""""""""""""""""""
"altercation/vim-colors-solarized 配色方案选择
""""""""""""""""""""""""""""""`
syntax enable
set background=dark
set t_Co=256
colorscheme railscasts""""""""""""""""""""""""""""""
"scrooloose/nerdcommenter
""""""""""""""""""""""""""""""`
let g:NERDSpaceDelims = 1 " 在注释符号后加一个空格
let g:NERDCompactSexyComs = 1 " 紧凑排布多行注释
let g:NERDDefaultAlign = 'left' " 逐行注释左对齐
let g:NERDAltDelims_java = 1 " JAVA 语言使用默认的注释符号
let g:NERDCustomDelimiters = {'c': {'left': '/*', 'right': '*/'}} " C 语言注释符号
let g:NERDCommentEmptyLines = 1 " 允许空行注释
let g:NERDTrimTrailingWhitespace = 1 " 取消注释时删除行尾空格
let g:NERDToggleCheckAllLines = 1 " 检查选中的行操作是否成功

007 常见问题及解决办法

Q:在安装完上述插件后,打开 Windows Vim / gVim 后,原来的中文菜单出现乱码

A:在中文 Windows 下正确配置字符编码,需要把以下内容加入你的配置文件 _vimrc 中

##### 01 打开 Git Bash 终端,编辑 VIM 配置文件 _vimrc
vim D:/Vim/_vimrc
### 向 _vimrc 中添加如下内容
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
set encoding=utf-8
set termencoding=cp936
language messages zh_CN.UTF-8
# 特别提醒,以上代码应该放在 .vimrc 的最顶端,因为 vim 运行过程中 set encoding=xxx 是很危险的,会导致各种乱码。

008 Vundle 卸载插件

如果要删除某个插件,也是要先编辑 ~/.vimrc文件,删除或注释里面Plugin定义的插件,再打开vim,运行 :PluginClean 命令,会提示你是否要删除XX插件,选择YES就可以删除了。

009 VIM 更换字体

我选择的是ubuntu下的字体,于是从 http://www.fonts2u.com/ubuntu-mono.font 下载了ubuntu mono字体,右键本地电脑安装,在 VIM ~/.vimrc 配置文件非开头处加入set guifont=Ubuntu\ Mono\ Bold:h12 ,即可。

010 文件显示行号

在 VIM ~/.vimrc 配置文件中加入set number ,即可。

011 对文件的基本操作

##### 只需打开 gVim,输入以下命令
### 进入特定工作目录
:NERDTree D:/GitHubDesktop //进入此目录
### 同时显示多个文件
:sp //水平切分窗口
:vsplit //垂直切分窗口
### 关闭分屏
:hide //关闭当前分屏
:only //仅保留当前分屏
ctrl+W c //关闭当前窗口
ctrl+w q //关闭当前窗口,若只有一个分屏会退出vim
### 跳转到指定行
:n (跳转到文件第n行,需要回车)
### 以标签栏的形式打开多个文件
# 同时以多标签形式打开file1 file2等文件
vim -p file1.c file2.c ..
# 弹出各个文件后,你可以像浏览器标签栏一样鼠标点击打开每个文件;对于用 -p 打开的标签页,可以使用 gt,gT可以左切换右切换,也可以使用数字1,2,n,+gt,例如你想切换到第5个标签页,就可以使用 5gt,意思是按下5,g,t键就可以了
# 已经启动vim后,还可以在vim的命令模式下面继续用新标签打开文件:
:tabnew file3.c
# 关闭标签页
:tabc 关闭当前标签页
:tabo 关闭所有的标签页

012 Win10中gVIM与外部/系统的复制剪切粘贴互通

##### 001 打开 Git Bash 终端,编辑 gVIM 配置文件 _vimrc
vim D:/Vim/_vimrc
### 向 _vimrc 中添加如下内容:
vmap <C-c> "+y
vmap <C-x> "+c
vmap <C-v> c<ESC>"+p
imap <C-v> <C-r><C-o>+
##### 002 gvim 中操作
复制:鼠标选中某段文本进入可视块,然后ctrl+c;
粘贴:gvim 内进入插入模式后ctrl+v,外部直接ctrl+v;
搜索:如果要在gvim中搜索剪贴板内容,先按“/”然后点鼠标中键,笔记本中键要在 设置-设备-触摸板-其他设置-高级设置里例如将3指点击设置为中键(win10下)
剪切:ctrl+x

013 VIM 开启鼠标功能

##### 001 编辑 VIM 配置文件 _vimrc
vim D:/Vim/_vimrc
### 向 _vimrc 中添加如下内容:
set mouse=a

014 遗留问题

VIM插件不起作用: Vim-devicons: 图标都是相同的问号

015 参考资料

Mac VIM 编辑器及其插件安装

001 Install vim and macvim

brew install vim
brew unlink vim
brew install macvim

Q & A

Q1: Error: The following directories are not writable by your user:
/usr/local/include
/usr/local/lib
/usr/local/lib/pkgconfig
A1: 获取usr/local文件夹的写入权限sudo chown -R $(whoami) /usr/local/*Q2: Error: python@3.9: wrong number of arguments (given 1, expected 0)
A2: 安装 cmake,如果安装不成功,那就一直安装brew install cmake

特别提醒:Mac本身是内置了 VIM 编辑器的,但是为了避免由于修改 Mac 内置编辑器导致一些不可控的问题出现,建议像我一样,在自己的用户下重新装一个 VIM。

002 Install ctags & cscope

brew install ctagsbrew install cscope

003 Find the location of installed vim

which vim# /usr/local/bin/vim

Q & A

Q: if not /usr/local/bin/vim, we should edit the file /etc/paths to change the orderA: 修改环境变量: 修改变量加载顺序。环境变量哪个写在前面哪个优先使用。sudo vim /etc/paths# 修改后的顺序如下:/usr/local/bin/usr/bin/bin/usr/sbin/sbin# 重新开启命令行,测试 which vim, 成功。

004 Install bundle

git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

005 Configure ~/.vimrc

vim ~/.vimrc# add the following contents:"set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
"set encoding=utf-8
"set termencoding=cp936
"language messages zh_CN.UTF-8 set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin('/Users/xia/.vim/bundle/Vundle.vim/plugins')Plugin 'VundleVim/Vundle.vim'
Plugin 'tpope/vim-fugitive'
Plugin 'L9'
Plugin 'git://git.wincent.com/command-t.git'
Plugin 'scrooloose/nerdtree'
Plugin 'scrooloose/nerdcommenter'
Plugin 'itchyny/lightline.vim'
Plugin 'altercation/vim-colors-solarized'
Plugin 'mechatroner/rainbow_csv'
Plugin 'junegunn/seoul256.vim'
Plugin 'sheerun/vim-polyglot'
Plugin 'airblade/vim-rooter'
Plugin 'ryanoasis/vim-devicons'
Plugin 'tiagofumo/vim-nerdtree-syntax-highlight'
Plugin 'konfekt/vim-office'
Plugin 'jiangmiao/auto-pairs'
Plugin 'machakann/vim-sandwich'
Plugin 'tpope/vim-markdown'
Plugin 'mzlogin/vim-markdown-toc'
Plugin 'iamcco/markdown-preview.nvim'
Plugin 'luochen1990/rainbow'
Plugin 'google/vim-searchindex'
Plugin 'datawraith/auto_mkdir'
"Error: E185: Cannot find color scheme for synload.vim (Line 19)
"solution for the above
Plugin 'jpo/vim-railscasts-theme'
Plugin 'haya14busa/incsearch.vim'call vundle#end()
filetype plugin indent on
filetype plugin on""""""""""""""""""""""""""""""
"scrooloose/nerdtree
""""""""""""""""""""""""""""""
" 添加 F7 为 NERDTree 插件打开和关闭的快捷方式,注意 :NERDTreeToggle<CR> 是一个整体,中间不能有任何空格; <ESC>:NERDTreeToggle<CR> 是一个整体,中间也不能有任何空格;和 <F7> 中间需要有一个空格,表示用 <F7> 快捷键代替那2个整体操作
" F7 NERDTree 快捷键设置为 F7
map <F7> :NERDTreeToggle<CR>
imap <F7> <ESC>:NERDTreeToggle<CR>
" 修改树的显示图标
let g:NERDTreeDirArrowExpandable = '+'
let g:NERDTreeDirArrowCollapsible = '-'
" 窗口位置
let g:NERDTreeWinPos='left'
" 窗口尺寸
let g:NERDTreeSize=40
" 窗口是否显示行号
let g:NERDTreeShowLineNumbers=1
" 显示隐藏文件
let g:NERDTreeHidden=1
" 在 vim 启动的时候默认开启 NERDTree(autocmd 可以缩写为 au)
autocmd VimEnter * NERDTree""""""""""""""""""""""""""""""
"jiangmiao/auto-pairs
""""""""""""""""""""""""""""""
let g:AutoPairsFlyMode = 1
let g:AutoPairs = {'(':')', '[':']', '{':'}',"'":"'",'"':'"'}
"let g:AutoPairs['<']='>'""""""""""""""""""""""""""""""
"luochen1990/rainbow
""""""""""""""""""""""""""""""
let g:rainbow_active = 1
"let rainbow_parenthesis#active = 0 "避免Rainbow Parentheses插件运行时报错""""""""""""""""""""""""""""""
"nerdtree-git-plugin settings
""""""""""""""""""""""""""""""
let g:NERDTreeShowIgnoredStatus = 1let g:NERDTreeIndicatorMapCustom = {
\ "Modified" : "✹",
\ "Staged" : "✚",
\ "Untracked" : "✭",
\ "Renamed" : "➜",
\ "Unmerged" : "═",
\ "Deleted" : "",
\ "Dirty" : "✗",
\ "Clean" : "︎",
\ 'Ignored' : '☒',
\ "Unknown" : "?"
\ }""""""""""""""""""""""""""""""
"vim-nerdtree-syntax-highlight settings
""""""""""""""""""""""""""""""
"Highlight full name (not only icons). You need to add this if you don't have vim-devicons and want highlight.
let g:NERDTreeFileExtensionHighlightFullName = 1
let g:NERDTreeExactMatchHighlightFullName = 1
let g:NERDTreePatternMatchHighlightFullName = 1"Highlight full name (not only icons). You need to add this if you don't have vim-devicons and want highlight.
let g:NERDTreeHighlightFolders = 1"highlights the folder name
let g:NERDTreeHighlightFoldersFullName = 1"you can add these colors to your .vimrc to help customizing
let s:brown = "905532"
let s:aqua = "3AFFDB"
let s:blue = "689FB6"
let s:darkBlue = "44788E"
let s:purple = "834F79"
let s:lightPurple = "834F79"
let s:red = "AE403F"
let s:beige = "F5C06F"
let s:yellow = "F09F17"
let s:orange = "D4843E"
let s:darkOrange = "F16529"
let s:pink = "CB6F6F"
let s:salmon = "EE6E73"
let s:green = "8FAA54"
let s:Turquoise = "40E0D0"
let s:lightGreen = "31B53E"
let s:white = "FFFFFF"
let s:rspec_red = "FE405F"
let s:git_orange = "F54D27"
let s:gray = "808A87"let g:NERDTreeExtensionHighlightColor = {} " this line is needed to avoid error
let g:NERDTreeExtensionHighlightColor['o'] = s:gray " sets the color of o files to blue
let g:NERDTreeExtensionHighlightColor['h'] = s:blue " sets the color of h files to blue
let g:NERDTreeExtensionHighlightColor['c'] = s:green " sets the color of c files to blue
let g:NERDTreeExtensionHighlightColor['cpp'] = s:green " sets the color of cpp files to blue
let g:NERDTreeExtensionHighlightColor['c++'] = s:green " sets the color of c++ files to blue""""""""""""""""""""""""""""""
"vim-devicons settings
""""""""""""""""""""""""""""""`
set encoding=UTF-8"Can be enabled or disabled
let g:webdevicons_enable_nerdtree = 1"whether or not to show the nerdtree brackets around flags
let g:webdevicons_conceal_nerdtree_brackets = 1"adding to vim-airline's tabline
let g:webdevicons_enable_airline_tabline = 1"adding to vim-airline's statusline
let g:webdevicons_enable_airline_statusline = 1""""""""""""""""""""""""""""""
"altercation/vim-colors-solarized 配色方案选择
""""""""""""""""""""""""""""""`
syntax enable
set background=dark
set t_Co=256
colorscheme railscasts""""""""""""""""""""""""""""""
"scrooloose/nerdcommenter
""""""""""""""""""""""""""""""`
let g:NERDSpaceDelims = 1 " 在注释符号后加一个空格
let g:NERDCompactSexyComs = 1 " 紧凑排布多行注释
let g:NERDDefaultAlign = 'left' " 逐行注释左对齐
let g:NERDAltDelims_java = 1 " JAVA 语言使用默认的注释符号
let g:NERDCustomDelimiters = {'c': {'left': '/', 'right': '/'}} " C 语言注释符号
let g:NERDCommentEmptyLines = 1 " 允许空行注释
let g:NERDTrimTrailingWhitespace = 1 " 取消注释时删除行尾空格
let g:NERDToggleCheckAllLines = 1 " 检查选中的行操作是否成功set guifont=Ubuntu\ Mono\ Bold:h12
set numbervmap <C-c> "+y
vmap <C-x> "+c
vmap <C-v> c<ESC>"+p
imap <C-v> <C-r><C-o>+

006 Install vim plugins

Mac 终端输入 vim , 进入 VIM 后,输入 :PluginInstall 完成第一次初始化安装。如果安装不成功,那就一直安装,因为有些插件来源是 GitHub,而 GitHub 能否成功连接是要看运气的。

007 References

Linux VIM 编辑器及其插件安装

先看一下 Linux VIM 编辑器及其插件安装完成后的最终效果:

自我感觉还可以,接下来就看 Linux VIM 编辑器及其插件的具体安装过程吧~

001 下载 VIM

https://vimjc.com/vim-plug.html

  • https://blog.csdn.net/htx1020/article/details/114364510
  • https://blog.inkuang.com/2019/1006/
  • 本文章首发于个人微信公众号 TouchUMind,个人哔哩哔哩账号 iTouchUMind,博客园账号 TouchUMind,科学网(博客)账号 TouchUMind,备份(终稿)于个人博客网站 touchumind.com,欢迎关注和支持!

    相关推荐
    python开发_常用的python模块及安装方法
    adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
    日期:2022-11-24 点赞:878 阅读:9,474
    Educational Codeforces Round 11 C. Hard Process 二分
    C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
    日期:2022-11-24 点赞:807 阅读:5,889
    下载Ubuntn 17.04 内核源代码
    zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
    日期:2022-11-24 点赞:569 阅读:6,724
    可用Active Desktop Calendar V7.86 注册码序列号
    可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
    日期:2022-11-24 点赞:733 阅读:6,479
    Android调用系统相机、自定义相机、处理大图片
    Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
    日期:2022-11-24 点赞:512 阅读:8,118
    Struts的使用
    一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
    日期:2022-11-24 点赞:671 阅读:5,278