首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vim:只对yank命令使用+作为默认寄存器

Vim:只对yank命令使用+作为默认寄存器
EN

Stack Overflow用户
提问于 2012-11-14 14:24:44
回答 2查看 1.9K关注 0票数 10

我想使用+寄存器(系统剪贴板)只对yank命令使用(也就是说,不要在dd或其他命令上覆盖此寄存器)。

代码语言:javascript
复制
:set clipboard+=unnamed

不起作用,因为它引入了上面描述的dd覆盖。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-11-14 14:59:10

您可以覆盖默认的yank命令,以便它们默认为系统剪贴板,除非显式地给出另一个寄存器:

代码语言:javascript
复制
:nnoremap <expr> y (v:register ==# '"' ? '"+' : '') . 'y'
:nnoremap <expr> yy (v:register ==# '"' ? '"+' : '') . 'yy'
:nnoremap <expr> Y (v:register ==# '"' ? '"+' : '') . 'Y'
:xnoremap <expr> y (v:register ==# '"' ? '"+' : '') . 'y'
:xnoremap <expr> Y (v:register ==# '"' ? '"+' : '') . 'Y'
票数 8
EN

Stack Overflow用户

发布于 2012-11-14 14:36:24

d更像是“削减”而不是“删除”。你得到的是正常的行为。

不过,您可以使用“黑洞寄存器”:"_d。我已经把它映射到<leader>d了。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13380643

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档