vim recording
大家是否有这种经验,“不知道为什么按出recording状态,按ESC貌似无法直接退掉”的情况,个人已经有过好几次了。
与其出来烦人还不如了解它,昨天我就花了点时间学习recording。怎么说,还是有点用的。
首先说明的是recording是怎么按出来的:命令模式下按q。假如你想按退出的:q,右手有点慢的话就有可能出现recording。顺便说一句,q:出来的是command history,command history状态下:q或者enter都可以退出。
那么recording是干啥的?简单来说就是命令序列,加快工作效率的。基本使用是q开启录制,接着选择寄存器,比如1,2,a之类的。之后的到第一个q为止的命令都会加入序列中。录制完成之后@1(1这里为寄存器的名字,你也可以选择其他寄存器)就可以重复寄存器中的命令序列。举个简单的例子:
|
1
|
1.
|
你需要复制1. 20行,除了Vyo20p(选中行复制,进入下一行,粘帖20次)之外,你可以q1Vyopq录制命令序列,20@1执行20次。
这个例子可能还不能体现recording的好处,接下来举第二个例子,注释10行代码
|
1
2
3
4
5
6
7
8
9
10
|
// int a = 1;
int b = 1;
int c = 1;
int d = 1;
int e = 1;
int f = 1;
int g = 1;
int h = 1;
int i = 1;
int j = 1;
|
录制序列q2I// jq,//后面的是空格。9@2执行剩下九次。接下来一个例子和SQL有关。
|
1
2
3
|
INSERT INTO USER(name) VALUES("foo");
bar
baz
|
你需要像第一行一样组装一个SQL。使用recording,我的操作序列为q3I,输入INSERT INTO USER(name) VALUES(“,按ESC,$a,输入”);,按ESC,按jq,录制结束。接下来按@3应用到下一条。
至此是不是觉得recording用得好的话还是听不错的?补充一下recording相关的一些信息。
@@是执行上一次的命令序列,:reg显示所有的寄存器,:reg 1显示寄存器1中的内容。
写一个自己的例子:
首先递加一组数:
输入"q,1,ctrl+A,j,shift+^,q,10,@,1"(','号表示分开输入,不是实际输入)
变为:
继续记录:
a=1+a,自动生成,a=2+a, a=3+a, a=4+a......
继续记录:
1,然后自动生成2到1000.
这些都可以用recording来实现,我就不记录了
vim recording的更多相关文章
- vim recording的使用方法
使用vim时无意间触碰到q键,左下角出现"recording"这个标识,觉得好奇,遂在网上查了一下,然后这是vim的一个强大功能.他可以录 制一个宏(Macro),在开始记录后,会 ...
- vim recording功能介绍
使用vim时无意间触碰到q键,左下角出现“recording”这个标识,觉得好奇,遂在网上查了一下,然后这是vim的一个强大功能.他可以录制一个宏(Macro),在开始记录后,会记录你所有的键盘输入, ...
- vim编辑指令(转)
跳跃指令 类似于游览器中的<前进><后退>按钮 CTRL-] -> 跟着link/tag转入 (follow link/tag) CTRL-o -> 回到上一次 ...
- [转载]VIM 教程:Learn Vim Progressively
文章来源:http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/ Learn Vim Progressively TL ...
- Vim入门教程
尽管网上有成打的Vim在线教程,但是要么艰深晦涩,要么太过肤浅.本教程的目标让每个阶段都有斩获,从理解它的哲学(将和你终身相伴)到超越现在编辑技巧,成为其中的牛人. 简单来说,本教程的学习方式将使你终 ...
- Vim篇
Vim编辑器中的一些常用命令: 1:shift+* , 选取光标所在处的整个字符,并查找.(十分方便),快捷键gd 2:set nu , 显示各行行号,使得基于行的命令更方便. 3:shift+% , ...
- 最佳vim技巧
最佳vim技巧----------------------------------------# 信息来源----------------------------------------www.vim ...
- vim 常用快捷键 二[转]
键盘移动 (Move) 一切都从键盘的移动k -> 上 upj -> 下 downh -> 左 leftl -> 右 rightz -> 重画屏幕,当前光标变成屏幕的第一 ...
- VIM 多行输入 数字递增 新方法 循环记录法
采用的是mario register这个方法,然后,把一段 auto-increament 操作记录下来,然后playback 循环往复多次.就达到了,每行都递增的目的. 我写的文字如下: vim 输 ...
随机推荐
- CDH安装Hadoop
一.安装CDH-manager 1.关闭selinux 修改/etc/selinux/config 文件 将SELINUX=enforcing改为SELINUX=disabled 重启机器即可 2 ...
- hdu 2191 珍惜现在,感恩生活 多重背包入门题
背包九讲下载CSDN 背包九讲内容 多重背包: hdu 2191 珍惜现在,感恩生活 多重背包入门题 使用将多重背包转化为完全背包与01背包求解: 对于w*num>= V这时就是完全背包,完全背 ...
- Linux-ubuntu
在VMware安装ubuntu时磁盘分配如下: /boot 100MB / 2G swap 512MB /home 5G /var 1G /usr 5G+. 设置root权限:sudo passwd ...
- 【Catalina】
Tomcat's servlet container was redesigned as Catalina in Tomcat version 4.x. The architect for Catal ...
- 更改Keil工程名
假设原工程名为A,需要改成B. 1, 在工程目录下,把A.vuopt和A.uvproj改成B.uvopt和B.uvproj. 2,删除其他A文件. 3,打开工程B.然后修改下面位置: Project ...
- shell 练习
shell 练习 iii= ] do iii=$[$iii+] echo -n "$iii " done iii= ] do iii=$[$iii+] echo -n " ...
- 解决在构造函数中使用Session,Session为null的问题
问题描述: public abstract class PageBase : System.Web.UI.Page 在PageBase中如何使用Session??? 我直接用 Session[&quo ...
- Seven Python Tools All Data Scientists Should Know How to Use
Seven Python Tools All Data Scientists Should Know How to Use If you’re an aspiring data scientist, ...
- uva 12654
dp,用优先队列存,上个节点节点覆盖下来的长度: 不过还不是很明白: #include<cstdio> #include<queue> #include<algorith ...
- 四大主流云平台对比--CloudStack, Eucalyptus, vCloud Director和OpenStack。
我迟早可能都要进入的领域,提前温习... 还有KVM,ESXI,API,XEN之间的术语和关系,也要心中有数.. ~~~~~~~~~~~~~~~~~~~ 云计算在如今的IT界一直是一个最热门的话题,鉴 ...