vim 神级配置 vimrc

使用的配置

https://github.com/amix/vimrc

安装很简单

git clone --depth=1 https://github.com/amix/vimrc.git ~/.vim_runtime
sh ~/.vim_runtime/install_awesome_vimrc.sh

ack 插件

系统需要安装 ack-grep, ubuntu安装命令:sudo apt-get install ack-grep

常用命令

  1. 全局查找文件(ctrlp插件)
    ctrl + f --打开全局文件搜索面板
    Esc --退出全局文件搜索面板

  2. tab(标签)相关
    gt --后一个标签
    gT --前一个标签
    num + gt --跳转至第num个标签
    ,tl --上一次的标签
    :q --关闭标签
    :Te --新建标签,并打开当前文件目录
    ,tn --新建空白标签

  3. 目录树(NERD_tree插件)
    ,nn --打开目录树
    ,nn --关闭目录树

  4. 窗口相关
    ctrl + w + q --关闭窗口
    :q --关闭窗口,窗口只有一个tab的情况
    ctrl + w + w --切换窗口
    :sp --竖直方向上拆分当前窗口
    :vsp --水平方向上拆分当前窗口

  5. 如何打开一个工程
    在某个工程的根目录下输入打开vim,则该vim窗口的文件操作默认为整个工程,比如全局搜索文件或字段

  6. 全局搜索字段(ack插件)
    ,g --打开全局字段搜索面板,默认大小写敏感,-i 不区分大小写,-w 全词匹配
    q --退出全局字段搜索面板

  7. 当前文件所在的目录
    :E --打开当前目录,一般用于切换当前目录的文件
    :Te --新建标签并打开当前目录,一般用于打开当前目录下的其它文件

  8. 查看最近打开的文件列表
    ,f --打开面板
    q --退出面板

  9. 当前文件下搜索
    * --按下即可搜索光标所在的单词或当前选中的内容,不区分大小写
    gd --光标移动至单词,按下
    即可搜索该单词,区分大小写
    / --输入单词向下搜索
    --输入单词向上搜索,一般用于查log,配合G跳转至文件底部使食

  10. 显示行修改标志
    ,d --显示与不显示逐一切换

  11. 光标停留的位置记录
    ctrl + o --上一个时间点光标停留的位置
    ctrl + i --下一个时间点光标停留的位置

  12. 文件刷新,即重新载入
    :e --重新载入
    :e! --放弃当前修改,强制重新载入
    :e file_dir --载入 file_dir 路径下的某个文件

  13. 粘贴0号寄存器的内容
    ctrl + r + 0 --比如y复制选中的内容后粘贴到命令输入框

  14. 折叠命令
    za --打开或关闭当前折叠
    zM --关闭所有折叠
    zR --打开所有折叠

  15. 跳出双引号继续编辑
    有些时候输入完字符串需要移动光标至双引号外继续输入
    " --在 " 处输入 " ,即可将光标跳转至当前双引号之外

  16. 文件路径
    :f --查看当前文件路径

  17. 变量名补全
    ctrl + n --自动补全变量名,再次输入匹配下一个

  18. 代码块补全,只需输入部分代码,然后按tab键
    lua为例:
    if + tab --if代码块
    forp + tab --for i,v in pairs() do end 代码块
    fori + tab --for i,v in ipairs() do end 代码块
    fun + tab --函数模板代码块

  19. 代码检错
    :ALEToggle --启动检错

  20. 代码注释
    gcc --注释当前行,再次输入则撤销注释
    num + gcc --注释num行
    gc --注释选中部分

  21. 取消搜索高亮
    :nohl

  22. 多窗口显示
    :sp --水平切分窗口
    :vsp --垂直切分窗口

vim 编辑相关

  1. 范围命令
    w --光标所在的位置至单词末尾的部分或一个单词,包括单词后的空格
    iw --光标所在位置的一个单词,不包括单词后的空格
    aw --光标所在位置的一个单词,包括单词后的空格
    b --与 w 相反
    e --end of word,至单词结尾
    $ --至当前行结尾
    0 --至当前行开头

  2. 操作命令
    d: delete
    dd --删除当前行
    diw --删除光标所在单词
    dw --正向删除一个单词(光标后的部分)
    db --逆向删除一个单词(光标前的部分)
    d$ --删除光标所在的位置至本行末尾
    d0 --删除光标所在的位置至本行首部
    c: change, 与 d 的区别只在于操作后进入插入状态
    y: yank, 与 d 的区别在于跟范围命令组合后全部为复制操作

  3. 操作命令(少与范围命令组合)
    ~ --大小写字母转换
    s --删除一个字母,删除后进入插入模式
    x --删除一个字母,删除后处于命令模式
    r --即replace,修改替换一个字母,并且替换过后仍然处于命令模式
    R --修改替换无限多个在字母

你可能感兴趣的:(vim 神级配置 vimrc)