用vim也有一段时间了,谨以此记下一些有意思的技巧。

  1. 跳转

    • hjkl,左下右上。

    • b/e跳转到上/下一个单词
    • ^/$跳转到行头/尾
    • 从{,[,(,相应的},],)相互跳转。能够用%
    • 跳转到局部变量的定义gd,跳转到全局变量的定义gD
    • 跳转到上一个改动过的地方 g; 注意是g+分号
    • 跳转到下一个改动过的地方 g, 注意是g+逗号
    • :N ,跳转到N行
  2. 匹配的符号('', "", (), {}, [], <>)操作
    • ci?,di?,yi?,?为上述的匹配符号。则能够改动,剪切,复制。当中的内容。不包含?
    • ca?,da?,ya?,?为上述的匹配符号。则能够改动,剪切,复制。当中的内容,包含?
    • 举个样例,删除()的内容不包含括号,仅仅须要di?
    • 复制一个字符串"abcde",仅仅须要光标移到当中,ya"
  3. 缩进代码
    • 自己主动缩进 =,假设从头到尾缩进就是gg=G
    • 指定区域缩进 >,< ,能够配合可视模式,C-v进入批量操作缩进。
  4. 折叠函数
    • 移动到{,zf%。
    • 折叠还能够zfN,这样就能够折叠N行
    • 打开折叠,zo
  5. 实用的替换
    • 最基础的替换 :A,Bs/X/Y/g ,从A行到B行,将X替换成Y,没有g仅仅替换每行的第一个。
    • 全局替换: %s/X/Y/g
    • 删除仅仅有另个以上空格的空行 :g/^\s*$/d
    • 删除行尾的空格 :%s= *$==
  6. 批量凝视
    • Ctrl-v 进入可视模式。之后I(shift I),插入凝视符。再按Esc(基本功)
    • 从A到B行最左边增加凝视 :A,Bs/^/#/ (python,php,shell等等),可是。凝视都插在最左边
    • 从A到B行第一非空字符前插入凝视 :
      • %s/([^ ]+)/#\1/
      • :%s/[[:graph:]]\@=/#
  7. 搜索
    • 自光标向前搜索 /pattern
    • 自光标向下搜索 ?pattern
    • 仅搜索行首,/^pattern,或者行尾/pattern$
    • 自光标向前搜索光标所在单词 #
    • 自光标向后索索光标所在单词 *
    • 另外。搜索的。跳转到前一个N,下一个n。
    • 关闭高亮是 :noh
  8. 好用的多标签
    • 开启多标签 tabe 文件名称字
    • 移动到下一个tab,gt或者:tabn
    • 移动到上一个tab,gT或者:tabp
    • 移动到第n个标签, n gt ,注意n gt间要由空格
    • 关闭标签 tabc,用退出也能够
    • 另外多窗也是非常好用的在启动时候 vim -O2 file1 file2 ,注意是字母O,不是数字
  9. 有趣的计算器
    • 在插入模式时候,按Ctrl r =,输入表达式,就会在光标上出现了。

  10. 推荐一些有趣的站点

Skill of vim的更多相关文章

  1. VIM HML

    D:\skill\Apps\Vim\vim80\defaults.vim "set scrolloff=5 设置为默认值0即可

  2. [skill] vim 操作多个window

    前言: 分辨率越来越高,屏幕越来越大,行最长80不变,屏幕利用空白越来越大. 开多个window吧! 开window的命令: 平行开一个window:split <//path/file> ...

  3. [skill][vim] 常用技巧与配置

    一:  光标行列高亮 可以使用 :help highlight 查看相信帮助可颜色配置. set cursorline set cursorcolumn highlight Cursorline ct ...

  4. Java Software Engineer Skill Map

    # Java Software Engineer Skill Map## Basic### Core Java- Java The Complete Reference Ninth Edition.p ...

  5. 如何创建Vim Dotfile?

    Dotfile是电脑系统里的隐藏文件,它是专门给更高级的用户,如开发者.程序员或工程师使用的,让他们用来调整系统.如何创建Vim-Dotfile? 可以参考以下步骤: 1. 首先,你要检查一下.vim ...

  6. 玩转Vim 编辑器

    一:VIM快速入门 1.vim模式介绍 以下介绍内容来自维基百科Vim 从vi演生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执行命令两种模式,并且大多数 ...

  7. vim安装中文帮助手册

    安装方法:   在下面的网站下载中文帮助的文件包:$wget http://nchc.dl.sourceforge.net/sourceforge/vimcdoc/vimcdoc-1.5.0.tar. ...

  8. vim环境变量配置、背景色配置

    我们使用vi或者vim的时候,如果想要显示行号,可能会这样做:切换到命令模式,然后输入set nu,再按回车键就显示了:还有就是咱们在编写程序的时候,有的时候会希望按下回车键后,光标不是每次都在行首, ...

  9. vim+vundle配置

    Linux环境下写代码虽然没有IDE,但通过给vim配置几个插件也足够好用.一般常用的插件主要包括几类,查找文件,查找符号的定义或者声明(函数,变量等)以及自动补全功能.一般流程都是下载需要的工具,然 ...

随机推荐

  1. SOAPUI使用

    简介:在开发接口的时候每次验证接口是否正确都需要手动写测试DEMO来验证,使用SOAPUI可以大大减少测试时间. 目录 1.SOPUI介绍... 1 2.SOAPUI使用... 1 2.1新建SOAP ...

  2. Linux常用PDF阅读软件

    1.福昕阅读器是一款PDF文档阅读器,对中文的支持度非常高.福昕阅读器作为全球最流行的PDF阅读器,能够快速打开.浏览.审阅.注释.签署及打印任何PDF文件. 2.evince是一个支持多种格式的文件 ...

  3. 手把手教你在VMware虚拟机中安装Ubuntu14.04系统

    在VMware中创建完虚拟机之后,一般需要给虚拟机安装系统,比较受青睐的系统有Ubuntu和Centos,关于Centos系统的安装之前已经写过了,感兴趣的小伙伴可以戳这篇文章:靠谱的centos7. ...

  4. strings---对象文件或二进制文件中查找可打印的字符串

    strings命令在对象文件或二进制文件中查找可打印的字符串.字符串是4个或更多可打印字符的任意序列,以换行符或空字符结束. strings命令对识别随机对象文件很有用. 语法 strings [ - ...

  5. 紫书 习题 10-18 UVa 10837 (欧拉函数变形)

    这道题很巧妙,要把式子变一下 phi(n) = n * (1 - 1 / p1) * (1 - 1 / p2)--(1 - 1 / pr) = n * ((p1-1) / p1) * ((p1-2) ...

  6. 菜鸟之路——Java并发(二)ThreadLocal

      一.什么是ThreadLocal   ThreadLocal,非常多地方叫做线程本地变量,也有些地方叫做线程本地存储.事实上意思几乎相同.非常多博客都这样说:ThreadLocal为解决多线程程序 ...

  7. JAVA 并发编程-线程范围内共享变量(五)

    线程范围内共享变量要实现的效果为: 多个对象间共享同一线程内的变量 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsi ...

  8. [DLX反复覆盖] hdu 2828 Lamp

    题意: 有N个灯M个开关 每一个灯的ON和OFF状态都能控制一个灯是否亮 给出N行,代表对于每一个灯 哪些开关的哪个状态能够使得第i个灯亮 思路: 这里须要注意一个问题 假设开关1的ON 状态和开关2 ...

  9. Boolean operations between triangle meshes

    Boolean operations between triangle meshes eryar@163.com Abstract. Boolean operations is one of basi ...

  10. mysql异常Lock wait timeout exceeded; try restarting transaction

    mysql中使用update语句更新数据报错: Lock wait timeout exceeded; try restarting transaction. 这是由于你要更新的表的锁在其它线程手里. ...