什么是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. scrapy启动

    创建项目 在开始爬取之前,您必须创建一个新的Scrapy项目. 进入您打算存储代码的目录中,运行下列命令: scrapy startproject scrapytest 第一种scrapy gensp ...

  2. activated钩子函数

    activated钩子函数是在组件被激活后的钩子函数,mounted是不保证组件在document中,也就是组件还没有被激活,因此可以理解为activated执行在mounted之后. 在跳转传值时, ...

  3. SQLserver用Image格式储存图片

    前言 最近项目更新一个新需求,要求把图片储存在SQLserver中,而不是储存在本地磁盘.很好,又有新东西可以学了. 正文 一.建表 这里大概建几个字段演示一下 CREATE TABLE [dbo]. ...

  4. MySQL基础篇(06):事务管理,锁机制案例详解

    本文源码:GitHub·点这里 || GitEE·点这里 一.锁概念简介 1.基础描述 锁机制核心功能是用来协调多个会话中多线程并发访问相同资源时,资源的占用问题.锁机制是一个非常大的模块,贯彻MyS ...

  5. 1.JVM中的五大内存区域划分详解及快速扫盲

    本博客参考<深入理解Java虚拟机>这本书 视频及电子书详见:https://shimo.im/docs/HP6qqHx38xCJwcv9/ 一.快速扫盲 1. JVM是什么   JVM是 ...

  6. Golang三种方式实现超时退出

    问题 前段时间发现线上有个服务接口,总是间歇性告警,有时候一天两三次,有时候一天都没有. 告警的逻辑是在一个接口中异步调用了另一个HTTP接口,这个HTTP接口调用出现超时.但是我去问了负责这个HTT ...

  7. SpringCloud学习系列<一>版本介绍

    SpringCloud学习踩坑记<一> SpringCloud版本迭代实在太快,学习起来也是各种坑,博主用的是"当前"的最新版本,借鉴周立老大的Spring Cloud ...

  8. VScode配置CMD本地运行环境(2.0)

    VScode配置CMD本地运行环境(2.0) 官方Task.json说明 完整的Task.json配置信息 Task.json预定义变量 看了很多网上的教程都说需要下载VScode的python插件, ...

  9. BIT-Count of Range Sum

    2019-12-17 18:56:56 问题描述: 问题求解: 本题个人感觉还是很有难度的,主要的难点在于如何将题目转化为bit计数问题. 首先构建一个presum数组,这个没有问题. 需要对于任意一 ...

  10. 机器学习3- 一元线性回归+Python实现

    目录 1. 线性模型 2. 线性回归 2.1 一元线性回归 3. 一元线性回归的Python实现 3.1 使用 stikit-learn 3.1.1 导入必要模块 3.1.2 使用 Pandas 加载 ...