如何在vim中仅将拖动的文本复制到系统剪贴板
我可以使用如何在vim中仅将拖动的文本复制到系统剪贴板,vim,copy-paste,Vim,Copy Paste,我可以使用clipboard=unnameplus复制到系统剪贴板。但是,当使用诸如dd或ciw等命令时,也会将文本复制到系统剪贴板 例如,如果复制一些文本,然后使用ciw,则要替换的文本将被复制到系统剪贴板中,我必须再次复制原始文本才能粘贴它 我想要的是仅当我拖动(y)一个选择时复制到系统剪贴板,或者使用诸如yy、yiw或类似命令。如果您只想在某些情况下复制到系统剪贴板,您可以使用“*寄存器而不是全局设置剪贴板,例如:”*yy 或者,如果要确保命令不会进入系统剪贴板,可以使用不同的寄存器或黑洞
clipboard=unnameplus
复制到系统剪贴板。但是,当使用诸如dd
或ciw
等命令时,也会将文本复制到系统剪贴板
例如,如果复制一些文本,然后使用ciw
,则要替换的文本将被复制到系统剪贴板中,我必须再次复制原始文本才能粘贴它
我想要的是仅当我拖动(
y
)一个选择时复制到系统剪贴板,或者使用诸如yy
、yiw
或类似命令。如果您只想在某些情况下复制到系统剪贴板,您可以使用“*
寄存器而不是全局设置剪贴板
,例如:”*yy
或者,如果要确保命令不会进入系统剪贴板,可以使用不同的寄存器或黑洞寄存器“
有关注册表的详细信息:
:h寄存器
“*
寄存器,而不是全局设置剪贴板,例如:”*yy
或者,如果要确保命令不会进入系统剪贴板,可以使用不同的寄存器或黑洞寄存器“
有关注册表的详细信息:
:h寄存器
解决方案是将其放入my中。vimrc
:
" Use system clipboard by default
set clipboard=unnamedplus
" Remap 'c', 'C', 'd', 'D', 'x' and 'X' to save text in a custom register
nnoremap c "cc
vnoremap c "cc
nnoremap C "cC
vnoremap C "cC
nnoremap d "dd
vnoremap d "dd
nnoremap D "dD
vnoremap D "dD
nnoremap x "xx
vnoremap x "xx
nnoremap X "xX
vnoremap X "xX
我在这里找到了解决方案:
解决方案是将其放入my中。vimrc
:
" Use system clipboard by default
set clipboard=unnamedplus
" Remap 'c', 'C', 'd', 'D', 'x' and 'X' to save text in a custom register
nnoremap c "cc
vnoremap c "cc
nnoremap C "cC
vnoremap C "cC
nnoremap d "dd
vnoremap d "dd
nnoremap D "dD
vnoremap D "dD
nnoremap x "xx
vnoremap x "xx
nnoremap X "xX
vnoremap X "xX
我在这里找到了解决方案:
这并没有真正的帮助。我知道我可以手动使用寄存器。我想要的是以某种方式覆盖y
命令以复制到剪贴板,而不必每次写入“*
。这并没有真正的帮助。我知道我可以手动使用寄存器。我想要的是以某种方式覆盖y
命令以复制到剪贴板而不必写入”*
每次。