lemon-vim
lemon-vim copied to clipboard
lemon's config for vim and neovim.
lemon-vim
目录
- 简介
- 安装步骤
- 自定义快捷键
- 插件
- 插件管理
- 插件列表
- 部分插件介绍
- 参考内容
- vim资料
简介
这是我自己平时工作环境的vim配置,参考了k-vim,spf13,space-vim,vim-init等一些优秀的vim配置,可以满足常用的功能。个人感觉vim还是用自己配置的最舒服,熟悉自己vimrc中所有的配置,熟悉安装的插件的功能和配置。对于平时的一些需求也可以自己编写vim脚本解决。
安装步骤
1. clone lemon-vim到本地
git clone [email protected]:lemon0910/lemon-vim.git
2. 安装
进入目录, 执行安装脚本,操作步骤如下:
cd lemon-vim/
sh -x install.sh
安装时需要注意:
- 安装是从github clone的,完全取决于网速
- 如果发现有插件安装失败 可以进入vim, 执行
:PlugInstall - ycm的安装比较麻烦,最好阅读以下该插件的项目主页
2.3 卸载安装
执行下面的命令:
cd ~ && rm -rf .vim .vimrc .config/nvim && cd -
自定义快捷键
记录自己在vimrc文件中设置的快捷键,快捷键的好处是大大提高了vim的使用效率,配置都是基于自己的喜好。<leader>键设置为",",基本快捷键配置参考init/init-keymaps.vim文件。插件快捷键配置参考init/init-plugins.vim文件。也可以参考下面的表格:
| 快捷键 | 功能 | 其它 |
|---|---|---|
| gd | 跳转到定义 | 基础配置 |
| gb | 跳回上一处 | 基础配置 |
| H | 跳到行首 | 基础配置 |
| L | 跳到行尾 | 基础配置 |
| <leader>q | 直接退出 | 基础配置 |
| <leader>wq | 保存退出 | 基础配置 |
| <leader>ww | 保存 | 基础配置 |
| <leader>Q | 强制退出 | 基础配置 |
| <leader>ba | 删除所有缓冲 | 基础配置 |
| <leader>bd | 删除当前缓冲 | 基础配置 |
| <leader>b[1-9] | 切换到相应编号的缓冲 | 基础配置 |
| <tab> | 切换到下一个缓冲 | 基础配置 |
| <s-tab> | 切换到上一个缓冲 | 基础配置 |
| <leader>sc | 去除搜索高亮 | 基础配置 |
| <space><space> | 输入: | 基础配置 |
| <leader>u | 打开撤销树 | undotree |
| <leader>aa | 快速切换.h和.cpp文件 | a.vim |
| <leader>gs | 查看git status内容 | vim-fugitive |
| <leader>gd | git diff内容 | vim-fugitive |
| <leader>gc | git commit内容 | vim-fugitive |
| <leader>gb | git blame内容 | vim-fugitive |
| <leader>gl | git log内容 | vim-fugitive |
| <leader>n | 打开目录树 | nerdtree |
| <leader>ar | 异步运行命令 | asyncrun.vim |
| <leader>o | 选择窗口 | vim-choosewin |
| <leader>pt | 预览当前tag | vim-preview |
| <leader>pf | 预览文件 | vim-preview |
| <leader>pc | 关闭预览窗口 | vim-preview |
| <leader>ps | 预览Signature | vim-preview |
| <leader>ag | 使用ag搜索 | vim-ags |
| <leader>ff | 搜索打开文件 | vim-fzf |
| <leader>fg | 搜索git文件 | vim-fzf |
| <leader>fb | 搜索buffer | vim-fzf |
| <leader>ss | 搜索当前缓冲内容 | fzf.vim |
| <leader>ft | 搜索当前文件的tag | fzf.vim |
| <leader>fa | 搜索所有的tag | fzf.vim |
| <leader>fr | 搜索打开历史文件 | fzf.vim |
| <leader>k | 高亮当前word | vim-interestingwords |
| s | 搜索两个字母并跳转 | easymotion |
插件
插件管理
使用 vim-plug 管理插件。
vim-plug 常见问题: vim-plug faq,关于YouCompleteMe安装问题YCM。
管理插件的命令:
:PlugInstall install 安装插件
:PlugUpdate install or update 更新插件
:PlugClean remove plugin not in list 删除本地无用插件
:PlugUpgrade Upgrade vim-plug itself 升级本身
:PlugStatus Check the status of plugins 查看插件状态
插件列表
| 插件 | 功能 |
|---|---|
| lfv89/vim-interestingwords | 高亮当前单词 |
| scrooloose/nerdcommenter | 快速注释 |
| easymotion/vim-easymotion | 快速跳转 |
| mbbill/undotree | 查看undo内容 |
| yianwillis/vimcdoc | vim中文文档 |
| tpope/vim-surround | 快速修改匹配内容 |
| jiangmiao/auto-pairs | 快速输入括号 |
| mhinz/vim-startify | 启动窗口界面 |
| scrooloose/nerdtree | 目录树 |
| skywind3000/asyncrun.vim | 异步执行命令 |
| tpope/vim-fugitive | git功能封装 |
| t9md/vim-choosewin | 窗口选择 |
| christoomey/vim-tmux-navigator | vim和tmux导航 |
| skywind3000/vim-preview | 预览窗口功能 |
| gabesoft/vim-ags | ag搜索 |
| maralla/completor.vim | 自动补全 |
| vim-go | go插件 |
| vim-airline/vim-airline | 美化statusline |
| vim-airline/vim-airline-themes | airline主题 |
| junegunn/fzf.vim | fzf功能 |
| Yggdroot/LeaderF | 和fzf类似 |
| w0rp/ale | 语法检查 |
| Valloric/YouCompleteMe | 自动补全 |
部分插件介绍
scrooloose/nerdtree
在VIM的编辑窗口树状显示文件目录。效果如下:

