本人是一个vim的狂热粉丝,越是使用vim,越是认为琐碎内容太多,时不时地出现一些自己没有见过的使用方法、命令。

因此准备在博客上用空余时间在阅读《学习vi和vim编辑器》的基础上总结一下自己的收获与思考。知其根本并活学活用方能高效地使用工具。

vim的普通模式和插入模式

vim与一般的编辑器有一个非常大的不同点就是vim有多种模式,最经常使用的就是普通模式和插入模式了。

刚刚打开vim时,会进入普通模式。在普通模式下,键盘上的键都是一些“快捷键”。这样,vim就能够不使用CtrlAltShift 等键的情况下拥有大量的快捷键。这能够极大的提高编辑速度,可是也加大了学习的难度。

正是由于这种模式。才使得vim变得非常有趣。

在普通模式下。左、下、上、右各自是h,j,k,l 键。vim中。大写和小写是敏感的,比方小写的j 指光标向下移动,而大写的J 则是合并行。

假设想要插入的话。能够将光标移动到指定的位置,输入i 或者a 以在光标前插入或者光标后插入,此时进入插入模式。输入完成后。按Esc 键回到普通模式。

vim的快捷键安排

vim的快捷键并不是是随便安排的。而是有一定的内涵。

在使用vim的经验中,我自己总结出几点规律。

一 依照英文单词

比方i 应该是insert 的首字母,而a 则是append

二 依照大写和小写规律

个人感觉,一般小写相应于字符的操作,而大写相应于行的操作。

如:i 代表在光标前插入,而I 则代表在行首插入。

相同。a 表示在光标后插入,而A 则表示在行尾插入。

三 依照手指移动习惯

比方普通模式下的方向控制。右手食指在标准的输入姿势下是放在J键上的,正好相应于最经常使用的向下移动的操作,而向左移动就是最左边的H键,向右就是最右边的L键。于是,向上仅仅能是K键了。

在这样合理的安排下,使用普通模式的方向控制要比使用键盘上的方向键快捷的多。假设使用方向键。手指不得不移开键盘,找到非常远的方向键。

而vim中手指根本不用离开键盘。全部的操作都非常方便。习惯了vim之后。反而会不习惯使用方向键。

总之,我感觉越是使用vim,越是能体会到其设计之合理,在慢慢的学习使用vim的过程中,会逐渐地习惯并爱上它,再使用其他的编辑器甚至是IDE的时候。也会有些许的不习惯了。

vim随想笔记(1)的更多相关文章

  1. vim 使用笔记

    vim命令笔记 a 插入 insert 插入 :%!xxd 以16进制方式进行编辑 :%!xxd -r 从16进制还原

  2. vim实用笔记

    vim实用笔记   真是不知不觉过了一年,前段时间忙着考试什么的,没再写笔记写博客,考完又懒懒地玩了几天.这几天其实都在读别人的博客,感受一下大神的工作和生活感悟,感受一下过来人的经历和经验,对自己总 ...

  3. Vim 系列笔记一

    Vim 系列笔记一 Vim 简介 什么是VIM ? Vim 是从 Vi 发展出来的一个编辑器,是 Vi 的升级版.而 vi 则是 Unix .类Unix(Linux)系统中自带的编辑器. Vim/Vi ...

  4. 【转】Vim使用笔记

    http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html 曾经使用了两年多的Vim,手册也翻过一遍.虽然现在不怎么用vim了, ...

  5. vim 学习笔记系列(前言)

    今天上午的时候,看到大神在用vim编程,画面直观,速度很快,操作只需要用命令符就可以实施. 所以可以推断vim的命令符是复杂的,那么学习过程中记忆会很漫长,很痛苦,但是如果记住了这些命令符,并可以熟练 ...

  6. vim学习笔记(一)—— vim安装方法

    一.完全卸载vim的方法 sudo apt-get remove --purge vim (--purge 是完全删除,会连配置文件一起删除) 二.Vim前言——————“世界上只有三种编辑器,EMA ...

  7. vim使用笔记

    vim的配置文件.vimrc  一般有2个位置 1是在/目录下 2是在-目录下 如果在-目录下有了配置文件 那么将不去读取/目录下面的配置文件 如果你不知道现在使用的vim 使用的是哪个目录下面的配置 ...

  8. Linux下Vi/Vim使用笔记

    启动和关闭vim vi 打开 Vi/Vim 打开 Vi/Vim 并加载文件 <file> vi <file> vim编辑器的三种模式:一般模式.编辑模式和命令行模式在一般模式中 ...

  9. VIM学习笔记

    参考: http://linux.chinaunix.net/techdoc/beginner/2009/12/20/1150108.shtml VIM命令大全 光标控制命令 命令           ...

随机推荐

  1. 安卓TV盒子常见问题以及解决方法

    1.为什么requestfocus无效 原因:requestfocus不支持在Touch模式下的Focus; 解法方案:再加一个requestFocusFromTouch函数. 2.摄像头打开问题,调 ...

  2. Navicat Premium 12 破解方法

    基本安装下一步下一步,破解方法参考:地址

  3. java.lang.RuntimeException: java.lang.NullPointerException...的错误

    先FQ,让电脑能登上谷歌,然后重新安装,应该就好了,我的是这样解决的.如果下次安装又报:java.lang.RuntimeException: java.lang.NullPointerExcepti ...

  4. x86汇编之十(使用字符串)

    x86汇编之十(使用字符串) 转自网络,出处不详 一.传送字符串 Intel提供了完整的字符串传送指令,就像是MOV指令一样. 1.MOVS指令 1)movs指令格式 把字符串从一个位内存位置传送到另 ...

  5. MFC_1.1 基本知识

    如何创建一个MFC项目 选择 MFC 应用程序进行创建,不要使用非英文名 选择对话框风格进行编写 可以通过自定义的设置修改类名 MFC 的基本知识 MFC 是纯面向对象的编程,是 SDK 经过 C++ ...

  6. 这段代码很Pythonic | 相见恨晚的 itertools 库

    前言 最近事情不是很多,想写一些技术文章分享给大家,同时也对自己一段时间来碎片化接受的知识进行一下梳理,所谓写清楚才能说清楚,说清楚才能想清楚,就是这个道理了. 很多人都致力于把Python代码写得更 ...

  7. replace、replaceAll、replaceFirst

    replace.replaceAll.replaceFirst这三个函数会java的同学估计都用过,笔者已经用了2年多,可是,我们真的懂他们吗? 概述一下他们三个的用法: · replace(Char ...

  8. xmpp聊天室(5)

    聊天室 //初始化聊天室 XMPPJID *roomJID = [XMPPJID jidWithString:ROOM_JID]; xmppRoom = [[XMPPRoom alloc] initW ...

  9. 第3章 从Flux到Redux

    第3章 从Flux到Redux 3.1 Flux 单向数据流,React是用来替换Jquery的,Flux是以替换Backbone.js.Ember.js等MVC框架为主的. actionTypes. ...

  10. 洛谷——P1168 中位数

    P1168 中位数 题目描述 给出一个长度为NN的非负整数序列$A_i$​,对于所有1 ≤ k ≤ (N + 1),输出$A_1, A_3, …, A_{2k - 1}A1​,A3​,…,A2k−1​ ...