Mat*_*hew 7 vim command-line key-binding scrolling ubuntu
我希望向上滚动相当于c-y c-y c-y,向下滚动相当于c-e c-e c-e。这里的文档似乎表明这应该已经是这种情况,或者我可以通过将它放在我的.vimrc:
map <ScrollWheelUp> <C-Y>
map <S-ScrollWheelUp> <C-U>
map <ScrollWheelDown> <C-E>
map <S-ScrollWheelDown> <C-D>
Run Code Online (Sandbox Code Playgroud)
这些解决方案似乎都不起作用。我vim在 Ubuntu 11.10 的终端上使用。
对不起,你不得不与这个斗争。其实很简单。只需将以下行添加到您的 ~/.vimrc 中:
set mouse=a
Run Code Online (Sandbox Code Playgroud)
启用此功能后,您将无法(在 *nix 中)通过简单地用鼠标选择来从 vim 中复制内容;但是如果你在选择时按住Shift(Option对于 OSX),它会像以前一样工作。
从我的 ~/.gvimrc :
" Scroll Wheel = Up/Down 4 lines
" Shift + Scroll Wheel = Up/Down 1 page
" Control + Scroll Wheel = Up/Down 1/2 page
" Meta + Scroll Wheel = Up/Down 1 line
noremap <ScrollWheelUp> 4<C-Y>
noremap <ScrollWheelDown> 4<C-E>
noremap <S-ScrollWheelUp> <C-B>
noremap <S-ScrollWheelDown> <C-F>
noremap <C-ScrollWheelUp> <C-U>
noremap <C-ScrollWheelDown> <C-D>
noremap <M-ScrollWheelUp> <C-Y>
noremap <M-ScrollWheelDown> <C-E>
inoremap <ScrollWheelUp> <C-O>4<C-Y>
inoremap <ScrollWheelDown> <C-O>4<C-E>
inoremap <S-ScrollWheelUp> <C-O><C-B>
inoremap <S-ScrollWheelDown> <C-O><C-F>
inoremap <C-ScrollWheelUp> <C-O><C-U>
inoremap <C-ScrollWheelDown> <C-O><C-D>
inoremap <M-ScrollWheelUp> <C-O><C-Y>
inoremap <M-ScrollWheelDown> <C-O><C-E>
Run Code Online (Sandbox Code Playgroud)
这有一个不幸的副作用,即滚轮不会滚动鼠标光标下的窗口,而是滚动当前活动的窗口。
至于终端中的 Vim 是否能够用鼠标滚动,这取决于您的终端模拟器在使用滚轮时是否会将转义序列传递给 Vim。Xterm 可以做到这一点,尽管它可能需要您的一些帮助 - 请参阅“ :help xterm-mouse-wheel”。
| 归档时间: |
|
| 查看次数: |
7176 次 |
| 最近记录: |