vi/vim使用指北 ---- Moving Around in a Hurry
上一篇文章中,简单列出了一些基本的Vim操作,也列出了很多的光标移动命令,本章主要是有哪些命令可以更快的移动光标。
vim的编辑操作,用得最多就是移动光标,对于很少行的文件来说,基本的命令就够用了,但是大部分情况是,每个文件都有成百上千行,基本的移动光标的命令就显得很笨拙了。故单独一章来讲述怎么更快速的移动光标,可参见下面的命令:
以屏幕为参考移动光标
CTRL-f ---- 光标向下移动一个屏幕
CTRL-b ---- 光标向上移动一个屏幕
CTRL-d ---- 光标向下移动半个屏幕
CTRL-u ---- 光标向上移动半个屏幕
设置光标相对 与屏幕的位置
z ENTER ---- 移动当前行到屏幕的顶部
z . ----- 移动当前行到屏幕的中间
z - ---- 移动当前行到屏幕的底部
重绘当前屏幕 CTRL-L (使用场景不是很明白)
在屏幕内快速移动光标
H ---- 移动到当前屏幕的首行
M --- 移动到当前屏幕的中间
L ---- 移动到当前屏幕的底部
[number]-H ---- 移动到相对与首行,向下[number-1]行
[number]-L ---- 移动到相对于最后一行,向上[number-1]行
相对于行的移动
+/ENTER --- 移动下一行的开头,忽略空白/TAB
- ---- 移动到上一行的靠头,忽略空白/TAB
在当前行内移动
^ ---- 移动当前行的开头,忽略空白/Tab(0:移动到当前行的开头,但不忽略空白/TAB)
[number]-|(竖线) ---- 移动到当前行的[number]列
根据文本快移动
上一篇有列出部分(w,W,b,B),下面的命令也是文本移动命令
e ---- 移动到单词结尾
E ---- 移动到单词结尾,忽略标点符号
( / ) ---- 移动到句子块头/结尾 (匹配? . ! + 最少一个空格/该行的最后一个字符)
{ / } ---- 移动到段落的开头/结尾
[[ / ]] --- 移动到章节的开头/结尾
用搜索来移动光标
上一篇也讲到基本的搜索命令,下面补充一些特殊用法
删除/修改搜索结果
[d/c] [/ / ?] [pattern] ---- 删除或修改向前或向后搜索结果
在当前行搜索
f / F - character ---- 在当前行向后/向前查找字符
t / T - character ----- 在当前行向后/向前查找字符,并把光标设置在匹配字符前/后一个位置
; ----- 重复执行上次的查找
, ---- 重复反向执行上次的查找
vi/vim使用指北 ---- Moving Around in a Hurry的更多相关文章
- vi/vim使用指北 ---- Learning the vi and Vim Editors 读书 笔记
vi/vim作为liux系统下最强大,最流行的文本编辑器之一.边看<Learning the vi and vim Editor>边学习vim,顺便做写简单的笔记,供以后查询. 没看这本书 ...
- vi/vim使用指北 ---- Introducting the ex Editor
本章介绍ex编辑器,为什么要介绍这样一个新的编辑器呢:其实ex编辑器不能算是一个新的编辑器,vi只是它的visual model,它已经是一个更普遍,基于行的编辑器.ex提供更大机动和范围的编辑命令. ...
- vi/vim使用指北 ---- Beyond the Basic
更多的组合命令 [number]-[command]-[test object] number: 数字 comand: c,d,y (修改,删除,复制) test object: 移动光标的命 ...
- vi/vim使用指北 ---- Sample Editing
本篇介绍vim的基础操作,各种编辑模式的切换,光标的移动,删除,撤销/重做,保存,查找等基础命令: 基础操作 编辑文件 vim [options] [file ...] 模式 打开文件后进入vim的 ...
- vim使用指北 ---- Advanced Editing
本节介绍vi和ex的一些高级功能. 配置vi 配置文件.exrc可以保存在你的主目录下,在vi启动的时候执行这个配置文件.但在当前工作目录下可以放置一个配置文件,对当前目录做一个自定义配置. :set ...
- vim使用指北 ---- Multiple Windows in Vim
多窗口打开多个文件 vim -o file1 file2 ... ---- 默认上下分割窗口 vim -0n file1 file2 ... ---- vim默认会上下等分n个窗口 分割窗口 :[v] ...
- vim使用指北 ---- Global Replacement
一般替换 s/old/new --- 替换当前行的第一个匹配项 s/old/new/g ---- 替换当前行所有的匹配项 number1,number2-s/old/new/g ---- 替换从 ...
- 【转载】vi/vim使用进阶: 指随意动,移动如飞 (二)
本节所用命令的帮助入口: :help usr_03.txt :help motion.txt :help usr_29.txt :help scroll.txt :help folding 上一篇文章 ...
- 【转载】vi/vim使用进阶: 指随意动,移动如飞 (一)
vi/vim使用进阶: 指随意动,移动如飞 (一) << 返回vim使用进阶: 目录 本节所用命令的帮助入口: :help usr_03.txt :help motion.txt :hel ...
随机推荐
- sed实例一则
1.背景: test.txt文件里有这些语句 li^E1026^D20150802B07QH800^B698.^C20150801B08CDP00^B514.^C20150803D00A8L00^B2 ...
- [译]AMQP 0-9-1 Quick Reference : basic
Basic basic.ack(delivery-tag delivery-tag, bit multiple)Support: fullAcknowledge one or more message ...
- Oracle 11gR2 Database和Active Data Guard迁移案例
客户一套核心系统由一台Oracle Database 11.2.0.3.4单机和一台Active Data Guard组成,分别运行在两台PC服务器上,Oracle Linux 5.8 x86_64b ...
- 009--VS2013 C++ 显示位图部分透明化
其实这个更简单,只是把上一编文章的半透明化的代码去掉就可以啦 还是原来那张图片: //全局变量HBITMAP bg, girl;HDC mdc;//起始坐标const int xstart = 50; ...
- VS2010出现灾难性错误的解决办法
VS2010出现灾难性错误的解决办法 之前本人利用VS2010 在编写一个基于对话框的程序的时候,要在对话框类C-.DLG中添加函数,右键点击类向导,此时界面上弹出一个消息框,告知出现灾难性事故, ...
- C++中栈的出栈,入栈规则:A,B,C,D,E
考题: 栈底至栈顶一次存放元素 ABCD 在第五个元素E入栈之前 栈中元素可以出栈,则出栈序列可能是_____a d___________. a. ABCED b. DBCEA c. CD ...
- iptables规则表
1.iptables规则表 Filter(针对过滤系统):INPUT.FORWARD.OUTPUT NAT(针对地址转换系统):PREROUTING.POSTROUTING.INPUT.OUTPUT ...
- “我爱淘”第二冲刺阶段Scrum站立会议2
完成任务: 对发布页面优化了一下,并将登陆的功能实现了一点,就是还没有实现注册的功能 . 计划任务: 在客户端实现分类功能,通过学院的分类查看书籍. 遇到问题: 自动将数据库的内容返回到客户端.
- 转载:JS快速获取图片宽高的方法
快速获取图片的宽高其实是为了预先做好排版样式布局做准备,通过快速获取图片宽高的方法比onload方法要节省很多时间,甚至一分钟以上都有可能,并且这种方法适用主流浏览器包括IE低版本浏览器. 我们一步一 ...
- OpenCms 集成外部Solr Server
OpenCms默认是以内嵌的Solr作为全文搜索服务的,不过我们也可以配置一个独立的Solr搜索服务器 设置外部Solr Server 1. 从Solr 官方站点http://lucene.apach ...