经常使用vim的童鞋可能会注意到,实际操作过程中,处于插入模式中是非常少的,更多的是查看和浏览,偶尔修改即可。因此,快速从插入模式退出进入普通模式,就显得非常重要。主要有以下四种方式:

  一、在插入模式中,通过按下<Esc>按键,快速切换到普通模式,若已经处于普通模式,则模式不会发生转换;

  二、在插入模式中,通过按下<C-[>按键,快速切换到普通模式,若已经处于普通模式,则模式不会发生转换;效果与第一种方式完全一样,是第一种方式的有效替换,感觉上多了种选择而以;

  三、插入-普通-插入模式,正在输入文本时,若是临时发现行位置不合理,可以使用<C-o>执行普通模式下的命令,例如

  1、<C-o>zz          将当前行先显示在屏幕中间位置

  2、<C-o>zt          将当前行先显示在屏幕上端位置

  3、<C-o>zb          将当前行先显示在屏幕下端位置

  四、可以使用<CapsLock>作为额外的<Esc>键

  个人觉得有个理由:

  1、在编程过程中很少会大量输入大写字母,<CapsLock>的键几乎就是浪费的,最重要是<CapsLock>键的位置又非常好,距离左手小拇指的本位键非常近,很方便使用;

  2、作为vim的重度使用者,<Esc>的使用又非常频繁,而<Esc>键距离左手小拇指的本位键非常遥远,甚至可能需要左手离开键盘才能搞定;

  3、抱着不浪费的原则将<CapsLock>键作为额外<Esc>键的想法就非常有意义了,可以使用各种手段。如果你用的是linux,桌面使用的kde桌面环境,那就继续吧。

  (1)、菜单--设置--系统设置或者终端运行命令 systemsettings5

  (2)、硬件--输入设备--键盘

  (3)、高级--Caps Lock behavior--Make Caps Lock an additional Esc选中即可

  点击应用,注销后,就可以使用。          

VIM使用技巧14的更多相关文章

  1. Vim 常用技巧:

    Vim 常用技巧: 将回车由默认的8个空格改为4个空格: 命令:set sw=4 修改tab为4空格: 命令:set ts=4 设置每一级的缩进长度: 命令:set shiftwidth=4 设置文件 ...

  2. ###《VIM实用技巧》

    ###<VIM实用技巧> #@author: gr #@date: 2015-11-20 #@email: forgerui@gmail.com <VIM实用技巧>阅读笔记. ...

  3. 转载: vim使用技巧

    两篇很牛的vim使用技巧   来源: ChinaUnix博客 日期: 2009.07.06 10:18 (共有条评论) 我要评论   读本文之前请注意:1. 本文的目标是提供一些vim的使用技巧,利用 ...

  4. vim 使用技巧记录

    vim 使用技巧记录 1.批量注释与取消注释 命令格式:起始行号,结束行号s#^#//#g 例如: 注释代码3到15行,"//"可以是其他的"" :3,15s# ...

  5. 无插件Vim编程技巧

    无插件Vim编程技巧 http://bbs.byr.cn/#!article/buptAUTA/59钻风 2014-03-24 09:43:46 发表于:vim  相信大家看过<简明Vim教程& ...

  6. vim实用技巧总结

    1. 单个文件内实用mark来帮助跳转以及一些宏操作.(注意:mark不能用于多文件之间的跳转)mch 设置宏,保存到ch标记(不是ch寄存器)'ch 跳转到标记的行首`ch 跳转到标记的字符处另:为 ...

  7. 无插件VIM编程技巧(网摘)

    无插件VIM编程技巧 原文出处:[陈皓 coolshell] 相信大家看过<简明Vim教程>也玩了<Vim大冒险>的游戏了,相信大家对Vim都有一个好的入门了.我在这里把我日常 ...

  8. Vim使用技巧汇总

    一 写在开头 1.1 本文内容 Vim使用技巧与学习资源汇总. 二 Vim学习资源 1. Vimtutor 2. Vim中文帮助(http://vimcdoc.sourceforge.net/doc/ ...

  9. vim常用技巧

    # vim常用技巧 ## 行操作------------------------------ 行首 0- 行尾 $- 第一个非空字符 ^ ## 列编辑模式----------------------- ...

随机推荐

  1. maven 工程导入jar包

    Maven项目引入jar包的方法,希望能帮助有需要的朋友们 法一.手动导入:项目右键—>Build Path—>Configure Build Path—>选中Libraries—& ...

  2. 【深入.NET平台】浅谈.NET Framework基元类型

    什么是基元类型? 初学者可能很少听说过这个名词,但是平时用得最多的肯定是基元类型.先看下面两行代码: System.Int32 a = ; ;  上面两行代码都表示声明一个int类型的变量,但在平时写 ...

  3. String的用法——判断功能

    package cn.itcast_03; /* String的判断功能: 1.boolean equals(Object obj):字符串的内容是否相同,区分大小写 2.boolean equals ...

  4. scrapy 请求传参

    class MovieSpider(scrapy.Spider): name = 'movie' allowed_domains = ['www.id97.com'] start_urls = ['h ...

  5. PC端浏览器定位

    第一: PC端浏览器定位(纯前端)浏览器定位 :这里用了两种 ,一种是Html5自带的方法 另一种是引用了百度api  ,百度api 的使用有三种:1 浏览器定位2 ip定位3 SDK辅助定位引用百度 ...

  6. Danfoss Motor - Automotive Motor: What Sensors Are There?

    The   Danfoss Motor     states that the motor sensor control system is the heart of the entire autom ...

  7. JavaSE-23 注解

    学习要点 注解的概念 注解分类 读取注解信息 注解概述 1  元数据 定义 描述数据的数据. 用处 文档编制.编译器检查.代码分析等 2  Java注解 Annotation in JDK5.0——将 ...

  8. 瀑布流布局js

    <!DOCTYPE html><html><head> <meta http-equiv="Content-Type" content=& ...

  9. 服务器端编程心得(二)—— Reactor模式

    最近一直在看游双的<高性能linux服务器编程>一书,下载链接: http://download.csdn.net/detail/analogous_love/9673008 书上是这么介 ...

  10. WC2007 石头剪刀布 数学+最小费用最大流

    题面: 有N个人参加一场比赛,赛程规定任意两个人之间都要进行一场比赛:这样总共有N*(N-1)/2场比赛.比赛已经进行了一部分,我们想知道在极端情况下,比赛结束后最多会发生多少剪刀石头布情况.即给出已 ...