vim - 无法配置 VsVim 以让 Visual Studio 处理 ctrl+c、ctrl+v 和 ctrl+x

标签 vim visual-studio-2017 vsvim

我已经使用 VsVim 大约一年了。我总是能够使用默认的 ctrl+c 和 ctrl+v 快捷方式复制/粘贴文本。几天前它停止为我工作。我认为 VsVim 键盘设置必须以某种方式改变,以处理这些键而不是让 Visual Studio 来做。当前按 Ctrl+v 可切换可视模式。问题是 vsvim 设置中没有 ctrl+v 或 ctrl+c 条目。有什么解决方法吗?我讨厌必须右键单击鼠标才能进入复制/粘贴菜单,而且剪贴板缓冲区更加痛苦。

最佳答案

VsVim Wiki谈论这个特定的问题。

正如那里所说

If you choose to have VsVim handle Ctrl-X/C/V, you can add the following to the _vsvimrc file in order to arrive at a standard Windows behavior:



这意味着:

1.) 如果它不存在,创建一个文件 _vsvimrc在您的 %userprofile% (很可能类似于 C:\Users\YOURUSERNAME\ )。

2.) 将以下代码添加到此文件中:
" CTRL-X and SHIFT-Del are Cut
vnoremap <C-X> "+x
vnoremap <S-Del> "+x

" CTRL-C and CTRL-Insert are Copy
vnoremap <C-C> "+y
vnoremap <C-Insert> "+y

" CTRL-V and SHIFT-Insert are Paste
map <C-V>       "+gP
map <S-Insert>      "+gP
imap <C-V>      <Esc>"+gpa

cmap <C-V>      <C-R>+
cmap <S-Insert>     <C-R>+


imap <S-Insert>     <C-V>
vmap <S-Insert>     <C-V>

" Use CTRL-Q to do what CTRL-V used to do
noremap <C-Q>       <C-V>

您可以调整这些设置以满足您的需要。
_vsvimrc将最后加载,因此会覆盖之前从任何配置中设置的选项。

上面的 VsVim Wiki 链接有更多有用的键绑定(bind)来获得类似 Windows 的行为(例如 CTRL-Z 用 noremap <C-Z> u 撤消)。

关于vim - 无法配置 VsVim 以让 Visual Studio 处理 ctrl+c、ctrl+v 和 ctrl+x,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52991664/

相关文章:

vim - 在Vim中设置编辑范围

xcode - 替换 :make command with a custom script in vim

visual-studio - 如何在 Visual Studio 中使结构化缩进线成为实线?

azure - 本地调试 Azure WebJob - 重新编译失败

c# - 访问 Visual Studio 2017 的私有(private)注册表配置单元

visual-studio - 在 VsVim 中选择/删除 HTML 标签之间的文本

vim - :vsplit autocomplete not working with/django/directory in VIM

git - git 提交消息的 vim 语法突出显示 - 自定义 commentchar

resharper - vsvim 可以将键映射到 ReSharper.ReSharper_ExtendSelection 吗?