演示如下:

通过配置快捷键,使用<leader>n可以展示目录。
vim-airline/vim-airline和vim-airline/vim-airline-themes
用于美观状态栏,演示如下:

Lokaltog/vim-easymotion
快速转到指定位置,提高效率神器。演示如下:

Valloric/YouCompleteMe
YCM是目前最好的自动补全插件,用起来非常的爽,大大提高了写代码的效率。安装的时候要求vim的版本在7.3.584 以上。演示如下:

对于每个项目,YCM可以定制配置文件,参考项目YCM-Generator进行快速设置。
lfv89/vim-interestingwords
高亮光标下的word,可以同时高亮多个,用不同的颜色显示。演示如下:

scrooloose/nerdcommenter
快速的添加和去除注释,快捷键<leader>cc添加注释,<leader>c<space>取消注释。
a.vim
快速的进行.h和.c文件进行切换,在编写c和c++程序时比较实用,文件切换非常快速。
mbbill/undotree
将撤销的操作按照日志的形式展示出来,并可以切换到每一个撤销点。演示如下:

使用<leader>u可以查看撤销操作日志。
skywind3000/asyncrun.vim
在后台异步的执行任务,如编译连接等。使用<leader>ar唤醒,使用<leader>co查看执行结果。
tpope/vim-fugitive
在vim中使用git的相关功能,主要配置了下面几项:
gs :Gstatus gd :Gdiff gc :Gcommit gb :Gblame gl :Glog gp :Git push
最常用的是Gblame查看修改。
christoomey/vim-tmux-navigator
非常好用的插件,用来在tmux和vim之间的导航,不再需要先按tmux中的
参考内容
- vimrc文件布局
vimrc+vimrc.bundles配置方式参考 maximum-awesome - install.sh 参考
spf13-vim的bootstrap.shspf13-vim - 插件管理使用Vundle
- 自动补全 YCM
vim资料
- space-vim
- spacevim
- 配色主题 vimcolor
- vim插件 VimAwesome
- vim介绍vim-galore-zh_cn
- vim官网