1.查找

'/' + 要找的字符串(正则表达式) + Enter

# 查找偏移
'n': 查找下一个
'N': 查找上一个

大小写敏感性:字符串尾接\c不敏感,\C敏感

可以~/.vimrc在配置中配置set ignorecase;还可以配置set smartcase,在有大写字母时切换回到小写敏感

2.光标移动

文件为单位

# 移至文件首
'gg'
':' + '0' + Enter (命令模式,0改成1也可) # 移至指定行 num行
num + 'gg'
num + 'G' # 移至文件尾
'G' (即 Shift + 'g')
':' + '$' + Enter (命令模式)

行为单位

# 移至行首
'0'
'^' # 移至行尾
num + '$': 移动到当前行起(含)第num行行尾;若num=1可省略

其实直接在.vimrc中设置set mouse=a会很舒服(或在已打开的vim中输入:set mouse=a),就变成鼠标操作了;但我自己在tmux里这样可行,不在tmux中反而失效了,挺怪的没搞清

3.经典文本处理

回退:

'u': 撤销
Ctrl + 'r': 反撤销

粘贴:

'p': 将剪切板内容粘贴到光标选择内容之后
'P': 将剪切板内容粘贴到光标选择内容之前

关于光标光标选择内容

命令行里光标总是笼罩着一个字符,但其实应将光标填充块首位置当作光标位置。如是认为:光标指向间隙,不指向字符,只有前后的概念

约定: 光标填充块-光标选择内容;光标填充块首位置-光标位置

复制:

'y' + 左右键: 复制光标前/后的单字符;

'y' + num + 'w': 复制光标后字符为首的num个词(尾部无空白字符);若num=1可省略;
# 分词依据即空格分词
num + 'y' + 'y': 复制光标所在行及以下num行;若num=1可省略;
# 注意行尾的\n(\r\n)。若在行首使用yy并接着按p,会在下方出现一摸一样的一行,下面的那行这其实是被复制行挤下去的 'y' + '0': 复制行首到光标前的内容;
'y' + '$': 复制光标后到行末的内容;

删除:

'd' + 左右键: 删除光标前/后的单字符

'd' + num + 'w': 删除光标后字符为首的num个词;若num=1可省略;
num + 'd' + 'd': 删除光标所在行及以下num行; 'd' + '0': 删除行首到光标前的内容;
'd' + '$': 删除光标后到行末的内容;

很多操作都是对称的,闻一知三

4.可视化选择

可视化模式

v: 从当前光标选择内容起,按左右键以字符粒度进行选择;当前光标选择字符必定被选中,即不存在选择内容空的情况

V: 从当前光标选择内容起,按上下键以行粒度进行选择;当前光标选择行必定被选中

按相同的键即可退出

5.批量替换

类似sed的s命令用法

在每行行首加'//'(块注释)

':%s/^/\/\/' + Enter
# '/'需要用'\'转义

