Giter Site home page Giter Site logo

lemon-vim's Introduction

lemon-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

安装时需要注意:

  1. 安装是从github clone的,完全取决于网速
  2. 如果发现有插件安装失败 可以进入vim, 执行:PlugInstall
  3. 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的编辑窗口树状显示文件目录。效果如下:

nerdtree

演示如下:

nerdtreegif

通过配置快捷键,使用<leader>n可以展示目录。

vim-airline/vim-airline和vim-airline/vim-airline-themes

airline项目地址

airline-themes项目地址

用于美观状态栏,演示如下:

airline

Lokaltog/vim-easymotion

项目地址

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

easy-motion

Valloric/YouCompleteMe

项目地址

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

YCM

对于每个项目,YCM可以定制配置文件,参考项目YCM-Generator进行快速设置。

lfv89/vim-interestingwords

项目地址

高亮光标下的word,可以同时高亮多个,用不同的颜色显示。演示如下:

interestingwords

scrooloose/nerdcommenter

项目地址

快速的添加和去除注释,快捷键<leader>cc添加注释,<leader>c<space>取消注释。

a.vim

项目地址

快速的进行.h和.c文件进行切换,在编写c和c++程序时比较实用,文件切换非常快速。

mbbill/undotree

项目地址

将撤销的操作按照日志的形式展示出来,并可以切换到每一个撤销点。演示如下:

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中的键,使用,,和在vim和tmux之间跳转。

参考内容

  1. vimrc文件布局vimrc+vimrc.bundles配置方式参考 maximum-awesome
  2. install.sh 参考spf13-vimbootstrap.sh spf13-vim
  3. 插件管理使用Vundle
  4. 自动补全 YCM

vim资料

  1. space-vim
  2. spacevim
  3. 配色主题 vimcolor
  4. vim插件 VimAwesome
  5. vim介绍vim-galore-zh_cn
  6. vim官网

lemon-vim's People

Contributors

lemon0910 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

lvchakele

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.