什么是VIM

vim是一个高度可定制的文本编辑器,被很多专业的程序员使用,并获得了程序员的一致好评。

下图是Vim的官网vim.org



你可以在Vim的官网免费下载并使用Vim,同样可以在Vim官网学习你所需要的Vim使用技巧。

VIM的打开和保存关闭

你可以在Vim官网下载windows下可用的VIM二进制程序,安装之后,双击VIM的图标即可打开VIM编辑器。

当然,如果是在Linux下,你可以使用你Linux发行版的包管理工具进行安装VIM,之后在shell环境下,输入VIM命令即可打开VIM。

当然,你也可以输入VIM+filename命令来打开filename文件,如果filename文件不存在,则会创建它。

当你编辑完成之后,你可以输入一下命令来退出。

:n	此时输入的n为你想要跳转的行号
:q 退出VIM,前提是你已经保存过了
:wq 保存并退出VIM
:q! 强制退出,即不保存退出

VIM的三种模式

普通模式输入VIM进入VIM后就是普通模式,也就是一般模式,不是正在输入时候的模式。

插入模式进入插入模式后才能进行输入字符或插入代码。

命令模式当你需要执行跳转、替换字符串、保存退出等操作时需要进入的是命令模式。

比如:你在shell环境下输入了VIM hello.txt回车,这时便是进入了普通模式,你按下i/I/a/A/o/O后便进入了插入模式,你写好代码后按下了ESC键此时又回到了普通模式,然后你按下shift+:输入了冒号,此时你便进入了命令模式,你输入了wq并回车,你便编辑保存 并退出了VIM。一个工作流程结束。

进入插入模式的说明

命令 说明
i 当前光标后插入
I 当前行首插入
a 当前光标前插入
A 当前行尾插入
o 开新行置下插入
O 开新行置上插入
移动 h左移 J下移 k上移 L右移

VIM的操作技巧

在VIM中执行命令,应当以可持续使用为主,比如你要删除两个单词。你可以使用cw./c2w/2cw等,但是使用cw.会更好,因为如果你后续还需要删除单词,只需要再次输入.即可,而其他方式则有了次数限制,不能持续使用。

当在普通模式下时:

命令 说明 命令 说明
dl 删除一个字符 dd 删除整行
daw 删除一个单词
d2w 删除两个单词 2dw 执行两次删除一个单词
.(点) 重复上次的命令 u 撤销上次命令

当在插入模式下时:

