vim随想笔记(1)
本人是一个vim的狂热粉丝,越是使用vim,越是认为琐碎内容太多,时不时地出现一些自己没有见过的使用方法、命令。
因此准备在博客上用空余时间在阅读《学习vi和vim编辑器》的基础上总结一下自己的收获与思考。知其根本并活学活用方能高效地使用工具。
vim的普通模式和插入模式
vim与一般的编辑器有一个非常大的不同点就是vim有多种模式,最经常使用的就是普通模式和插入模式了。
刚刚打开vim时,会进入普通模式。在普通模式下,键盘上的键都是一些“快捷键”。这样,vim就能够不使用Ctrl、Alt、Shift 等键的情况下拥有大量的快捷键。这能够极大的提高编辑速度,可是也加大了学习的难度。
正是由于这种模式。才使得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)的更多相关文章
- vim 使用笔记
vim命令笔记 a 插入 insert 插入 :%!xxd 以16进制方式进行编辑 :%!xxd -r 从16进制还原
- vim实用笔记
vim实用笔记 真是不知不觉过了一年,前段时间忙着考试什么的,没再写笔记写博客,考完又懒懒地玩了几天.这几天其实都在读别人的博客,感受一下大神的工作和生活感悟,感受一下过来人的经历和经验,对自己总 ...
- Vim 系列笔记一
Vim 系列笔记一 Vim 简介 什么是VIM ? Vim 是从 Vi 发展出来的一个编辑器,是 Vi 的升级版.而 vi 则是 Unix .类Unix(Linux)系统中自带的编辑器. Vim/Vi ...
- 【转】Vim使用笔记
http://www.cnblogs.com/jiqingwu/archive/2012/06/14/vim_notes.html 曾经使用了两年多的Vim,手册也翻过一遍.虽然现在不怎么用vim了, ...
- vim 学习笔记系列(前言)
今天上午的时候,看到大神在用vim编程,画面直观,速度很快,操作只需要用命令符就可以实施. 所以可以推断vim的命令符是复杂的,那么学习过程中记忆会很漫长,很痛苦,但是如果记住了这些命令符,并可以熟练 ...
- vim学习笔记(一)—— vim安装方法
一.完全卸载vim的方法 sudo apt-get remove --purge vim (--purge 是完全删除,会连配置文件一起删除) 二.Vim前言——————“世界上只有三种编辑器,EMA ...
- vim使用笔记
vim的配置文件.vimrc 一般有2个位置 1是在/目录下 2是在-目录下 如果在-目录下有了配置文件 那么将不去读取/目录下面的配置文件 如果你不知道现在使用的vim 使用的是哪个目录下面的配置 ...
- Linux下Vi/Vim使用笔记
启动和关闭vim vi 打开 Vi/Vim 打开 Vi/Vim 并加载文件 <file> vi <file> vim编辑器的三种模式:一般模式.编辑模式和命令行模式在一般模式中 ...
- VIM学习笔记
参考: http://linux.chinaunix.net/techdoc/beginner/2009/12/20/1150108.shtml VIM命令大全 光标控制命令 命令 ...
随机推荐
- MySql 1248 - Every derived table must have its own alias
执行一个sql语句,报错:1248 - Every derived table must have its own alias 提示说每一个衍生出来的表,必须要有自己的别名 执行子查询的时候,外层查询 ...
- 由DB2分页想到的,关于JDBC ResultSet 处理大数据量
最近在处理DB2 ,查询中,发现如下问题.如果一个查询 count(*),有几十万行,分页如何实现 select row_number() over (order by fid desc ) as r ...
- 【译】x86程序员手册31- 第9章 异常和中断
Chapter 9 Exceptions and Interrupts 第9章 异常和中断 Interrupts and exceptions are special kinds of control ...
- STA之Concepts (2)
3 Skew between signals Skew is the difference in timing between two or more signals, maybe data, clo ...
- HDU_2844_(多重背包)
Coins Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- Java基础(六)--枚举Enum
枚举: 刚开始项目中没怎么用过,只知道能够实现作为项目中类似定义Constant的功能,然后知道枚举实现的单例模式几乎是最优雅的,所以, 想要深入完整的了解一下 1.基本特性: Enum.values ...
- 07Java Server Pages
Java Server Pages JSP是一种Java servlet,主要用于实现Java web应用程序的用户界面部分. JSP全称Java Server Pages,是一种动态网页开发技术.它 ...
- Appium 的xpath定位
Appium 的xpath定位 1.如果元素text是唯一的,可以通过text文本定位 //*[@text=’text文本属性’] # 定位text driver.find_element_by_xp ...
- returnValue of Chrome
说实话,我一看到这个returnValue就有点反感,感觉这个就是IE式的老套的用法,因为项目中有用到就了解了下,以下主要是一些我的理解和发现吧. PS:returnValue是window的属性,s ...
- pipreqs(找当前项目依赖的包)
pipreqs pipreqs可以帮你找到当前项目的所有组件及其版本.就是当别人给你一个程序的时候,你要在自己电脑上运行起来,就需要安装程序所依赖的组件,总不能自己一个一个找吧. # 安装 pip3 ...