vim使用技巧记录的更多相关文章

  1. vim 使用技巧记录

    vim 使用技巧记录 1.批量注释与取消注释 命令格式:起始行号,结束行号s#^#//#g 例如: 注释代码3到15行,"//"可以是其他的"" :3,15s# ...

  2. Linux系统配置VI或VIM的技巧

    Linux系统配置VI或VIM的技巧作者:IT专家网论坛出处:IT专家网论坛2008-10-28 11:08配置VI和VIM的颜色显示,使它能够高亮度显示一些特别的单词,这对编写程序很有用⋯⋯ 1.V ...

  3. 转载: vim使用技巧

    两篇很牛的vim使用技巧   来源: ChinaUnix博客 日期: 2009.07.06 10:18 (共有条评论) 我要评论   读本文之前请注意:1. 本文的目标是提供一些vim的使用技巧,利用 ...

  4. vim gvim技巧大全(9)(转载)

    vim gvim技巧大全(9) 2 用命令}移动到这个段落的底部,标记为b3 输入命令:'a,'b move来移动文本.老版本的Vi编辑器不能很好的来处理多文件.但是Vim在处理多文件上却显得优秀得多 ...

  5. Vim使用技巧(持续更新)

    好记性不如烂笔头,在这里记录一些Vim使用技巧 vim配置 "拷贝同步到系统剪切板" set clipboard=unnamed "显示行号" set nu & ...

  6. Vim 常用技巧:

    Vim 常用技巧: 将回车由默认的8个空格改为4个空格: 命令:set sw=4 修改tab为4空格: 命令:set ts=4 设置每一级的缩进长度: 命令:set shiftwidth=4 设置文件 ...

  7. ###《VIM实用技巧》

    ###<VIM实用技巧> #@author: gr #@date: 2015-11-20 #@email: forgerui@gmail.com <VIM实用技巧>阅读笔记. ...

  8. 无插件Vim编程技巧

    无插件Vim编程技巧 http://bbs.byr.cn/#!article/buptAUTA/59钻风 2014-03-24 09:43:46 发表于:vim  相信大家看过<简明Vim教程& ...

  9. vim实用技巧总结

    1. 单个文件内实用mark来帮助跳转以及一些宏操作.(注意:mark不能用于多文件之间的跳转)mch 设置宏,保存到ch标记(不是ch寄存器)'ch 跳转到标记的行首`ch 跳转到标记的字符处另:为 ...

  10. 无插件VIM编程技巧(网摘)

    无插件VIM编程技巧 原文出处:[陈皓 coolshell] 相信大家看过<简明Vim教程>也玩了<Vim大冒险>的游戏了,相信大家对Vim都有一个好的入门了.我在这里把我日常 ...

随机推荐

  1. 解决docker 容器设置中文语言包出现的问题_docker

    https://www.anquanclub.cn/5821.html 这篇文章主要介绍了解决docker 容器设置中文语言包出现的问题,具有很好的参考价值,希望对大家有所帮助.一起跟随小编过来看看吧 ...

  2. 【转载】Apache Doris、DorisDB傻傻分不清。。。

    https://www.sohu.com/a/488816742_827544   相信这两天很多社区小伙伴都看到 StarRocks 所谓"开源"的动态了,开源用户群里有很多小伙 ...

  3. SpringBoot外部配置以及优先级

      SpringBoot外部配置属性值的方式有很多种,SpringBoot为这多种配置方式指定了优先级,在属性相同的情况下,优先级高的配置方式会覆盖优先级低的配置方式.当然,如果属性不相同,则这些配置 ...

  4. Spring RestTemplete支持Https安全请求

    实现步骤 Step1: 自定义ClientHttpRequestFactory package com.example.demo.https; import org.springframework.h ...

  5. Qt/C++音视频开发49-多级连保存和推流设计(同时保存到多个文件/推流到多个平台)

    一.前言 近期遇到个用户需要多级联的保存和推流,在ffmpegsave多线程保存类中实现这个功能,越简单越好,就是在推流的同时,能够开启自动转储功能,一边推流的同时一边录像保存到本地视频文件.最初设想 ...

  6. Qt音视频开发12-easyplayer内核

    一.前言 在视频监控行业经常看到两个厂家广告打得比较厉害,一个是青犀视频对应easyplayer,一个是大牛直播,两个最初都是sdk免费,并提供调用示例源码,后面大牛直播的sdk以及示例都无法运行,目 ...

  7. [转]vcpkg+opencv4(sfm+vtk)+openMVS+SFM算法-github代下载(http://gitd.cc/)

    1.vcpkg+opencv4(sfm+vtk)+openMVS+SFM算法-github代下载(http://gitd.cc/) 2.OpenMVS详细安装教程(ubuntu18.04) 3.ubu ...

  8. 基于Netty,从零开发IM(二):编码实践篇(im单聊功能)

    本文由作者"大白菜"分享,个人博客 cmsblogs.cn,有较多修订和改动.注意:本系列是给IM初学者的文章,IM老油条们还望海涵,勿喷! 1.引言 接上篇<IM系统设计篇 ...

  9. JVM虚拟机中的内存区域

  10. 面向对象-下(复习:关键字static、单例模式、main()的使用说明、类的结构代码块、属性的赋值顺序、关键字final)

    一.关键字:static static:静态的1.可以用来修饰的结构:主要用来修饰类的内部结构属性.方法.代码块.内部类2.static修饰属性:静态变量(或类变量) 2.1 属性,是否使用stati ...