Vim功能返回当前行
发布时间:2020-12-16 01:46:59 所属栏目:安全 来源:网络整理
导读:我正在尝试编写一个Vim函数,它将执行一系列操作,然后返回到首次触发函数的行.有可能以某种方式编写一个可以执行此行为的Vim函数吗? 例如,如果我在vim缓冲区中某处 – 比如第55行并输入gg转到第一行,我可以使用 C-o返回第55行.如何在Vim函数中编写此行为?在
我正在尝试编写一个Vim函数,它将执行一系列操作,然后返回到首次触发函数的行.有可能以某种方式编写一个可以执行此行为的Vim函数吗?
例如,如果我在vim缓冲区中某处 – 比如第55行并输入gg转到第一行,我可以使用< C-o>返回第55行.如何在Vim函数中编写此行为?在此先感谢您的帮助. 解决方法
首先,您可以在通常键入的函数中执行所有操作.要使用< C-o>,您只需要正确的转义:
:execute "normal! &;C-o>" 除此之外,您还可以使用专用的Vimscript功能.最简单的是cursor(),它不修改跳转列表(使用line(‘.’)将原始位置保存在变量中;我在这里硬编码): :call cursor(55,0) 如果您希望您的操作完全不可见,那么仅恢复光标位置是不够的.这些举动也可能影响了视口;即在窗口中显示哪些缓冲线.为了保持完整,请使用: :let save_view = winsaveview() " Your actions here :call winrestview(save_view) " Now the window looks exactly as before. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐
- 说说JSR181
- bash – Powershell比cygwin / unix-shell更具优
- Angular 2,Webpack Uncaught ReferenceError:ve
- 基于Bootstrap下拉框插件bootstrap-select使用方
- 常用的webservice接口
- Vim folding – 在光标下递归关闭所有子节点
- scala – 为什么x.toString与(x:Any).toString不
- angularjs – ng-app和data-ng-app有什么区别?
- bootstrap Table的一些小操作
- angular – Error在’… ge-2.2.1.tgz“}附近解析
热点阅读