【问题标题】:vim: copy into system clipboard not workingvim:复制到系统剪贴板不起作用
【发布时间】:2016-08-02 02:21:36
【问题描述】:

在我的 .vimrc 中,我将这两行用于复制并粘贴到系统剪贴板中:

nnoremap <Leader>p "+p
nnoremap <Leader>y "+y

奇怪的是,重新映射粘贴工作正常,但我无法复制任何行。如果我按下按钮 "+y 它可以工作并且突出显示的文本在我的系统剪贴板中,但是如果我使用 y 它只会被复制到里面的寄存器中vim,但不进入系统剪贴板。

一些帮助会很棒!

【问题讨论】:

    标签: vim yank


    【解决方案1】:

    如果您在可视模式下使用映射,则必须使用vnoremapnoremap,而不是nnoremap(仅适用于普通模式)。

    详情请见:h map-overview

    【讨论】:

    • 谢谢,一个非常明显的错误,当然粘贴在正常模式下可以工作,但如果我突出显示某些内容,我会离开正常模式。
    【解决方案2】:

    您的 yanking 映射不正确。 "+y 缺少动议。如果您想拉动整行,请使用上 Y ("+Y) 或 yy ("+yy)。

    :help y
                            *y* *yank*
    ["x]y{motion}       Yank {motion} text [into register x].  When no
                characters are to be yanked (e.g., "y0" in column 1),
                this is an error when 'cpoptions' includes the 'E'
                flag.
    

    注意,如果你输入"+y,vim 会挂在“操作等待模式”(:help Operator-pending-mode)。

    【讨论】:

    • 你是对的,谢谢你的回答,但对我来说,复制突出显示的代码是最重要的。我的错误很明显:)
    • 如何拉出多行(可能是 1、2、3、...、n 行)?比如我们可以使用 y2y, 3yy, y4y 将 2, 3, 4 行复制到默认寄存器。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-07
    • 1970-01-01
    • 1970-01-01
    • 2017-01-07
    • 2012-06-24
    • 1970-01-01
    相关资源
    最近更新 更多