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. Qt/C++开源作品45-CPU内存显示控件/和任务管理器一致

    一.前言 在很多软件上,会在某个部位显示一个部件,专门显示当前的CPU使用率以及内存占用,方便用户判断当前程序或者当前环境中是否还有剩余的CPU和内存留给程序使用,在不用打开任务管理器或者资源查看器的 ...

  2. Qt编写安防视频监控系统41-秘钥认证

    一.前言 早些年开源过一个秘钥生成器,做的比较粗糙,离真正的商业应用还差点距离,这次在用户的强烈要求下,对秘钥认证这块做了重新的改版,对原有的类进行了重写,重写后一个类不到300行完成所有的事情,并提 ...

  3. JMeter使用指南+实验报告

    JMeter使用指南 目录 JMeter使用指南 界面基本配置方法 1.选项里的放大与缩小--缩放字体 2.选项里的选择语言 3.命令行的调出 注意事项 一些指标介绍 1.TCP取样器 2.汇总/聚合 ...

  4. [转]E1接口介绍

    E1 通道本来设计用来传输电话的,每个 E1(带宽 2.048M)可以传 30 路电话,后来扩大的应用范围,可以用作传网络,串口等不同的业务:E1 是一个基本的传输单元,其最终还是通过光纤来传输的,如 ...

  5. 微信团队分享:微信后端海量数据查询从1000ms降到100ms的技术实践

    本文由微信技术团队仇弈彬分享,原题"微信海量数据查询如何从1000ms降到100ms?",本文进行了内容修订和排版优化. 1.引言 微信的多维指标监控平台,具备自定义维度.指标的监 ...

  6. .NET 9.0 使用 Vulkan API 编写跨平台图形应用

    前言 大家好,这次我来分享一下我自己实现的一个 Vulkan 库,这个库是用 C# 实现的,主要是为了学习 Vulkan 而写的. 在学习 Vulkan 的过程中,我主要参考 veldrid,它是一个 ...

  7. 【源码】Kafka订制协议如何处理粘拆包

    前言 在上一篇随笔中,我们探讨了如何使用 Netty 处理自定义协议中的粘包和拆包问题.Netty 提供了高度封装的 API,帮助开发者轻松应对这一挑战,因此很多人都对其解决方案非常熟悉. 但如果我们 ...

  8. SpringMVC实现原理及详解

    1.什么是 SpringMVC ? 在介绍什么是 SpringMVC 之前,我们先看看 Spring 的基本架构.如下图: 我们可以看到,在 Spring 的基本架构中,红色圈起来的 Spring W ...

  9. springBoot(1)--初步理解

    在没有用SpringBoot之前,我们用spring和springMVC框架,但是你要做很多比如: (1)配置web.xml,加载spring和spring mvc 2)配置数据库连接.配置sprin ...

  10. cmake-3

    本节内容,转载文章:https://www.zhihu.com/column/c_200294809 :参考程序:https://github.com/BrightXiaoHan/CMakeTutor ...