vim同一按键不同命令

网友投稿 326 2022-11-05


vim同一按键不同命令

​​原文​​

function! Jump(jumpcommands) let l:location = getcurpos('.') for jumpkey in a:jumpcommands execute "normal! " jumpkey if l:location != getcurpos('.') break endif endforendfunctionfunction! Jumptails() call Jump(['$', 'L$', 'G'])endfunctionfunction! Jumpheads() call Jump(['0', 'H', 'gg'])endfunctioninoremap :call Jumptails() innoremap :call Jumptails()inoremap :call Jumpheads() innoremap :call Jumpheads()

不跟踪最后​​命令​​​而只检查​​光标位置​​​. 它通过存储​​​当前列​​​来"检查"当前位置,然后只执行​​所需​​​移动之一,比较​​新列​​​是否等于之前列,如果是,则执行​​下一个移动​​​,等等. 该​​​Jumpheads()​​​功能使用​​​​​键在相反方向(​​向上​​​)执行相同操作.如果​​vim​​​中存在这样的命令,还可添加类似​​跳转​​​到​​段落或函数​​​的​​结尾/开头​​​. 副作用是,如果在​​​两者​​​之间做其他事情,就会打破​​循环​​.此外,它非常简单;)


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:极兔速递快递单号查询物流信息API(极兔速递快递单号查询物流信息网)
下一篇:繁体字查询API(繁体字查询手写)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~