bobby4k / rvim

Thanks to Bram Moolenaar that we have this remarkable editor, Vim.

Home Page:https://github.com/bobby4k/rvim

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Thanks to Bram Moolenaar that we have this remarkable editor, Vim.

rvim - RapidVim

A rapidly available version of vim configuration

简单说明情况

一个基于系统自带vim,快速可用的配置。

  • 使用Vim 8+ packages
    • 仅依赖ctags
    • 无需lua、python、nodejs支持
  • 默认安装插件
    • 目录树 preservim/nerdtree
    • 代码注释 preservim/nerdcommenter
    • 老年人代码补全 neocomplcache
      • 仅Insert模式下显示补全弹框
    • ctags增量更新 vim-gutentags
  • 默认开启
    • 语法高亮 syntax enable
    • 代码补全(内置) set omnifunc=syntaxcomplete#Complete
    • ctags set tags=tags
  • 显示相对行号
    • 在Insert模式关闭

已知问题

  • 编辑vim配置文件时会产生 neocomplcache插件的set_dictionary_help错误
    • 临时方案 Cc 关闭 或者 :silent! TroublesomeCommand
    • 先关闭插件, 再打开vim配置文件
sed -i 's/let\ g:neocomplcache_enable_at_startup\ =\ 1/let\ g:neocomplcache_enable_at_startup\ =\ 0/' ~/.vim/.vimrc

必要快捷键:

  • <leader>键 空格
  • jj绑定 <esc>
  • Ct 开启/关闭 nerdtree目录树窗口
    • Cww 切换窗口
  • <leader>/ 自动切换注释
    • <leader>cc 添加注释
    • <leader>cu 取消注释
  • Cx Co 自动补全
  • 格式化与缩进
    • 向左右缩进 shift + > (或者 Shift + < )
    • 对齐缩进 v模式,方向键 ←→↑↓ 选择, 等号键=, 对齐第一行
    • gg=G 自动格式化整个文件
  • 多文件/buffer切换
    • :ls 列出当前打开文件
    • :b3 切换第三个文件
      • <leader>1-9 绑定
      • <leader>h/l 向前/后切换buffer
    • :bd3 关闭第三个文件
  • :qa 退出所有(:quitall的缩写)
    • <leader>qq 绑定 :qa
    • <leader>qa 绑定 :qa!

安装

  • 方式1: git clone
    cd ~ ; mv .vimrc .vimrc_bak ; mv .vim/  .vim_bak
    git clone --recursive git@github.com:bobby4k/rvim.git .vim
    ln -sf .vim/.vimrc .vimrc

    # 更新
    cd ~/.vim
    git pull
    git submodule update --init --recursive
    cd ~ ; mv .vimrc .vimrc_bak ; mv .vim/  .vim_bak
    tar xvf rvim_0.1.tar.gz
    ln -sf .vim/.vimrc .vimrc

ctags

  • 可在存在调用关系的函数间来回跳转

ctags插件及安装

  • ctags 安装
    • debian apt install ctags
    • archlinux pacman -S ctags
    • macOS brew install ctags
  • vim-gutentags 增量更新插件
    • 节能

ctags使用说明

  • a. 第一次使用, 生成索引
    • cd your-project/ ; ctags -R *
  • b. 【可跳过】 设置tags路径::set tags=./tags,./TAGS,tags,TAGS
    • 已使用SetTags()自动设置
      • 直接打开目录即可 vim your-project/
    • echo tagfiles() 查看当前tags文件列表
  • c. 定义跳转: 光标移动到函数或变量上,Ctrl+]键 跳转到定义处, Ctrl+o返回
    • Ctrl - W + ] 用新窗口打开并查看
    • Ctrl -W } 使用 preview 窗口预览
  • d. 查找引用: Ctrl+]跳转至定义处,再次按下Ctrl+] 查找该函数其他引用

缘由:

  • 自从习惯wsl+vscode+docker,极少用vim,多年前顺手的vimrc也已丢失,遂重新配置一个快速可用的版本;
  • 关于插件管理:debian自带vim不支持python,且非ide环境,仅几个插件即可,vim8的packages足矣;

About

Thanks to Bram Moolenaar that we have this remarkable editor, Vim.

https://github.com/bobby4k/rvim

License:GNU Affero General Public License v3.0


Languages

Language:Vim Script 100.0%