专栏首页个人技术【最简单的vim教程】vim学习笔记-基础操作

【最简单的vim教程】vim学习笔记-基础操作

Vim基础操作

说明

  • C-字母 = Ctrl + 字母
  • char = 任意字符

开始编辑

insert

按键

功能

说明

i(I)

insert

当前位置插入(当前行前)

a(A)

append

当前字符后面插入(当前行后)

o(O)

open a line below

当前行的下面(当前行上面)

模式

模式

功能

说明

普通模式(ESC)

normal

操作和移动

插入模式(i,a,o)

insert

编辑

命令模式(:)

command

执行命令

可视模式(v,V,C-v)

visual

选择

可视模式

visual

按键

说明

v

选中字符

V

选中当前行

C-v

方块选择

插入模式技巧

insert

按键

功能

说明

C-h

删除

上一个字符

C-w

删除

当前单词

C-u

删除

当前行(终端可使用)

C-a

移动到开头

终端

C-e

移动到结尾

终端

切换insert和normal模式

按键

功能

说明

C-[

切换到normal

代替ESC

C-c

切换到normal

代替ESC

gi

跳转到上一次编辑的位置操作

普通模式

normal

快速移动

按键

功能

说明

hjkl

移动

上下左右

w(W)

移动

下一个单词开头

e(E)

移动

下一个单词结尾

b(B)

移动

上一个单词开头

大写以空白格为分隔符

行间搜索移动

按键

功能

说明

f{char}(F)

跳转

跳转到char上(往前搜)

t{char}

跳转

跳转到char前一个字符

; or ,

继续

继续查找

水平移动

按键

功能

说明

0

移动

移动到行首

$

移动

移动到行尾

页面移动

按键

功能

说明

gg

移动

文件开头

G

移动

文件结尾

C-o

移动

快速返回上一位置

H/M/L

移动

屏幕开头/中间/尾

C-u

翻页

C-f

翻页

zz

翻页

中间

删除命令

按键

功能

说明

{number}x

删除

删除一个字符

diw

delete

删除一个单词(不删除空格)

dw

删除word

删除一个单词

{number}dd

删除

删除当前行

dt{符号}

删除

删除符号之间的内容

d

删除

直接删除选中部分

快速修改

按键

功能

说明

r(R)

替换

替换一个字符(替换后面一个字符)

c{任意命令}

改变

删除然后进入i

caw

改变

删除并改变一个单词

s(S)

替换

删除当前字符,然后进入i(删除整行)

u

回退

撤销

C-r

回退

前进

查询

按键

功能

说明

/ or ?

查询

n or N

移动

下 /上

* / #

移动

前 / 后

Text Object

[ number ]< command >[ text object ]

按键

功能

viw

选中一个单词

vaw

选中一个单词(周围)

caw

修改一个单词

ci+符号

删除符号内的内容

寄存器

复制粘贴

normal

按键

功能

y(yy)

复制(复制一行)

p

粘贴

” + y

复制到系统剪切板

insert

按键

功能

C-v

粘贴

按键

功能

q{char}

录制宏,并存在a中

q

结束录制宏

:normal @{char}

批量恢复录制

@{char}

恢复录制

示例:

 []中间为示例操作流程
 
  • q{char}

[

  • I{char}当前行前加入char (例子)
  • A{char}当前行后加入char(例子)

]

  • q 结束录制
  • 恢复录制@a
  • 行选需要操作的文本
  • :normal @a

博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议 本文永久链接是:https://mrhuanhao.cn/2020/03/23/learnvim/ 转载时,请注明文章来源!!!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • h5ai服务器目录

    在前几天,我帮人安装h5ai这个东西,结果直接踩坑,装了一个下午,打算自己也装一个,顺便写一下教程 最终效果演示:

    huanhao
  • 【基础篇】hexo博客搭建教程

    不要担心,本系列教程将会实现你白嫖的愿望,连服务器都不需要买,就算没有任何编程基础也可以学会的搭建博客教程

    huanhao
  • Valine评论系统邮件提醒

    这几天想到,别人给我发的评论,我还要到后台去看,实在是太麻烦了,于是发现了一个好项目valine-admin可以帮我发送邮件评论提醒,这样我就可以实时收到别人给...

    huanhao
  • 创建用户时的密码校验问题(r2第34天)

    今天需要在测试环境中做一些性能测试,为了不影响原有的数据,准备创建一个临时的schema。但是创建的时候报了如下的错误。 SQL> create user mi...

    jeanron100
  • 爬取某东600多本书籍,用数据帮你分析哪些Python书籍值得选择(上)

    最近有好几个读者私下问我:刚接触Python、或打算要学习Python,不知道选什么书比较合适,当时只根据自己的Python经验和学习感受,给读者推荐了一些自认...

    小小詹同学
  • DC其他的时序约束选项(一)

    之前讲了基本的时序路径约束,现在我们来看一下其他的约束,然后通过实战来讲解一些其他的约束。实战中也没有前面的“理论”中的约束类型,但是可以通过实战来了解其他的约...

    数字芯片社区
  • 编程小白 | 每日一练(74)

    这道理放在编程上也一并受用。在编程方面有着天赋异禀的人毕竟是少数,我们大多数人想要从编程小白进阶到高手,需要经历的是日积月累的学习,那么如何学习呢?当然是每天都...

    闫小林
  • AAAI 2020 | 用渐进打磨获得最佳的显著性目标检测结果

    论文标题:Progressive Feature Polishing Network for Salient Object Detection

    AI科技评论
  • 学会这几点,成为CNC数控编程高手并不难,建议初学者认真阅读

    首先,可能有好多人还不知道什么叫CNC数控编程的。我在这里简单的科普一下。CNC数控编程,是指在计算机及相应的计算机软件系统的支持下,自动生成数控加工程序的过程...

    UG数控编程
  • Container 技术是否能取代VMware虚拟化?

    独家专访VMware执行长Pat Gelsinger:VM对战Container如何胜出? 全云端IT,或NoOps、Container和微服务设计为主的Ne...

    人称T客

扫码关注云+社区

领取腾讯云代金券