资讯专栏INFORMATION COLUMN

Vi 极简入门

coordinate35 / 515人阅读

摘要:我的目标是简短地介绍每天会用到东西,好了闲话不多说,进入正题。删除行命令模式下,。到此就可以简单使用了。,块操作进入块状态,国标按键就可以选择块了。最后,块注释,程序员的最爱选好列块后,注意是大写,输入,然后两次,就可以块注释了。

1 闲话几句

vi是一个古老而有名的编辑器了,尽管现在有现代的编辑器,不过似乎仍然有学习vi的必要,一来是方便,Linux和Mac默认都会安装。其次显得比较专业。

我的目标是简短地介绍每天会用到东西,好了闲话不多说,进入正题。

2 进入正题 启动

vi play.txt

退出

强制退出::q!
保存退出::wq

理解两种模式

一开始vi似乎难以理解,也许都不知道怎么退出。理解了两个模式就简单了,命令模式和编辑模式。刚启动的时候是命令模式,i就切换到编辑模式,ESC按键切换到命令模式。

命令我理解有两种,底行命令用:开头,会显示在底部。操作文本的常用命令就直接输入。有的书介绍是三种模式,我这里统一成两种模式,都是命令。

下图引自《Vim常用基础命令》,参考。

常用操作

除了输入文本外,通常是在命令模式下,适应了就很简单了。

01 基本操作

i进入编辑模式,就可以输入了,光标按键也是可以的。很简单吧。

删除行:命令模式下,dd3dd就删除3行。

到此就可以简单使用vi了。

02 更多操作 快捷移动

文件头:gg
文件尾: G

段移动:^f, ^b

行头:0, g0
行尾: $, g_

好了,就这么多了,几个命令需要操作适应一下。

查找和替换

查找::/example, n继续下一个。?example/example也可以的。由此可以看出:,/,?三个符号都可以开启底行命令。

替换: :s/old/new

全文替换::%s/old/new/g, 注意末尾的g,这个实际是正则表达式。

逐个替换,这个比较麻烦点,具体的命令可按如下顺序执行:

/which 查找

cwwhat[ESC] chang word

n 下一个,无需替换

n 继续下一个,需要修改

. 点是用来重复上一次操作,即cwwhat[ESC]

复制粘贴,普通人的最爱

粘贴:p
复制:yy, yank,大概是快的意思吧。

undo

undo: u
redo: U^r

块操作

v进入块状态,国标按键就可以选择块了。d就可以删除块了。
^v是列块。

最后,块注释,程序员的最爱

^v选好列块后,I, 注意是大写,输入#,然后两次ESC,就可以块注释了。
反注释,同样选好列块,d就可以了。

当然,这个不如现代编辑器的一键操作方便,不过vi的灵活性是其他编辑器无法比的。

3 总结

我只介绍了基本的操作,命令都是英语单词首字母,容易记忆,多用就熟了。

更多高级的,等我有了体会再写吧。

请拍砖或者补充。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/24937.html

相关文章

  • Nginx 极简入门教程!

    上篇文章和大家聊了 Spring Session 实现 Session 共享的问题,有的小伙伴看了后表示对 Nginx 还是很懵,因此有了这篇文章,算是一个 Nginx 扫盲入门吧! 基本介绍 Nginx 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务。 Nginx 是由伊戈尔·赛索耶夫为俄罗斯访问量第二的 Rambler.ru 站点开发...

    _DangJin 评论0 收藏0
  • Docker极简入门:使用Docker运行Java程序

    摘要:完成之后运行命令你的输出可能会像这样和都为,这是因为刚刚在编写时没有指定它们。多阶段构建镜像多阶段构建镜像其实运行程序只需要就行,我们没有必要使用作为基础镜像。但把程序打包成包,然后再交给的方式太麻烦了。运行简单的Java程序先在当前目录创建App.java文件public class App{ public static void main(String[] args){ ...

    番茄西红柿 评论0 收藏2637
  • Docker 极简印象

    摘要:通过指令可以将可修改层提交到镜像中,从而生成一个新的镜像。仓库有了镜像之后,可以很方便的在不同的机器上运行一致的环境。数据卷是独立于容器存在的,容器销毁后数据卷仍然存在。 Docker是一款比传统虚拟机软件更先进的虚拟化工具,可以快速的在不同机器上搭建出一致的开发、调试、运行环境。它的核心概念有镜像、容器和仓库。 镜像(Image) 类似于ISO文件,是一个打包好的运行环境。一个镜像可...

    GraphQuery 评论0 收藏0
  • GreenSock (TweenMax) 极简入门指南

    摘要:模块化与插件式的结构保持了核心引擎的轻量,包非常小基本上低于。在代码中表示它会把元素初始化为。回调函数提供了丰富的回调函数来操作动画效果。首先来创建一个的函数触发回调函数,只需要添加下面这句代码就可以了就可以了,非常简单。 最近把GreenSock的一些知识以及一些开发技巧使用gitbook整理了一本在线的电子书,GreenSock电子书可以去看看,下面是一个基本入门的简化版本,更详细...

    hoohack 评论0 收藏0
  • Spring笔记1——极简入门教程

    摘要:创建工程将框架代码包解压后放到工作目录。方便起见,本教程使用为例。添加创建一个,负责响应相关的业务请求。添加标注在中,对输入参数进行校验通常使用标注。在本教程,我们将实现的增和查的工作。创建用户用户名重启并提交创建请求。 环境准备 系统:MacOS 开发:IntelliJ IDEA 语言:Java8 其它:Mysql、Redis 脚手架代码 Spring提供了一个创建项目脚手架的官...

    ChristmasBoy 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<