相关疑难解决方法(0)

Vim滚动而不更改光标在屏幕上的位置

当光标位于屏幕中间并向下滚动时,光标在屏幕上向上移动.我不希望它那样做.

如何滚动而不更改光标在屏幕上的位置?

解决方案,回答后补充:

noremap <C-k> 14j14<C-e>
noremap <C-l> 14k14<C-y>
Run Code Online (Sandbox Code Playgroud)

vim scroll cursor

35
推荐指数
3
解决办法
1万
查看次数

如何在vim中不移动光标的情况下向左/向右移动屏幕或将其水平居中?

例如,在线粘贴后,我的窗口显示文档的最右侧部分(列 >80)。

将光标留在当前位置后,如何将屏幕水平居中围绕它。或者,我可以将屏幕向左移动半个屏幕宽度,避免使用固定数字,例如44zh

虽然标题不具体,但所有答案都只涉及向上/向下移动: 如何在 Vim 中移动屏幕而不移动光标?

vim

9
推荐指数
3
解决办法
3048
查看次数

相对于光标,自定义映射滚动Vim

所以我已阅读:help scroll-cursor并非常喜欢zz,它将光标所在的行放在窗口中间.

我正在寻找帮助来制作一个类似的映射,zz但是将光标放在窗口高度的20%处(或25%,30%等).


编辑:

感谢ZyX和Drasill,我能够修改他的功能以获得所需的功能:

function ScrollToPercent(percent)
    let movelines=winheight(0)*a:percent/100

    if has("float") && type(movelines)==type(0.0)
        let movelines=float2nr(movelines)
    endif

    let oldso=&so
    execute ":set so=" . movelines
    execute "normal! zt"
    execute ":set so=" . oldso
endfunction
Run Code Online (Sandbox Code Playgroud)

vim

6
推荐指数
2
解决办法
2695
查看次数

标签 统计

vim ×3

cursor ×1

scroll ×1