vim的介绍以及使用

vim:

vim介绍

  • 一般模式

在一般模式中,用的编辑器命令,比如移动光标,删除文本等等。这也是Vim启动后的默认模式。这正好和许多新用户期待的操作方式相反(大多数编辑器默认模式为编辑模式)。

Vim强大的编辑能来自于其一般模式命令。一般模式命令往往需要一个操作符结尾。例如一般模式命令dd删除当前行,但是第一个"d"的后面可以跟另外的移动命令来代替第二个d,比如用移动到下一行的"j"键就可以删除当前行和下一行。另外还可以指定命令重复次数,2dd(重复dd两次),和dj的效果是一样的。用户学习了各种各样的文本间移动/跳转的命令和其他的普通模式的编辑命令,并且能够灵活组合使用的话,能够比那些没有模式的编辑器更加高效的进行文本编辑。

在一般模式中,有很多方法可以进入编辑模式。比较普通的方式是按a(append/追加)键或者i(insert/插入)键

  • 编辑模式(i可以进入编辑模式)

在这个模式中,大多数按键都会向文本缓冲中插入文本。大多数新用户希望文本编辑器编辑过程中一直保持这个模式。

在编辑模式中,可以按ESC键回到普通模式。

  • 命令行模式

在命令行模式中可以输入会被解释成并执行的文本。例如执行命令(:键),搜索(/?键)或者过滤命令(!键)。在命令执行之后,Vim返回到命令行模式之前的模式,通常是普通模式。

 vim颜色显示和移动光标:

vim可以显示颜色但是它是根据文件的不同表示显示的颜色不同。

一般是以 # 号开头才会显示颜色。

移动光标:

vim一般模式下复制,剪切和粘贴:

nyy=n(光标向下的几行) yy(复制刚刚检索到的几行)

ndd=n(光标向下的几行)dd(剪切刚刚检索到的几行)

p(小写)从光标所在开始行,向下粘贴已经复制或剪切的内容

P(大写)从光标所在开始,向上粘贴已经复制或者剪切的内容

v     按v后移动光标会选择指定的字符,然后可以实现复制,粘贴等操作

X(大写)表示向前删除一个字符

x(小写)表示向后删除一个字符

nx=向后删除n个字符  n=需要删除的字符数字

dd    删除/剪切光标所在的那一行(dd后的那一行会保存在剪切板里面)

u   可以还原上一步操作(最多还原50次以内的操作)

ctrl +r 可以恢复u的上一步操作。

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏進无尽的文章

扒虫篇-崩溃日志解读及Crash收集

崩溃是让发人员比较头痛的事情,app崩溃了,说明代码写的有问题,这时如何快速定位到崩溃的地方很重要。调试阶段是比较容易找到出问题的地方的,但是已经上线的app并...

871
来自专栏龚军的专栏

Docker registry工作机制简介

Docker registry是存储docker image的仓库,本文通过对Docker registry的介绍,让大家更进一步了解Docker regist...

4860
来自专栏杨建荣的学习笔记

vi的补充学习(r4笔记第25天)

今天突然发现vi虽然用了些日子了,但是常用的一些命令之外,还是有些命令比较生疏,简单总结了一下,然后自己在vi里面编辑了一把,效果还不错。 对于大家比较熟悉且常...

32410
来自专栏达摩兵的技术空间

你不知道的opn模块

opn模块通常是作为跨平台的打开文件或者网站的模块,在web应用中最常见的使用是比如项目开发或者启动的时候打开浏览器进行访问。

371
来自专栏中国白客联盟

PIMS三个漏洞+里程密最新版V2.3 SQL注入漏洞

pims在线订单管理系统V4.2.7重装漏洞 程序整天结构如下 ? 安装程序在install目录下,虽然index有验证,代码如下 <?php //检测重...

3936
来自专栏散尽浮华

zabbix中配置当memory剩余不足20%时触发报警

在zabbix中默认当内存剩余量不足2G的时候触发报警,并没有使用百分比来触发如下: ? 现在需要配置:当memory剩余不足20%时触发报警,具体操作方法如下...

2216
来自专栏IMWeb前端团队

@ts-check

本文作者:IMWeb elvin 原文出处:IMWeb社区 未经同意,禁止转载 由于 JavsScript是弱类型,所以在大型项目中使用时显得能力略有...

2038
来自专栏吴伟祥

Jmeter压力测试 转

 它的作用其实是为了模拟用户,所以也叫Users。一个线程组模块可以包含多个线程,每个线程代表一个用户,这样可以模拟高并发下的请求,并根据网站的响应信息来判断网...

672
来自专栏IMWeb前端团队

React组件生命周期

React组件生命周期 React的组件的生命周期分为三个过程: 装载过程(Mount):第一次把组件渲染到DOM树的过程; 更新过程(Update):组件进行...

1877
来自专栏玄魂工作室

怎样学Python之第十九课 高级文件输入和输出

欢迎回来!如果您还记得以前的几次培训课程,我们介绍了基本的文件I/O。 这是使我们的脚本适用于现实生活场景中的一个非常重要的步骤,今天我们将要深入这些概念。 我...

3065

扫码关注云+社区