什么是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. Simulink仿真入门到精通(十六) Simulink基于模型设计的工业应用概述

    16.1 Simulink用途概述 在基于模型设计广泛应用于汽车电子嵌入式开发的今天,MBD(Model Besed Design)技术也逐步推广到各种嵌入式控制方面.与传统的嵌入式开发相比,BMD以 ...

  2. 4000字干货长文!从校招和社招的角度说说如何准备Java后端大厂面试?

    插个题外话,为了写好这篇文章内容,我自己前前后后花了一周的时间来总结完善,文章内容应该适用于每一个学习 Java 的朋友!我觉得这篇文章的很多东西也是我自己写给自己的,比如从大厂招聘要求中我们能看到哪 ...

  3. foobox更新日志

    2020-1-31, 6.1.5.1a 版(*) 跟进汉化版修正.(*) MusicTag升级到 1.0.4.0.(*) 部分图标改良,其他优化和修正.(+) 丰富网络功能,增加一个搜索源,一个榜单源 ...

  4. SpringBoot2 线程池的定义和使用

    SpringBoot2 线程池的定义和使用 定义线程池 @Slf4j @EnableAsync @Configuration public class AsyncExecutorConfig impl ...

  5. 【面试必备】用了那么多次 ping,是时候知道 ping 是如何工作的了!

    每日一句英语学习,每天进步一点点: 前言 在日常生活或工作中,我们在判断与对方网络是否畅通,使用的最多的莫过于 ping 命令了. “那你知道 ping 是如何工作的吗?” —— 来自小林的灵魂拷问 ...

  6. Python之open()函数

    Python内置了读写文件的函数open(). # 方法一 # 使用Python内置的open()函数,传入文件名和标示符 f = open('E:/test/driver.py', 'r', enc ...

  7. 解决vscode 没有 c++11 的代码提示(如to_string()等)

    2019.5.4 更新: 参考了stackflow上的一个问题:to_string is not a member of std, says g++ (mingw),发现直接换新版mingw即可- m ...

  8. 概率-拒绝采样 Rejection Sampling

    2018-12-09 16:40:30 一.使用Rand7()来生成Rand10() 问题描述: 问题求解: 这个问题字节跳动算法岗面试有问到类似的,有rand6,求rand8,我想了好久,最后给了一 ...

  9. 简述UDF/UDAF/UDTF是什么,各自解决问题及应用场景

    UDF User-Defined-Function 自定义函数 .一进一出: 背景 系统内置函数无法解决实际的业务问题,需要开发者自己编写函数实现自身的业务实现诉求. 应用场景非常多,面临的业务不同导 ...

  10. 超越Mask-RCNN:谷歌大脑的AI,自己写了个目标检测AI

    这是一只AI生出的小AI. 谷歌大脑的Quoc Le团队,用神经网络架构搜索 (NAS) ,发现了一个目标检测模型.长这样: △ 看不清请把手机横过来 它的准确率和速度都超过了大前辈Mask-RCNN ...