Loading

Vim-vimplus配置

Vim-Vimplus配置

img

An automatic configuration program for vim

img

安装(github地址:https://github.com/chxuan/vimplus.git, 欢迎star和fork)

========Git方式========
git clone https://gitee.com/luoxian1011/vimplus.git ~/.vimplus
git clone https://gitee.com/chxuan/YouCompleteMe-clang.git ~/.vim/plugged/YouCompleteMe
git clone https://gitee.com/luoxian1011/ale.git ~/.vim/plugged/ale
# git clone https://gitee.com/chxuan/vim82.git ~/vim82

cd ~/.vimplus && bash install.sh
========本地上传方式========

# 1、上传vimplus.zip
# sudo apt-get install unzip
unzip vimplus.zip -d ~/.vimplus
cd ~/.vimplus && bash install.sh

# 2、安装语法检查-pyflakes(wsl)
# https://github.com/dense-analysis/ale/blob/master/supported-tools.md
# sudo apt-get install python3-pip -y
# sudo apt-get install flake8 -y
# pip3 install flake8 -i https://pypi.tuna.tsinghua.edu.cn/simple
# pip3 install pylint -i https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install pyflakes -i https://pypi.tuna.tsinghua.edu.cn/simple
####################附注####################################
# 安装YouCompleteMe自动补全
cd  ~/.vim/plugged/YouCompleteMe
./install.py

# 刷新zsh插件
sed -i 's/plugins.*/plugins=(git zsh-autosuggestions zsh-syntax-highlighting pip)/g' ~/.zshrc
source ~/.zshrc


# 在ubuntu上源代码安装vim
function compile_vim_on_ubuntu()
{
    vim --version | head -1 | grep 'IMproved 8.2' && return
    sudo apt-get install -y libncurses5-dev libncurses5 libgnome2-dev libgnomeui-dev \
        libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \
        libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev python3-dev ruby-dev lua5.1 lua5.1-dev

    # rm -rf ~/vim82
    git clone https://gitee.com/chxuan/vim82.git ~/vim82
    cd ~/vim82
    ./configure --with-features=huge \
        --enable-multibyte \
        --enable-rubyinterp \
        --enable-pythoninterp \
        --enable-perlinterp \
        --enable-luainterp \
        --enable-gui=gtk2 \
        --enable-cscope \
        --prefix=/usr
    make
    sudo make install
    cd -
}

Mac OS X

  • 安装HomeBrew

    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
    
  • 安装vimplus

    git clone https://github.com/chxuan/vimplus.git ~/.vimplus
    cd ~/.vimplus
    ./install.sh
    

Ubuntu

  • 版本要求

    ubuntu16.04及其以上系统。

  • 安装vimplus(建议在普通用户下安装)

    git clone https://github.com/chxuan/vimplus.git ~/.vimplus
    cd ~/.vimplus
    ./install.sh
    

Centos

  • 版本要求

    centos7及其以上系统。

  • 安装vimplus(建议在普通用户下安装)

    git clone https://github.com/chxuan/vimplus.git ~/.vimplus
    cd ~/.vimplus
    ./install.sh
    

ArchLinux

  • 安装vimplus

    git clone https://github.com/chxuan/vimplus.git ~/.vimplus
    cd ~/.vimplus
    ./install.sh
    

个性化

修改 ~/.vimrc.local 文件内容,以启用个性化定制,可覆盖 ~/.vimrc 中的设置。

插件列表

插件 说明
cpp-mode 提供生成函数实现、函数声明/实现跳转、.h .cpp切换等功能(I'm author😄)
vim-edit 方便的文本编辑插件(I'm author😄)
change-colorscheme 随心所欲切换主题(I'm author😄)
prepare-code 新建文件时,生成预定义代码片段(I'm author😄)
vim-buffer vim缓存操作(I'm author😄)
vimplus-startify vimplus开始页面(修改自mhinz/vim-startify)
tagbar 使用majutsushi/tagbar的v2.3版本,taglist的替代品,显示类/方法/变量
vim-plug Vundle下载更快的插件管理软件
YouCompleteMe 史上最强大的基于语义的自动补全插件,支持C/C++、C#、Python、PHP等语言
NerdTree 代码资源管理器
vim-nerdtree-syntax-highlight NerdTree文件类型高亮
nerdtree-git-plugin NerdTree显示git状态
vim-devicons 显示文件类型图标
Airline 可以取代powerline的状态栏美化插件
auto-pairs 自动补全引号、圆括号、花括号等
LeaderF ctrlp更强大的文件的模糊搜索工具
ack 强大的文本搜索工具
vim-surround 自动增加、替换配对符的插件
vim-commentary 快速注释代码插件
vim-repeat 重复上一次操作
vim-endwise if/end/endif/endfunction补全
tabular 代码、注释、表格对齐
vim-easymotion 强大的光标快速移动工具,强大到颠覆你的插件观
incsearch.vim 模糊字符搜索插件
markdown-preview markdown实时预览
vim-fugitive 集成Git
gv 显示git提交记录
vim-slash 优化搜索,移动光标后清除高亮
echodoc 补全函数时在命令栏显示函数签名
vim-smooth-scroll 让翻页更顺畅
clever-f.vim 强化f和F键
github-complete.vim Emoji🐶补全
vimcdoc vim中文文档

快捷键

以下是部分快捷键,更详细的快捷键请查阅vimplus帮助文档

快捷键 说明
, Leader Key
<leader>n 打开/关闭代码资源管理器
<leader>t 打开/关闭函数列表
<leader>a .h .cpp 文件切换
<leader>u 转到函数声明
<leader>U 转到函数实现
<leader>o 打开include文件
<leader>y 拷贝函数声明
<leader>p 生成函数实现
<leader>w 单词跳转
<leader>f 搜索~目录下的文件
<leader>F 搜索当前目录下的文本
<leader>g 显示git仓库提交记录
<leader>G 显示当前文件提交记录
<leader>gg 显示当前文件在某个commit下的完整内容
<leader>ff 语法错误自动修复(FixIt)
<c-p> 切换到上一个buffer
<c-n> 切换到下一个buffer
<leader>d 删除当前buffer
<leader>D 删除当前buffer外的所有buffer
vim 运行vim编辑器时,默认启动开始页面
<F5> 显示语法错误提示窗口
<F7> 启用markdown实时预览
<F8> 关闭markdown实时预览
<F9> 显示上一主题
<F10> 显示下一主题
<leader>l 按竖线对齐
<leader>= 按等号对齐
Ya 复制行文本到字母a
Da 剪切行文本到字母a
Ca 改写行文本到字母a
rr 替换文本
<leader>r 全局替换,目前只支持单个文件
gcc 注释代码
gcap 注释段落
vif 选中函数内容
dif 删除函数内容
cif 改写函数内容
vaf 选中函数内容(包括函数名 花括号)
daf 删除函数内容(包括函数名 花括号)
caf 改写函数内容(包括函数名 花括号)
fa 查找字母a,然后再按f键查找下一个
<c-x><c-o> Emoji🐶补全

按需加载插件

为了提高 vim 的启动速度, 我们期望某些插件只有在特定的情况下才被加载. 例如我们希望 vim-go 插件只有在编辑 go 类型的文件时才会被打开, 便可以通过如下方法实现:

Plug 'https://github.com/fatih/vim-go.git', {'for': 'go'}

其中 for 后面的文件类型也可以使用列表, 如 {'for': ['go', 'golang']} .

同时, 也可以在调用命令的时候加载插件, 如:

Plug 'https://github.com/Yggdroot/indentLine', {'on' : 'IndentLinesToggle'}

这段代码的意思是只有 IndentLinesToggle 被调用时, 对应的插件才会被加载. on 后面也可以使用列表.

Q & A

  • 安装vimplus后Airline等插件有乱码,怎么解决?

    linux和mac系统需设置终端字体为Droid Sans Mono Nerd Font

  • xshell连接远程主机不能使用vim-devicons或乱码。

    windows系统安装Nerd Font字体后并更改xshell字体即可。

  • 安装vimplus会经常失败,安装了几次都不成功!!!

    vimplus安装时需要访问外国网站,由于网络原因,可能会失败,安装成功也要1个多小时,ycm插件有200M左右,下载比较耗时,这里有下载好的YouCompleteMe.tar.gz文件,下载后解压到~/.vim/plugged/目录,并进入YouCompleteMe目录执行./install.py --clang-completer即可安装。

  • 使用第三方库时怎么让ycm补全第三方库API?

    vimplus安装完毕之后,~目录下将会生成两个隐藏文件分别是.vimrc和.ycm_extra_conf.py,其中.vimrc是vim的配置文件,.ycm_extra_conf.py是ycm插件的配置文件,当你需要创建一个project时,需要将.ycm_extra_conf.py拷贝到project的顶层目录,通过修改该配置文件里面的flags变量来添加你的第三方库路径。

  • 安装vimplus完成后ycm不能够工作!!!

    这里的原因可能就有很多了,可能每个人遇到的问题不一样,但vimplus尽最大努力不让用户操心,需要注意的是ycm插件只支持64位的系统,更多信息请访问ycm官网

  • 在aaa用户下安装了vimplus,在bbb用户下不能使用?

    目前vimplus是基于用户的,如果你想在其他用户下也能使用vimplus,也需要单独安装。

  • 在Archlinux环境下不能使用ycm怎么办?(缺少libtinfo.so.5)

    在Archlinux下可以试着使用pkgfile命令搜索依赖的文件具体在什么包内,目前找到的包含libtinfo.so.5的包是ncurses5-compat-libs(AUR)或者32位的lib32-ncurses5-compat-libs(AUR),安装后即可正常使用。

  • 以上没有我遇到的问题怎么办?

    您可以通过上网找解决方法,或提Issues,也可以通过发邮件方式787280310@qq.com一起讨论解决方法。

  • vimplus用起来真的太棒了,怎么办?

    那就麻烦您打赏一颗⭐⭐吧,给予我继续维护的动力。

特性展示

  • YouCompleteMe

    img

  • cpp-mode

    img

  • LeaderF

    img

  • vim-airline

    img

  • vim-surround

    img

  • vim-commentary

    img

  • auto-pairs

    img

  • vim-easymotion

    img

  • vim-devicons

    img

  • vim-startify

    img

  • markdown-preview

    img

兴趣是最好的老师,我的github地址:https://github.com/chxuan

posted @ 2022-01-31 17:17  luoxian  阅读(487)  评论(0编辑  收藏  举报