# lvim
**Repository Path**: littlelot/lvim
## Basic Information
- **Project Name**: lvim
- **Description**: littlelot ---> 从零开始折腾 vim
- **Primary Language**: VimL
- **License**: GPL-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 24
- **Forks**: 0
- **Created**: 2019-09-03
- **Last Updated**: 2024-10-23
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Littlelot Vim
## Description
> #### littlelot vim project 安装脚本暂只支持debian包系
> #### 实现java导包排序,运行,mysql分屏展示插件
> #### 增加常用实用插件,如exvim,vim-plug,easy-motion等
## Install
``` shell
git clone https://gitee.com/littlelot/lvim.git ~/.lvim
cd ~/.lvim
./linux_install.sh
```
## Plugin
> #### .vimrc 常用映射
> `[n] ;nh` 关闭搜索高亮
> `[n] ;pa` 开关粘贴模式\(保留粘贴原文格式\)
> `[n] ;nu` 开关行号显示
> `[n] ` 开关折叠
> `[n] ` 移动光标到左边的窗口
> `[n] ` 移动光标到上边的窗口
> `[n] ` 移动光标到下边的窗口
> `[n] ` 移动光标到右边的窗口
> `[n] ;M` 清除行尾 ^M 符号
> `[nx] "y` vim 中跨终端复制
> `[n] "p` vim 中跨终端粘贴
> `[n] ;y` 复制到系统剪贴板,clipboard 特性开启时有效
> `[n] ;p` 粘贴到系统剪贴板,clipboard 特性开启时有效
> `[n] ;ev` 编辑 .vimrc 文件
> `[n] ;sv` 重载 .vimrc 文件
> `[n] ;sp` java 打印语句补全
> `[n] ;sl` logger 打印语句补全
> `[nx] \` 重定义 ';' 默认映射
> #### ex-vimentry
> `vim .exvim` 打开 exvim 项目工程入口文件,初始化项目设置
> `folder_filter_mode = exclude` 设置目录过滤模式
> `folder_filter += target` 设置相应过滤模式下的目录
> `build_opt = 'spring-boot:run'` 设置外部编译运行命令
> `extra_tags = /home/littlelot/.__source/tags` 设置 jdk 及第三方 jar 包源码 ctags 文件
> #### ex-project
> `[n] ;E` 打开或关闭文件浏览器窗口
> `[n] ;R` 重新生成项目目录树并刷新文件浏览器窗口
> `[n] ;r` 重新生成当前所在目录的目录树并刷新当前目录
> `[n] O` 在当前目录下新建目录
> `[n] o` 在当前目录下新建文件
> `[n] ;sc` 定位当前编辑文件在文件浏览器窗口的对应位置
> `[n] ` 折叠目录或者打开相应的文件
> `[n] ` 收缩文件浏览器窗口
> `[n] ` 显示文件浏览器窗口帮助信息
> #### ex-tagbar
> `[n] ;L` 打开或关闭 tagbar 标签窗口
> `[n] v` 隐藏非公有的标签
> `[n] o` 打开或者关闭一个折叠
> `[n] *` 打开所有折叠
> `[n] =` 关闭所有折叠
> `[n] +` 打开一个折叠
> `[n] -` 关闭一个折叠
> `[n] ` 跳转到标签所在位置
> `[n] ` 收缩 tagbar 窗口
> `[n] ;` 关闭 tagbar 窗口
> `[n] ` 显示 tagbar 窗口帮助信息
> #### ex-qfix
> `[n] ;jr` 启动或者重新启动一个 java-job
> `[n] ;V` 打开或关闭 quick-fix 窗口
> `[n] ` 停止正在运行中的 java-job
> `[n] ` 跳转到对应类的源文件中的对应位置
> `[n] ;` 关闭 quick-fix 窗口
> #### ex-java
> `[n] ;si` 查找并导入当前光标下的类,如果有多个则打开 java 搜索结果展示窗口
> `[n] ;ss` 排序当前文件中的所有 import 语句
> `[n] ;J` 打开或关闭 java 搜索结果展示窗口
> `[n] ` 插入当前行的 import 语句到之前编辑文件的特定位置
> `[n] ;` 关闭 java 搜索结果展示窗口
> #### ex-sql
> `[nx] ;sq` 把选中行当做 sql 语句去执行并打开 mysql 执行结果展示窗口
> `[n] ;st` 生成执行时间
> `[n] ;sg` 生成私有 mysql 配置
> `[n] ;N` 打开或关闭 mysql 执行结果展示窗口
> `[i] ` 补全表名
> `[i] ` 补全数据库名
> `[n] ;` 关闭 mysql 执行结果展示窗口
> #### ex-mog
> `[nx] ;sq` 把选中行当做 js 语句去执行并打开 mongodb 执行结果展示窗口
> `[n] ;` 关闭 mongodb 执行结果展示窗口
> #### ex-tags
> `[n] ` ctags 标签跳转列表
> `[n] ` ctags 标签跳转列表\(窗口预览模式\)
> #### ex-cscope
> `[n] ;;E` 查找本egrep模式\(窗口预览模式\)
> `[n] ;;e` 查找本egrep模式
> `[n] ;;T` 查找本字符串\(窗口预览模式\)
> `[n] ;;t` 查找本字符串
> `[n] ;;C` 查找调用本函数的函数\(窗口预览模式\)
> `[n] ;;c` 查找调用本函数的函数
> `[n] ;;D` 查找本函数调用的函数\(窗口预览模式\)
> `[n] ;;d` 查找本函数调用的函数
> `[n] ;;G` 查找本定义\(窗口预览模式\)
> `[n] ;;g` 查找本定义
> `[n] ;;S` 查找本C符号\(窗口预览模式\)
> `[n] ;;s` 查找本C符号
> #### vim-better-whitespace
> `[n] ;ws` 去除行尾多余空格,具体用法参见 [vim-better-whitespace][1]
> #### nerdcommenter
> `[nx] ;cc` 单行注释\(可批量,所有类型文件通用\),具体用法参见 [nerdcommenter][1]
> `[nx] ;ci` 反转注释\(可反转单行注释和性感的注释,所有类型文件通用\)
> `[nx] ;cs` 性感的注释\(java 文件为文档注释,适用于 c,c++,c#,java 等文件类型\)
> `[nx] ;cu` 取消注释\(可取消单行注释和性感的注释,所有类型文件通用\)
> `[nx] ;cm` 多行注释\(java 文件专用,形如 /\* aaa \*/\)
> `[nx] ;cn` 取消多行注释\(只适用于取消多行注释,取消嵌套注释功能暂未实现,java 文件专用\)
> #### ctrlp.vim
> `[n] ` 模糊搜索文件列表并打开窗口展示,具体用法参见 [ctrlp.vim][2]
> `[n] ;B` 当前缓冲区文件列表,具体用法参见 [ctrlp.vim][2]
> `[n] ;F` 最近打开文件列表历史,具体用法参见 [ctrlp.vim][2]
> `[w] ` 清除缓存,刷新当前模式下模糊搜索文件列表
> `[w] ` 在 file,buffer,mru 三种模式间来回切换
> `[w] ` 在 file,buffer,mru 三种模式间来回切换
> `[w] ` 切换文件搜索方式为文件名搜索或全路径搜索
> `[w] ` 切换文件搜索方式为正则模式或非正则模式
> `[w] ` ctrlp 窗口中上下移动并选中光标行
> `[w] ` ctrlp 窗口中上下移动并选中光标行
> `[w] ` 预览选中行,并在一个新窗口中打开 buffer
> `[w] ` 预览选中行,并在一个新窗口中打开 buffer
> `[w] ` 预览选中行,并在一个新窗口中打开 buffer
> `[w] ` 跳转上一个/下一个模糊搜索历史,非常有用
> `[w] ` 跳转上一个/下一个模糊搜索历史,非常有用
> `[w] ` 创建新文件和它的父级目录,打开一个新的 buffer,:w 之后才会存盘写入文件
> `[w] ` 标记多个文件 `` 同时打开已标记的多个文件
> #### vim-surround
> `[x] s` 给选中文本以 " ' \( \[ \{ < \` 等特殊符号包围
> `[n] cs` 改变包围文本的特殊符号,具体用法参见 [vim-surround][3]
> `[n] ds` 删除包围文本的特殊符号,具体用法参见 [vim-surround][3]
> `[n] ys` 给选中的指定的文本对象以 " ' \( \[ \{ < \` 等特殊符号包围
> #### vim-easy-align
> `[n] ga` 普通模式下对齐文本前置键,具体用法参见 [vim-easy-align][4]
> `[x] ` 可视模式下对齐文本前置键,具体用法参见 [vim-easy-align][4]
> #### vim-easymotion
> `[nx] ;;h` 按单词词头显示跳转字符
> `[nx] ;;j` 按光标所在行显示跳转字符
> `[nx] ;;k` 按光标所在列显示跳转字符
> `[nx] ;;l` 按单词词尾显示跳转字符
> `[nx] ;h` 按 W 显示跳转字符,具体用法参见 [vim-easymotion][5]
> `[nx] ;l` 按 E 显示跳转字符,具体用法参见 [vim-easymotion][5]
> `[nx] ;f` 按 f 查找并显示跳转字符,具体用法参见 [vim-easymotion][5]
> #### emmet-vim
> `[i] ,` html 辅助编写,具体用法参见 [emmet-vim][6]
> #### vim-autoformat
> `[nx] ` 按文件类型格式化选中文本或默认格式化整个文件,具体用法参见 [vim-autoformat][7]
## Coding Tech
* 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
* 码云官方博客 [blog.gitee.com](https://blog.gitee.com)
* 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目
* [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目
* 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
* 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
[0]: https://github.com/vim-colors-solarized
[1]: https://github.com/scrooloose/nerdcommenter
[2]: https://github.com/kien/ctrlp.vim
[3]: https://github.com/tpope/vim-surround
[4]: https://github.com/junegunn/vim-easy-align
[5]: https://github.com/Lokaltog/vim-easymotion
[6]: https://github.com/mattn/emmet-vim
[7]: https://github.com/Chiel92/vim-autoformat