今天看了下兄弟连的VIM讲解,又学了几个新命令,记录一下。

插入与删除

插入

首先还是插入,以前只知道i。今天发现原来还有a\A\i\I\o\O,下面具体说一下:

命令 含义
a 在光标后插入
A 在行末插入
i 在光标前插入
I 在行首插入
o 在当前行后加一行插入
O 在当前行前加一行插入

这就已经非常方便地做到插入操作了,有加必有减啦,删除有如下命令:

删除

命令 含义
x 删除当前字符
nx 删除当前往后n个字符
dd 删除整行(实际是剪切,后面会说)
dG 删除光标所在行至文件末尾所有内容
D 删除光标所在处至文件末尾所有内容
:n1,n2d 删除指定范围的行数

光标定位

插入和删除都要在指定的位置进行操作,前面的部分已经涉及一些定位,下面再具体展开更多定位的技巧:

命令 含义
$ 移至行尾
0 移至行首
:set nu 设置行号
:set nonu 取消行号
gg 快速定位到首行
G 快速定位到末行
nG 到第n行
:n 到第n行

复制与粘贴

编辑文档常用的另一个操作是复制与粘贴,命令如下表:

命令 含义
yy 复制
nyy 复制n行
dd 剪切
ndd 剪切n行
p 在当前行下粘贴
P 在当前行上粘贴

退出与保存

写完代码(或文章),最后一步肯定要保存退出了,不学这个,还是没法用VIM,记住下面这些命令吧:

命令 含义
:w 保存
:w path/filename 另存为
:q 退出
:wq 保存退出
ZZ 保存退出
:q! 不保存,强制退出
:wq! 强制保存并退出(只有当你是文档所有者或root用户才可以用)

今天就总结这么多了,有了这些基本就可以进行正常写起来了,只不过慢一点,慢慢来。

vim基础(一)的更多相关文章

  1. vim基础命令

    2015-06-04 by komilevim基础命令 打开一个文件 vim index.php 几种模式说明Normal Mode也就是最一般的普通模式,默认进入vim之后,处于这种模式.Inser ...

  2. 18.Vim基础指令(自用)——2019年12月13日

    title: vim study date: "2018-12-26 20:17:16" tags: 指令学习 categories: 技术驿站 vim study 2018年12 ...

  3. 01 | VIM基础攻略

    启动 vim 后,vim 处于 normal 模式. Step One: "i" -> insert 模式, ESC -> normal 模式: "x&quo ...

  4. Vim基础操作

    在正式使用Vim之前,先来点开胃菜,学习下Vim中一些常用的命令,有了这些基本命令,才能让我们使用Vim更加得心应手,加快工作的效率~ 注意:接下来将要介绍的命令主要是用在Vim的Normal模式下. ...

  5. VIM基础

    http://www.cnblogs.com/wawlian/archive/2012/05/22/2512801.html http://www.cnblogs.com/wawlian/archiv ...

  6. vim 基础命令

    第一部份:一般指令模式可用的按鈕說明,游標移動.複製貼上.搜尋取代等 移動游標的方法 h 或 向左方向鍵(←)                           游標向左移動一個字元 j 或 向下方 ...

  7. vim基础使用

    vim的常用模式有分为命令模式,插入模式,可视模式,正常模式.本教程中,只需要用到正常模式和插入模式.二者间的切换即可以帮助你完成本指南的学习. 进入方法: vim xxx.xml 正常模式 正常模式 ...

  8. [Linux&Vim]基础01

    学习和使用Linux有一段时间了,作为这么长时间的学习应该是有一定收获的,可惜的是没有一股专研精神,只停留在皮毛. 阅读过一些大牛们学习Linux和Vim的过程,从命令.环境配置.使用个性化设置.编程 ...

  9. VIM基础知识整理(附思维导图)

    这是当时初学VIM后做的一个思维导图,图片稍大,所以从freemind导出了html文本po在下面:图片在最下方,放大可清晰浏览. VIM 普通模式 普通编辑命令 功能:浏览,普通编辑 x:删除光标所 ...

  10. vim基础详解

    目录: 什么是vim Vim能做什么 如何学习vim 如何用vim打开一个文件 Vim的三种模式 插入模式 命令模式 扩展命令模式 光标移动 在命令模式下 删除,复制,粘贴 扩展命令模式 可视化模式 ...

随机推荐

  1. Java IO 字节流与字符流 (三)

    概述 IO流用来处理设备之间的数据传输 Java对数据的操作时通过流的方式 Java用于操作流的对象都在IO包中 流按操作的数据分为:字节流和字符流 流按流向不同分为:输入流和输出流 IO流常用基类 ...

  2. 2-3 Vue实例中的数据,事件和方法

    上节课模板是写在Vue的实例里面的,现在我们可以把它恢复出来.写在挂载点的内部,看起来会舒服一点.Vue的数据项,可以配置任意的数据名字. <!DOCTYPE html> <html ...

  3. CentOS 6.5克隆后eth1与eth0的问题

    CentOS 6.5克隆后eth1与eth0的问题   按照安装文档执行以下步骤时:   从克隆出来的虚拟机网卡都会被命名为eth1,而有些程序或者脚本,涉及到网卡的,默认写的是eth0,这时就存在要 ...

  4. 微信小程序获取自定义属性值

    写小程序的时候用到了自定义属性,特地来记录一下 特别是这个坑,必须得说一说 wxml <view class='box' bindtap='getValue'> <view clas ...

  5. mysql之distinct

    记录一下这几天看mysql必知必会的小知识点: 关于mysql查询不同的行 比如记录表中 查询有多少个城市 可能查出很多城市 可以用distinct 来解决这个问题 SELECT DISTINCT c ...

  6. 【洛谷2617_BZOJ1901】Dynamic Rankings(树套树)

    题目: 洛谷 2617 BZOJ 1901 是权限题,\(n=10^4\) ,内存 128 MB :洛谷 2617 \(n=10^5\) ,内存 1024 MB ,数据比较坑. 分析: 蒟蒻初学树套树 ...

  7. 384 Shuffle an Array 打乱数组

    打乱一个没有重复元素的数组.示例:// 以数字集合 1, 2 和 3 初始化数组.int[] nums = {1,2,3};Solution solution = new Solution(nums) ...

  8. C++学习笔记(三)之函数库

    1.标准库函数 begin end begin 返回数组首地址 end   返回数组尾地址 2.const 在声明变量时对变量限制为只读,不允许修改 const int i = 5; 单个const作 ...

  9. html5 页面音频

    1. html5 样式 <audio class="audioleft download" id="audVoice" type="audio/ ...

  10. Farseer.net轻量级开源框架 中级篇:动态数据库访问

    导航 目   录:Farseer.net轻量级开源框架 目录 上一篇:Farseer.net轻量级开源框架 中级篇: 自定义配置文件 下一篇:Farseer.net轻量级开源框架 中级篇: 数据库切换 ...