Vim之路

本文介绍了一系列Vim编辑器的高级操作技巧和实用插件,包括YCM代码补全、NerdCommenter注释管理、vim-surround符号对操作、clang-format代码格式化、Syntastic语法检测等,涵盖了C语言、Python等编程语言的支持,以及窗口操作、快速替换字符、折叠操作、获取当前文件目录等实用功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2018.10.8
插件 - YCM

目前最新的vim是支持python2和python3的,所以电脑上对应的python版本有一个就可以,
可以指定gloabl_extra_ycm文件位置

为了支持c语言补全,需要注释掉原来ycm文件中这一段:

     try:
         final_flags.remove( '-stdlib=libc++' )
     except ValueError:
         pass

2018.11.15
操作 - 组合技
  • 插入模式下
    C-o diw,删除该单词,相当普通模式diw
    C-o dw,等于普通模式下dw
    C-o o(为啥不直接用C-[ 进入普通模式。。。emmm,C-o还是快点)
    C-t 缩进
    C-d 缩进回退

2018.11.15
操作 - 组合技 - 快速选中内容
  • 对单词操作(不管光标是否在单词字首或者字尾)
    diw
    ciw
    yiw
    gUiw,单词转大写
    (同样可用caw,比dw,cw等好用 )

  • 对括号内,引号内,等等之间的内容进行操作

    ci(
    ci"
    ca( : 包括符号

( 会包括符号,其他d,v,y类似)


2018.11.15
插件 - 注释

插件: NerdCommenter
https://github.com/scrooloose/nerdcommenter

  • \cc 注释
  • \cm 多行注释有区别
  • \cA 在行尾加注释
  • \cu 取消注释

2018.11.15
插件 - 符号对(pairs)

插件:Plug ‘tpope/vim-surround’
https://github.com/tpope/vim-surround

  • 普通模式下
    yss“, 对于当前行
    ysiw” 对于某个完整字符串
    cs“( 改变符号对,“xxx” 变为 (xxx)
    ds" 删除符号对
  • visiual模式
    S”
  • Tips
    左符号会自动加空格,后符号不会加额外的空格

2018.11.15
操作 - 窗口操作
  • CwH, 移动该窗口到上面
  • cwL,CwJ,CwK
  • Cwr - 与左后或者上下的窗口交换
  • Cwx - 与同一列(右边的)的窗口交换
  • Cw n > , 增加宽度,Cw n+,增加高度

2018.11.20
插件 - clang-format

使用LLVM来 clang-format.pcy 来格式化,可以预设多种风格, doc:
http://clang.llvm.org/docs/ClangFormatStyleOptions.html
LLVM的option:
http://clang.llvm.org/docs/ClangFormatStyleOptions.html


2018.12.8
插件 - 语法检测

https://github.com/vim-syntastic/syntastic
使用插件管理器直接安装

对于python语法,使用pylint的话,需要pip install pylint

  • Tips
    最好关闭自动检测(打开文件,或者保存文件时),使用map来手工触发检测。

2018.12.13
操作 - 组合技
  • dt, ct, yt 操作, dt)删除至下一个), 不包括)
  • df, cf, yf操作,至下一个字符,包括该字符

2018.12.14
命令 - 句号(.)

(句号),重复上一次的操作
例如 ui_interface, 修改为ui_private_interface(光标移到ui, 输入i, private_, 结束),
对于下一个单词,光标到ui时,按句号,就重复上一次操作了,当然,用法还有很多。


2018.12.18
操作-快速替换字符
  • 查找字符串,光标位置,  * 向前(下面)查找,# 向后查找该字符串
  • 替换,光标位置,:%s/ctrl+r, ctrl +w/ 替换的 /gc
2019.2.25
操作-记录命令
  • 普通模式,按下qa,开始记录操作
  • 按q结束记录,按@a,执行操作记录

2019.2.27
操作-折叠
  • 创建:选择模式,选择文档,zf折叠
  • 操作:za,打开和关闭此处的折叠,(zc,zo,大写是递归操作,例如zO是递归展开所有折叠)
  • 操作:zm,关闭该窗口所有折叠,zr打开所有折叠
  • 删除:zd删除改折叠,zE删除所有折叠
2019.2.28
操作-获取当前文件目录

从此vim不阻塞,哈哈哈!!!

由于vim不支持异步执行代码,常常需要执行python教本,直接从vim中运行sh,造成阻塞。
解决办法:单独开cmd/shell,执行代码
需要:当前文件目录,文件名(很长的话,你去敲啊)

步骤
  • 选个空行,命令模式-> :r! echo %:p (%就是当前文件名)
  • C+insert,复制到剪切板
  • 单独开cmd,ctrl-c粘贴,就得到完整的文件目录和文件名了
  • 运行你的脚本呀(例如python + 粘贴)

对于此,vim中输入help expand查看更多

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值