vim提供了丰富的快速跳转任意行、任意列的方法,方便高效地移动光标,定位文件位置。

一、Vim行跳转

使用vim查看文件时,使用以下命令可以快速跳转文件首、尾行,方便对整个文件有个全局把握。

1.1 跳转文件首行

vim普通模式下,使用 gg 跳转到当前文件的第一行;

vim命令行模式下,使用 :0 或 :1 跳转光标到当前文件的首行。

1.2 跳转文件尾行

vim普通模式下,使用 G 跳转光标到当前文件的最后一行 (尾行);
vim命令行模式下,使用 :$ 跳转光标到当前文件的尾行。

1.3 跳转文件任意行

vim命令行模式下,使用命令 :n 跳转光标到当前文件的第 n 行。

:文件行号可以在命令行模式下使用 set nu 或 set number 进行显示,更多vim配置可参考vim配置文件入门

二、Vim列跳转

跳转到vim当前行的任意列是使用vim时一个比较常见的需求, 例如,在Vim可视化模式下就可能需要快速跳转到某一列。

2.1 跳转到行首

vim普通模式下,使用命令 0 或 | 可跳转光标到当前行的行首。


| 英文名叫 bar,是vim普通模式下用于跳转到当前行某一列的一个命令 (To screen column [count] in the current line),| 表示当前行的第0列 (行首)

2.2 跳转到行尾

vim普通模式下,使用命令 $ 跳转光标到当前行的行尾

2.3 跳转任意列

vim普通模式下,可使用以下vim命令 0nl 或 n| 跳转到当前行的第 n 列。

0nl 表示先用命令 0 将光标移动到行首,nl 表示执行 n 次向右移动光标操作
n| 表示使用 | 命令跳转到当前行的第 n 列

三、vim突出显示当前行、当前列

在vim配置文件.vimrc或vim命令行模式下使用命令 set cursorline 或 set cul 可高亮显示鼠标当前所在行,set nocursorline 或 set nocul 可关闭高亮显示鼠标当前所在行;

命令 set cursorcolumn 或 set cuc 可高亮显示鼠标当前所在列,set nocursorcolumn 或 set nocuc 可关闭高亮显示鼠标当前所在列。

[No000018E]Vim快速跳转任意行、任意列以及高亮显示当前行、当前列方法-Vim使用技巧(3)的更多相关文章

  1. vim快速跳转到某一行

    在vim命令行模式下输入 : n(行数)  |

  2. phpstorm快速跳转到错误行

    phpstorm的快捷键,在网上可以搜索出很多,唯有“快速跳到错误行”的快捷键几乎搜索不出来. 看着错误提示,要一行一行的用眼睛去看,心累. 贴在这里,随时取用,再也不怕忘记了. Shift + F2 ...

  3. 设置Centos7中vim与vi编辑器显示行号

    设置Centos7中vim与vi编辑器的行号 步骤一: 输入命令设置: 1.vim ~/.vimrc 或者:(vi ~/.vimrc) 步骤二: 输入命令保存: 1.在其中输入 "set n ...

  4. SQL行转列 (及EAV模型获取数据)

    参考文章: http://www.williamsang.com/archives/1508.html 情景简介 学校里面记录成绩,每个人的选课不一样,而且以后会添加课程,所以不需要把所有课程当作列. ...

  5. VIM快速复制多行

    在vim中快速复制粘贴多行   用vim写代码时,经常遇到这样的场景,复制多行,然后粘贴. 这样做:1. 将光标移动到要复制的文本开始的地方,按v进入可视模式.2. 将光标移动到要复制的文本的结束的地 ...

  6. vim之快速跳转

    光棍节啦, 淘东西的闲暇上来发vim旅途第一篇日志. 为什么呢? 因为今天是我媳妇的生日, 我用这种只有我知道的方式来纪念一下. ^_^, 宝宝生日快乐! 开篇先说明日志布局, vim学习记录连载中所 ...

  7. C#控制定位Word光标移动到任意行或者最后一行,取得光标位置等操作

    C#控制定位Word光标移动到任意行或者最后一行,取得光标位置等操作 http://blog.csdn.net/jglie/article/details/7394256 十一.上下左右移动光标位 p ...

  8. DataGridView 访问任意行不崩溃

    int index= this.dataGridView1.rows.Add(); 先执行这行代码,然后访问任意行,不崩溃, 赋值不存在的行,只是不显示,或者无值. 什么原理呢? 一些其他 priva ...

  9. MyEclipse中快速跳转到指定行号位置

    有时候我们希望能从当前编辑位置跳到指定行号的位置,可以使用Ctrl + l 快捷键. 其中 l 代表line.

随机推荐

  1. Vue 温故而知新 props如何双向属性绑定

    传送门:https://cn.vuejs.org/v2/guide/components-custom-events.html https://segmentfault.com/q/101000001 ...

  2. bindpose定义

    根据常识,有: 但根据骨骼动画的定义,又有: 对比两式,可得bindpose的定义: 即骨骼bone的bindpose是:在绑定时刻,将顶点由mesh的局部空间变换到bone的局部空间的变换.

  3. /Users/macbook/Library/Developer/Xcode/DerivedData/MapViewDemo: No such file or direc

    /Users/macbook/Library/Developer/Xcode/DerivedData/MapViewDemo: No such file or direc     版权声明:本文为博主 ...

  4. class path and classloader

    https://www.artima.com/insidejvm/ed2/linkmod5.html https://www.artima.com/insidejvm/ed2/securityP.ht ...

  5. 每日英语:Dashing the China Dream

    Much has been said about what the 'China Dream' really means to many Chinese -- whether it is nation ...

  6. GNU Binutils简介及基本用法

    [时间:2017-06] [状态:Open] [关键词:GNU, binutils, as, ld, ar, 基础工具,linux,链接器,汇编器] 0 简介 GNU Binary Utilities ...

  7. 【Unity笔记】打包安卓APK时Build Setting中的三种Build System

    Internal(Default):Unity内置,仅需Android SDK支持.不能导出工程,适用于仅适用Unity开发的工程. Gradle(New):使用Gradle进行构建,需要Androi ...

  8. DWZ使用中遇到的坑

    DWZ官方文档中关于文件上传表单的提交: 因为Ajax不支持enctype="multipart/form-data" 所以用隐藏iframe来处理无刷新表单提交. <for ...

  9. linux mysql卸载

    卸载mysql 1.查找以前是否装有mysql 命令:rpm -qa|grep -i mysql 可以看到mysql的包: mysql-libs-5.1.71-1.el6.x86_64 2.删除mys ...

  10. 【QT】error: 'SIGNAL' was not declared in this scope

    error: 'SIGNAL' was not declared in this scope  未在此范围内声明. connect(ui->Btnshowhello,SIGNAL(clicked ...