执行normal!
编辑教程执行normal!
既然已经学了execute和normal!,我们就可以深入探讨一个Vimscript惯用法。 执行下面的命令:
:execute "normal! gg/foo\<cr>dd"
这将移动到文件的开头,查找foo的首次出现的地方,并删掉那一行。
之前我们尝试过用normal!来执行一个搜索命令却无法输入必须的回车来开始进行搜索。 结合execute和normal!将解决这个问题。
execute允许你创建命令,因而你能够使用Vim普通的转义字符串来生成你需要的"打不出"的字符。 尝试下面的命令:
:execute "normal! mqA;\<esc>`q"
这个命令做了什么?让我们掰开来讲:
:execute "normal! ...":执行命令序列,一如它们是在normal模式下输入的,忽略所有映射, 并替换转义字符串。 | |
---|---|
mq:保存当前位置到标记"q"。 | |
A:移动到当前行的末尾并在最后一个字符后进入insert模式。 | |
;:我们现在位于insert模式,所以仅仅是写入了一个";"。 | |
\<esc>:这是一个表示Esc键的转义字符串序列,把我们带离insert模式。 | |
`q:回到标记"q"所在的位置。 |
看上去有点绕,不过它真的很有用:它在当前行的末尾补上一个分号并保持光标不动。
在写Javascript,C或其他以分号作为语句分隔符的语言时,一旦忘记加上分号,这样的映射将助你一臂之力。
Mos固件,小电视必刷固件
ES6 教程
Vue.js 教程
JSON 教程
jQuery 教程
HTML 教程
HTML 5 教程
CSS 教程
CSS3 教程
JavaScript 教程
DHTML 教程
JSON在线格式化工具
JS在线运行
JSON解析格式化
jsfiddle中国国内版本
JS代码在线运行
PHP代码在线运行
Java代码在线运行
C语言代码在线运行
C++代码在线运行
Python代码在线运行
Go语言代码在线运行
C#代码在线运行
JSRUN闪电教程系统是国内最先开创的教程维护系统, 所有工程师都可以参与共同维护的闪电教程,让知识的积累变得统一完整、自成体系。
大家可以一起参与进共编,让零散的知识点帮助更多的人。
X
选择支付方式:
立即支付
¥
9.99
无法付款,请点击这里
金额: 0 元
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
备注:
转账时请填写正确的金额和备注信息,到账由人工处理,可能需要较长时间
如有疑问请联系QQ:565830900
正在生成二维码, 此过程可能需要15秒钟