设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 手机 数据 公司
当前位置: 首页 > 服务器 > 安全 > 正文

Vim配置、插件和使用技巧(2)

发布时间:2021-03-13 10:56 所属栏目:53 来源:网络整理
导读:YouCompleteMe是一个快速、支持模糊匹配的vim代码补全引擎。由于它是基于Clang引擎为C/C++/Objective-C提供代码提示,也支持其他语言代码提示的引擎,例如基于Jedi的Python代码补全,基于OmniSharp的C#代码补全,基

  YouCompleteMe是一个快速、支持模糊匹配的vim代码补全引擎。由于它是基于Clang引擎为C/C++/Objective-C提供代码提示,也支持其他语言代码提示的引擎,例如基于Jedi的Python代码补全,基于OmniSharp的C#代码补全,基于Gocode的Go代码补全。

Vim配置、插件和使用技巧

  只需敲入代码,就自动提示想输入的代码列表,你可以选择其中一个,然后tab键就可以补全代码。

  YouCompleteMe已经集成了Syntastic,所以一旦你编写代码时语法错误,就会有红色错误提示

Vim配置、插件和使用技巧

  ctrlp

  不知道你有没有遇到这样一种情况:在大规模的工程项目中,目录和文件嵌套比较深,打开一个文件要逐个逐个进入目录才能打开,这样的话,比较耗时间和效率很低,ctrlp重新定义打目录和文件方式,特别适用于大规模项目文件的浏览。

  启用ctrlp

  • 运行命令:CtrlP或:CtrlP [starting-directory]来以查找文件模式来启用 ctrlp
  • 运行命令:CtrlPBuffer或:CtrlPMRU来以查找缓冲或最近打开文件模式来启用ctrlp
  • 运行命令CtrlPMixed来查找文件、查找缓冲和最近打开文件混合模式来启动 ctrlp

  基本使用

  • 按<c-f>和<c-b>在三种查找模式中互相切换
  • 按<c-y>来创建新文件和对应的父目录
  • 按<c-d>来切换到只查找文件名而不是全路径
  • 按<c-j>,<c-k>或箭头方向键来移动查找结果列表
  • 按<c-t>或<c-v>,<c-x>来以新标签或分割窗口的方式来打开文件
  • 按<c-z>来标识或取消标识文件,然后按<c-o>来打开文件
  • 按<c-n>,<c-p>来在提示历史中选择下一个/上一个字符串

  演示视频

  具体如何使用ctrlp,请参考happypetterd的演示视频,讲解非常清楚。

  Vim Powerline

  Vim Powerline是一个显示vim状态栏插件,它能够显示vim模式、操作环境、编码格式、行数/列数等信息

Vim配置、插件和使用技巧

  Molokai

  Molokai是vim颜色主题,效果如下

Vim配置、插件和使用技巧

 常用命令

对于入门vim基本命令可以参考 简明 Vim 练级攻略,以下是本人关于移动光标、插入/修改、删除、复制、粘帖、撤销和恢复等常用命令

  • 移动光标

    对于在行内移动,通过使用f/F + 字符来移动到特定的字符,然后再使用. 来重复执行命令;f表示向前移动,F表示向后移动。如果想直接移动到行首或行尾,使用^或$

    对于在多行移动,就有多种选择:第一种是通过gg,G,行数 + G指定行数来移动,gg表示移动文件的第一行,G表示移动文件的最后一行,行数 + G表示移动到特定的行。第二种就是通过正则搜索的方式来移动,/string表示正向查找,?string表示反向查找,n查找下一个匹配的结果,N表示上一个匹配的结果,按up/down可以浏览搜索历史。第三种就是使用标记来移动,m + {a-z}标记位置(适用于单个文件,如果是多个文件,使用大写字母{A-Z}),`{mark}移动到标记位置的列,'{mark} 移动到标记位置的行首,还有一些特殊的标记,'表示跳转前光标的位置

  • 选择文本
    v不规则选择
    V按行选择
    Ctrl + V按列选择

  • 插入/修改
    i在当前字符前面插入
    I在行首插入
    a在当前字符后面插入
    A在行尾插入
    o在当前行的下一行插入
    O在当前行的上一行插入

    r更改当前的字符
    R更改多个字符
    cw/caw更改单词
    cf + 字符更改从当前字符到指定字符
    c$更改从当前字符到行尾
    cc更改整行

  • 删除
    x删除字符
    df + 字符删除从当前字符到指定字符
    dw/daw删除单词
    d$删除从当前光标到行尾
    dd删除一行

  • 剪切与粘帖
    dd + pdelete一行,然后放在当前光标下方
    dd + Pdelete一行,然后放在当前光标上方
    dw + p delete单词,然后放在当前光标后面
    dw + P delete单词,然后放在当前光标前面
    p/P可接受计数前缀,重复粘贴

  • 复制
    yw复制单词
    yf复制从当前字符到指定字符
    y$复制当前光标到行尾
    yy复制整行

  • 撤销和恢复
    u撤销
    ctrl + r重做

  • 重复操作
    数字+action表示执行某个操作多少次
    .重复上一个操作

  • 宏录制
    q + 寄存器(a-z)开始录制
    录制动作
    q停止录制
    @ + 寄存器 / @@replay被录制的宏

 扩展阅读

  • Vim配置
    从零搭建和配置OSX开发环境
    将你的Vim 打造成轻巧强大的IDE
  • Vim插件
    vim中的杀手级插件: vundle
    谁说Vim不是IDE?(三)
    vim中的杀手级插件: YouCompleteMe
  • Vim入门和使用技巧
    简明 Vim 练级攻略

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读