vim:在vim gnome中使用ctrl-Q作为可视块模式
我在windows和linux上使用vim。在linux上,我希望将ctrl-Q设置为VisualBlockSelection,但仍然保持将ctrl-v设置为粘贴的BehaveMSWIN 如何保持mswin的行为并对可视块模式使用ctrl-Qvim:在vim gnome中使用ctrl-Q作为可视块模式,vim,Vim,我在windows和linux上使用vim。在linux上,我希望将ctrl-Q设置为VisualBlockSelection,但仍然保持将ctrl-v设置为粘贴的BehaveMSWIN 如何保持mswin的行为并对可视块模式使用ctrl-Q 编辑:我认为mswin也会将ctrl-Q映射到可视块模式,但在vim gnome中ctrl-Q什么都不做。首先,我强烈建议您在linux设备上工作时,不要使用windows vim快捷方式。例如:ctrl-v、ctrl-q、ctrl-c 你一定认为这不是你
编辑:我认为mswin也会将ctrl-Q映射到可视块模式,但在vim gnome中ctrl-Q什么都不做。首先,我强烈建议您在linux设备上工作时,不要使用windows vim快捷方式。例如:ctrl-v、ctrl-q、ctrl-c 你一定认为这不是你问题的答案。现在我发布“答案” 要使
ctrl-q
在linux机器上像ctrl-v(块选择)
一样工作,您必须知道,您在终端中使用gvim或vim
Gvim
如果是gvim,则更简单,只需创建一个映射,如:
nnoremap <c-q> <c-v>
如果希望将其作为默认值,可以将其添加到.bashrc
文件中(我假设您使用的是bash)
执行此行后,您可以在vim中创建相同的映射nnoremap
,在正常模式下按
,vim将进入分块选择模式
毕竟,如果您使用linux box,我建议您忘记windows映射 如果您不想更改终端设置(
stty start undef
允许使用ctrl q
,如Kent的回答中所述)以便能够使用ctrl v
进行粘贴,您可以仅在视觉和插入模式下进行粘贴,并在正常模式下进行块选择:
" Paste from clipboard when in insert mode.
imap <C-V> <ESC>"+gpa
" Paste from clipboard when in visual mode. (Replace whatever is selected in visual mode.)
vmap <C-V> "+gp
在插入模式下从剪贴板粘贴。
imap“+gpa
“在视觉模式下从剪贴板粘贴。(替换在视觉模式下选择的内容。)
vmap“+gp
您还可以从可视模式复制到剪贴板:
" Copy selection to clipboard when in visual mode.
vmap <C-C> "+y
“在视觉模式下将所选内容复制到剪贴板。
vmap“+y
但是等等,我不明白的是,这只是将ctrl+v重新映射到ctrl+q。使用behave mswin时,ctrl+v是粘贴的,因此只需将ctrl+q从*寄存器粘贴,不是吗?我希望ctrl+v粘贴,ctrl+q输入visual select。在win和linux上工作时,我不能对每一个都有不同的映射,这会让我发疯。多年来,作为一名windows管理员,mswin感觉更自然。此外,我只使用gvim(在本例中为vim gnome)来简化事情。@user1028270如果你想c-v
执行p
(粘贴),您可以创建映射:nnoremap p
使用我的答案中的映射(->
),它可以执行您想要的操作。如果您有很好的理由在LinuxBox上使用WinKeyMap,那就好了。无论如何,对于我来说,很高兴听到windows管理员使用vim作为主编辑器。。我曾经编写过一个相对较长的批处理文件(400行),我是在linux vim中编写的:D
" Copy selection to clipboard when in visual mode.
vmap <C-C> "+y