命令 说明
<C-h> 删除前一个字符(同退格)
<C-w> 删除前一个单词
<C-u> 删至行首
<ESC> 切换到普通模式
<C-[> 切换到普通模式
<C-o> 切换到插入-普通模式

说明:插入-普通模式是指可以执行一次普通命令,然后就返回插入模式的模式。

来,让我们一起来学习VIM的更多相关文章

  1. 跟我一起学习VIM

    跟我一起学习VIM - The Life Changing Editor   前两天同事让我在小组内部分享一下VIM,于是我花了一点时间写了个简短的教程.虽然准备有限,但分享过程中大家大多带着一种惊叹 ...

  2. 7张图片学习VIM教程

    7张图片学习VIM教程 张图片设置为桌面背景,时不时的能看上一眼.慢慢就学会VIM了. VIM lesson 1 VIM lesson 2 VIM lesson 3 VIM lesson 4 VIM ...

  3. 学习vim命令:“:w !sudo tee %”

    学习vim命令:“:w !sudo tee %” Original URL:http://www.haw-haw.org/node/1501 原文来自于commandlinefu 原文是这样解释这个命 ...

  4. 跟我一起学习VIM - The Life Changing Editor

    前两天同事让我在小组内部分享一下VIM,于是我花了一点时间写了个简短的教程.虽然准备有限,但分享过程中大家大多带着一种惊叹的表情,原来编辑器可以这样强大,这算是对我多年来使用VIM的最大鼓舞吧.所以分 ...

  5. 新手学习 Vim 的五个技巧

    多年来,我一直想学 Vim.如今 Vim 是我最喜欢的 Linux 文本编辑器,也是开发者和系统管理者最喜爱的开源工具.我说的学习,指的是真正意义上的学习.想要精通确实很难,所以我只想要达到熟练的水平 ...

  6. 【转载】跟我一起学习VIM - vim插件

    目录 写在前面:Life Changing Editor 什么是VIM 为什么选VIM 为什么选其它 为什么犹豫选择它们 VIM >= SUM(现代编辑器) 如何学习VIM 一秒钟变记事本 VI ...

  7. (转载)跟我一起学习VIM - The Life Changing Editor

    原文: http://ju.outofmemory.cn/entry/79671 前两天同事让我在小组内部分享一下VIM,于是我花了一点时间写了个简短的教程.虽然准备有限,但分享过程中大家大多带着一种 ...

  8. ubuntu中启动VIM,以及学习VIM

    启动VIM:首先打开终端,然后输入vi回车,然后输入i或者a,进入. 学习VIM:首先打开终端,然后输入vimtutor回车,然后进入教程学习.

  9. 跟我一起学习VIM - vim插件合集

    2016-06-14 15:04 13333人阅读 评论(0) 收藏 举报 分类: Linux(104)  目录(?)[+]  前两天同事让我在小组内部分享一下VIM,于是我花了一点时间写了个简短的教 ...

  10. 一步一步学习Vim 全图解释

    转载:http://linux.chinaunix.net/techdoc/desktop/2009/01/03/1056322.shtml 一步一步学习Vim 全图解释 以下注释,根据图示和自己实践 ...

随机推荐

  1. Vue2.0 【第一季】第2节 v-if v-else v-show 指令

    目录 Vue2.0 [第一季]第2节 v-if v-else v-show 指令 第二节 v-if v-else v-show 指令 2.1 v-if指令.v-else指令: 2.2 v-show的使 ...

  2. Navicat15最新版本破解 亲测可用!!!

    1.下载Navicat Premium官网https://www.navicat.com.cn/下载最新版本下载安装 2.本人网盘链接:https://pan.baidu.com/s/1ncSaxId ...

  3. Spark入门(三)--Spark经典的单词统计

    spark经典之单词统计 准备数据 既然要统计单词我们就需要一个包含一定数量的文本,我们这里选择了英文原著<GoneWithTheWind>(<飘>)的文本来做一个数据统计,看 ...

  4. ASP.net MVC 构建layui管理后台(构造基础仓储)<1>

    本文章为ASP.net MVC 构建layui管理后台,第一篇. 使用EF+ado.net 实体数据模型模式进行底层的数据库连接. 在项目添加一个类库Model 在类库Model上添加一个ado.ne ...

  5. (转)const的内部链接属性(C++中适用)

    转载自:http://xiangwangfeng.com/2011/05/02/const%E7%9A%84%E5%86%85%E9%83%A8%E9%93%BE%E6%8E%A5%E5%B1%9E% ...

  6. 单选框 改成 复选框 的css样式

    fillEditorFakeTable.less /* add for the global title checkbox fake */ .fake-checkbox { display: inli ...

  7. JAVA-阿里云短信服务

    1.引入相关依赖 <!--lombok--> <dependency> <groupId>org.projectlombok</groupId> < ...

  8. (翻译) 使用Unity进行AOP对象拦截

    Unity 是一款知名的依赖注入容器( dependency injection container) ,其支持通过自定义扩展来扩充功能. 在Unity软件包内 默认包含了一个对象拦截(Interce ...

  9. hdu1253胜利大逃亡(城堡的怪物太狠,主角难免天天逃亡)

    题目链接:http://icpc.njust.edu.cn/Problem/Hdu/1253/ 其实就是二维扩展到三维了,增加了搜索方向,其他的没什么不同. 代码如下: #include<bit ...

  10. nmap端口扫描工具安装和使用方法

    nmap(Network Mapper)是一款开源免费的针对大型网络的端口扫描工具,nmap可以检测目标主机是否在线.主机端口开放情况.检测主机运行的服务类型及版本信息.检测操作系统与设备类型等信息. ...