【问题标题】:How to copy to clipboard in Vim?如何在 Vim 中复制到剪贴板?
【发布时间】:2011-04-27 02:04:49
【问题描述】:

是否可以直接从 Vim 复制到剪贴板? yy 只将内容复制到 Vim 的内部缓冲区。我想复制到操作系统的剪贴板。 Vim 中是否有任何此类命令,或者您只能在 Vim 中拉取东西?

【问题讨论】:

  • 请参阅投票不足的答案,该答案阐明了一个重要事实:您必须首先使用 +clipboard 功能编译 vim,才能首先使用以下任何建议! 这不是大多数系统的默认设置。
  • @NeilTraft,一些答案建议从 vim 到外部程序的管道,因此任何答案都需要 +clipboard 标志的说法是错误的。只是指出来避免未来的读者感到困惑。
  • How to make vim paste from (and copy to) system's clipboard? 的可能重复项(注意:另一个问题较新,但有更好的答案恕我直言,这就是为什么我将这个问题标记为骗子)
  • 确保您已经完成 sudo apt-get install vim-gnome 在应用以下这些命令之前,否则您将收到无效注册错误!
  • @Harnirvair 对于这里的许多读者来说,vim-gnome 可能在他们的操作系统/发行版中过于矫枉过正或根本不可用,而我怀疑vim-gtk 和最好是vim-gtk3 更有可能存在和拉更少的依赖,同时仍然提供剪贴板集成(至少对于那些仍在 X11 上的人;我不确定这一切如何与 Wayland 交互)。

标签: vim clipboard


【解决方案1】:

* 寄存器将执行此操作。在 Windows 中,+* 是等价的。在 unix 中,+* 之间存在细微差别:

在 Windows 下,* 和 + 寄存器 是等价的。对于 X11 系统, 但是,它们不同。对于 X11 系统, * 是选择,+ 是剪切缓冲区(如剪贴板)。 http://vim.wikia.com/wiki/Accessing_the_system_clipboard

* 可能是您大部分时间想要的,所以我使用*,因为它在两种环境中都能正常工作。

在 Linux 发行版中,您必须先安装 vim-gtk(又名 gvim)才能获得剪贴板功能。这是因为非 gtk vim 通常在没有 X11 支持的情况下编译。这是为了允许它在仅控制台的机器(通常是服务器)上运行。

对于那些在 yanking 或 put 时对如何使用寄存器感到困惑的人,您只需写 " 然后是寄存器的名称。因此,要将某些内容复制到剪贴板寄存器,请输入 "*y,然后输入 "*p(来源:Kyle Mathews)

【讨论】:

  • 不适用于 mac osx lion。按“然后*”后,当您无法执行某项操作时,它会发出 mac 发出的声音。我该如何在 mac 上执行此操作?
  • 您还必须确保编译 vim 时支持剪贴板。 Ubuntu 中的默认 vim 不是。试试vim --version|grep .xterm_clipboard -o,如果是-,那么你没有支持。按照ubuntuforums.org/showthread.php?t=1686955下载不同的版本
  • 如果你使用Linux,你应该+注册。例如,如果您想将三行复制到系统的剪贴板,请使用v3j"+y 之类的命令,然后您可以将它们粘贴到另一个应用程序或另一个 VIM 中。 Linux下使用*注册只能在不同的vim应用之间复制粘贴。
  • 在 Linux 上,* 寄存器不能用于外部复制和粘贴。
  • weberc2 和 diabloneo,* 寄存器用于选择剪贴板,可通过中键访问,而不是菜单粘贴或 ^V
【解决方案2】:

Mac OSX

  • 复制所选部分:可视选择文本(正常输入vV 模式)并输入:w !pbcopy

  • 复制整个文件:%w !pbcopy

  • 从剪贴板粘贴:r !pbpaste

大多数 Linux发行版上,您可以替换:

  • pbcopy 上面有xclip -i -sel cxsel -i -b
  • pbpaste 使用 xclip -o -sel -cxsel -o -b
    -- 注意: 如果这些工具(xselxclip)都没有预装在你的发行版中,你可以在 repos 中找到它们

【讨论】:

  • +1 适用于 Lion,但 vim --version 显示 -clipboard
  • 与mavericks osx 附带的vim 兼容。添加到您的 .vimrc vnoremap <C-c> :w !pbcopy<CR><CR> noremap <C-v> :r !pbpaste<CR><CR> 要使用此映射,如果要复制,请在可视模式下突出显示文本并按 Ctrl-c 进行复制。要从系统剪贴板粘贴,请按 Ctrl-v。
  • 在 linux 上这适用于 :w !xclip -sel c 或 :w !xsel -b
  • 对于 Linux Ctrl+C 复制:在 ~/.vimrc 添加:vnoremap <C-C> :w !xclip -i -sel c<CR><CR>
  • 比接受的答案更有帮助的答案。谢谢!
【解决方案3】:

在您的 vimrc 文件中,您可以指定自动使用系统剪贴板进行复制和粘贴。

在 Windows 设置上:

set clipboard=unnamed

在 Linux 集 (vim 7.3.74+) 上:

set clipboard=unnamedplus

注意:您可能需要使用最新版本的 Vim 才能正常工作。

http://vim.wikia.com/wiki/Accessing_the_system_clipboard

【讨论】:

  • 作为您笔记的附录 - 您可能还需要安装额外的软件包才能使其正常工作。如果您的 vim 缺少 +xterm_clipboard 功能(在您运行 vim --version 时可见)。我就是这种情况(运行 Kubuntu 12.10)。我必须安装 vim-gui-common 包才能获得正确的功能。
  • set clipboard=unnamed 在 Mac OS 10.11.6 (El Capitan) 和 vim 7.4 中工作
  • 1.拖动复制 2. 鼠标选择,适用于 Mac Sierra-10.12.6 和 vim 版本:8.0.1800 通过在 ~/.vimrc 文件 set mouse=vset clipboard=unnamed 中指定以下命令
  • 您可能希望更新您的答案。它在带有 vim 8.0 的 Ubuntu 18.04 上不起作用。
  • 这适用于我的 nvim 0.4.4。谢谢!要复制整个文件,我使用ggvGGy
【解决方案4】:

使用寄存器"+ 复制到系统剪贴板(即"+y 而不是y)。

同样,您可以从"+ 粘贴以从系统剪贴板获取文本(即"+p 而不是p)。

【讨论】:

  • 我用的是"*,但是好像只有X的区别。
  • @dash-tom-bang:+/* 的区别是 SELECTIONPRIMARY 复制缓冲区(不记得哪个是哪个 atm)
  • 是的,星号是选择,加号是剪贴板。
  • 双引号字符在vi和vim中充当寄存器选择器。
  • 要记住的两组快捷方式:"+yy(复制行到剪贴板)和"+yy(复制行到选择); "+p(从剪贴板粘贴)和"*p(从选择粘贴)。 " 是默认选择 vim 自己的内部寄存器的寄存器(yyp 的方式将在不引用 any 类型的寄存器的情况下工作)。 PS:我想知道Vim自己的内部寄存器是否有一个字符,例如"&yy,默认情况下会变成yy
【解决方案5】:

@Jacob Dalton 在评论中提到了这一点,但似乎没有人在回答中提到必须使用剪贴板支持编译 vim 才能使此处提到的任何建议起作用。默认情况下,我的 Mac OS X 上没有这样配置,我不得不重建 vim。使用这个命令来确定你是否拥有它vim --version | grep 'clipboard'+clipboard 表示你很好,这里的建议对你有用,而-clipboard 表示你必须重新编译和重建 vim。

【讨论】:

  • 或者,您可以安装一个已经构建并支持剪贴板的 vim 包,而不是自己编译。在 OS X 上,Homebrew 有这个:brew install vim。在 Ubuntu 上,您可以使用 sudo apt-get install vim-gnome。在其他(非 GNOME)Linux 发行版上,您可能宁愿安装 vim-gtkvim-athena
  • 谢谢,在 Arch Linux 中我必须删除 vim 并安装 gvim wiki.archlinux.org/index.php/Vim#Installation
  • 您的回答解释了为什么 yank 不能与剪贴板一起使用,仅凭您的信息,我就可以进行更好的谷歌搜索并使其轻松工作。现在它工作了。如果您在答案中还包含@NeilTraft 评论会更好,这样人们就不需要进行谷歌搜索。
  • 在 Mac 上,在 brew install vim 之后我将 set clipboard=unnamed 添加到 .vimrc。在命令行中运行source ~/.vimrc。在 .bash_profile 我添加了alias vim="/usr/local/bin/vim",然后运行source ~/.bash_profile。现在在 vim 中只需使用 yp 复制/粘贴
【解决方案6】:

总结一下,方便新手,

复制当前行,在命令模式下输入:

"*yy

要复制整个文件/缓冲区,在命令模式下,首先通过gg 转到开头,然后键入

"*yG

如上所述,这需要vim --version 中的+clipboard,这表明剪贴板支持的可用性,-clipboard 表示没有。

【讨论】:

  • "*5yy5 lines yanked 但剪贴板中什么也没有? os/x.
  • 是的,我已经验证了+剪贴板
  • 我安装了vim-gtk-clipboard 变成+clipboard,而不是"+yy 工作。
  • 最好的解决方案,在 Linux 上使用 "+yG 代替。
【解决方案7】:

对于 Ubuntu - 2018 年 7 月

使用寄存器 "+ 复制到系统剪贴板(即 "+y 而不是 y)。

同样,您可以从 "+ 粘贴以从系统剪贴板获取文本(即 "+p 而不是 p)。 p>

您还必须确保在编译 vim 时支持剪贴板。试试:

vim --version | grep .xterm_clipboard -o 

如果是 -xterm_clipboard(减号前缀),那么您确实没有支持。

这里有一些关于用支持剪贴板的工作版本的 vim 换出的说明。

  • $ sudo apt-get purge vim
  • $ sudo apt-get autoremove(删除任何 来自系统的无关 vim 依赖包)
  • $ sudo apt-get install vim-gnome(或 sudo apt-get install vim-gtk3 用于较新的 Ubuntu 版本)

再次检查vim --version | grep .xterm_clipboard -o,您可以确认剪贴板现在可用(即+xterm_clipboard

祝你好运。

【讨论】:

  • 你成就了我的一天,或者我的一个月。在 Ubuntu 上使用无剪贴板 vim 辛勤工作多年后,这是一种了不起的感觉。 阿克塞尔登,谢谢!!
  • 除上述内容外,我还必须将 set clipboard=unnamedplus 放入我的 .vimrc 文件中才能使 yank 工作。我正在使用 Ubuntu 18.04。
【解决方案8】:

如果您在 MAC OSX 中使用 vim,不幸的是它带有较旧的版本,并且不符合剪贴板选项。幸运的是,自制软件可以轻松解决这个问题。

安装 vim:

brew install vim

安装vim的gui版本:

brew install macvim

重启终端生效。


将以下行追加到 ~/.vimrc
set clipboard=unnamed

现在您可以在 vim 中使用 yy 复制该行并将其粘贴到系统范围内。



更新方法

多年来,我从未对设置剪贴板方法感到满意。最大的缺点是它会弄乱您的剪贴板历史记录,即使您使用x 进行删除也是如此。这是一个更好、更优雅的解决方案。

  1. 将 vim 的文本 [范围] 复制到系统剪贴板中。 (提示:先使用vV选择范围,然后输入冒号:激活Ex命令):
    :[line-range]yank +
    例如,
    :5,10y *(将第 5-10 行复制/拉到系统剪贴板 * 寄存器)

  2. 将系统剪贴板中的内容粘贴到 vim 中的新行:
    :put +

注意:

  1. 如果您选择了一个词范围,以上将不起作用。使用 "*y"+y 将此可视块保存到剪贴板。不过这很难输入,我仍在考虑替代方案。
  2. :help "* :help *+ 了解更多信息
  3. brew info vim 将能够看到安装 vim 的其他选项。目前它没有任何其他选择。

【讨论】:

  • --with-override-system-vim 应该是 --with-override-system-vi
  • 我想尝试这样做以避免在最小系统上安装大量 Xorg 东西,但我错过了一些东西。在 v 模式下选择然后点击“:”后,我得到“不是编辑器命令 [range]yank +”。
【解决方案9】:

我无法复制到剪贴板系统,因为我的 ~/.vimrc 文件中有这个:

 if has('mouse')
   set mouse=a
 endif

但是如果你接下来添加这一行,它将允许你简单地 Ctrl+c 来获得您在剪贴板中选择的任何内容。

vmap <C-c> "+y

原创讨论及更多详情:Copy text out of vim with set mouse=a enabled

【讨论】:

  • 我没有将这一行添加到我的 .vimrc 中,但是您提供的链接非常有用。如果在 vim 中选择文本时按住 SHIFT,则无需进入可视模式即可复制文本。所以谢谢和+1。
  • Shift 技巧是我所需要的。在提示符下使用 Ctrl+Shift+c 进行复制的终结器等编辑器也能正常工作,这是我最初尝试的方法。我确实用 vim 安装了 -xterm_clipboard。
【解决方案10】:

这个答案是针对 MAC 用户的。

MAC 的默认 VIM 没有启用剪贴板选项。您需要该选项才能访问系统剪贴板。

要检查您的 vim 是否启用了该选项,请使用以下命令

vim --version

在结果中,您应该有+clipboard。如果是-clipboard,那么你的 VIM 没有访问系统剪贴板的选项。

你需要使用你需要的选项来制作和安装你的 VIM。以下是命令。

# Create the directories you need
$ sudo mkdir -p /opt/local/bin
# Download, compile, and install the latest Vim
$ cd ~
$ git clone https://github.com/vim/vim.git
$ cd vim
$ ./configure --prefix=/opt/local
$ make
$ sudo make install
# Add the binary to your path, ahead of /usr/bin
$ echo 'PATH=/opt/local/bin:$PATH' >> ~/.bash_profile
# Reload bash_profile so the changes take effect in this window
$ source ~/.bash_profile"

以上将安装最新的 VIM 并启用选项 +clipboard

现在您需要设置系统剪贴板。将以下行追加到~/.vimrc

set clipboard=unnamed

现在您可以将文本拉到系统剪贴板。 以下步骤说明了如何拉动。

  1. 在 vim 命令模式 press v,这会将您切换到 VISUAL 模式。
  2. 四处移动光标以选择需要复制的文本或行。
  3. Press y,这会将选定的文本复制到剪贴板。
  4. 转到任何外部应用程序并CMD + v 进行粘贴。

我将 MACBook Pro 与 macOS Mojave 一起使用,上面的功能在其中运行。

【讨论】:

    【解决方案11】:

    我的解决方案是安装包含剪贴板选项的附加 vim:

    sudo apt-get install vim-gnome
    

    【讨论】:

    • 这是我必须为 Ubuntu 16.04 做的事情。我尝试了其他建议但没有成功。这是最简单的,用 "+y" 达到了我的预期。
    • 它就像一个魅力,没有任何 vimrc 更改!在 Ubuntu 16.04 中仍然有效
    • "+y 建议仅适用于 vim-gnome。使用 Linux Mint 18.2。
    【解决方案12】:

    仅在 ubuntu 终端下的 vim 中,

    shift + drag mouse 在vim 中选择一个文本,然后在终端上按ctrl + shift + c

    然后在其他编辑器上ctrl + v

    【讨论】:

    • 这适用于仅选择 vim 中可见的内容,如果要选择整个文件怎么办?
    • @Gerep 此方法不适用于整个文件选择。最好仅在 vim 终端上选择一段文本以及在终端屏幕上显示文本的位置。
    • 这会复制行号、分割的缓冲区边界和所有可见的,而不仅仅是文本/代码。
    【解决方案13】:

    如果你使用 GVim,你也可以set guioptions+=a。这将触发您在可视模式下突出显示的文本自动复制到剪贴板。
    缺点:请注意,在这种情况下,高级剪贴板管理器(带有历史记录)将获取您的所有选择历史记录……

    【讨论】:

      【解决方案14】:

      你可以在这里找到答案 Arch Wiki

      对于 Linux: 首先,您必须通过安装在您的 vim 版本中启用剪贴板 gvim.


      接下来,您必须将此行放在您的 .vimrc 文件中。

      set clipboard=unnamedplus

      【讨论】:

      • +1,很惊讶现在需要此步骤。在我之前的所有 Arch 安装中,我都不必这样做。
      • 也适用于 ubuntu 18.04 并在 tmux 中运行。谢谢!
      【解决方案15】:

      如果你有 xclip,一个简单的复制文本到剪贴板的方法如下:

      1. Yank 想要复制的文本。 (y 普通 vim 中的命令)
      2. 输入:call system("xclip -selection clipboard", @")

      :call system() 运行终端命令。它有两个参数,第一个是命令,第二个是要通过管道传递给该命令的内容。例如 :echom system("head -1", "Hello\nWorld") 返回 Hello(带有一些填充)。 echom 返回命令的输出,调用不返回。

      xclip -selection clipboard 只是将文本复制到系统剪贴板,而不是默认的 X 剪贴板,(通过中间的鼠标按钮访问)。

      @" 返回最后拉出的文本。 " 是默认寄存器,但您可以使用任何寄存器。要查看所有寄存器的内容,请键入 :registers

      【讨论】:

      • 这更健壮,即使在 vim 不支持剪贴板和任何操作系统时也能正常工作。例如,在 Mac 上运行 :call system("pbcopy",@")。可以将此命令绑定到一个键。
      • 它工作正常,但我可以把它放在我的 vimrc 中,它会工作吗?它不适合我。
      【解决方案16】:

      这个问题已经有很多答案了。我正在添加我认为很快的方式。

      很快,您可以按V (Shift + v) 进入活动视觉模式。在可见模式下,您可以使用jk 选择要复制的文本。选择后,使用

      "*y
      

      现在,选定的文本被复制到剪贴板。

      【讨论】:

      • 对于 Mac OS X:工作简单而完美。确保您已打开“+剪贴板”,请参阅 gkb0986 答案。
      • 开箱即用 - Big Sur,iTerm2
      【解决方案17】:

      如果你的 vim 恰好在没有 +xterm_clipboard 选项的情况下编译,就像 Debian 和我猜是 Ubuntu 中的默认选项一样,你可以将选择或整个缓冲区通过管道传输到处理桌面剪贴板的外部程序。对于xclip(您可能需要之前安装),命令将是:w !xclip -sel clip

      【讨论】:

      • 谢谢你 - 它在 Ubuntu 上对我不起作用(所以确认你的 Ubuntu 猜测是正确的)很长时间了,我不知道为什么。现在我可以在vim --version 时显示的标志中看到-xterm_clipboard
      • 这帮助我找到了剪贴板支持的良好来源:vimcasts.org/blog/2013/11/getting-vim-with-clipboard-support
      【解决方案18】:

      到目前为止,我在 MacOsX 上使用键盘快捷键一直在为此苦苦挣扎。 我知道问题不在于使用键盘短裤。但这可能会对有同样担忧的人有所帮助。

      我发现如果你取消选中:

      查看 -> 允许鼠标报告

      从终端菜单中,您可以使用

      复制到剪贴板

      命令 + c

      再次。

      【讨论】:

      • ⌘ + R = "查看 -> 允许鼠标报告" ??
      【解决方案19】:
      1. set clipboard=unnamed 放入您的vimrc
      2. Visual模式下选择您要复制的内容(按v进入)。
      3. 回到Normal模式(按escape[esc]),按y复制。
      4. 如果你想从操作系统的剪贴板粘贴一些东西,在 Vim Normal 模式下按 p/P。

      【讨论】:

        【解决方案20】:

        也许有人会觉得它有用。我想独立于 X 剪贴板,并且仍然能够在两个正在运行的 vim 之间复制和粘贴一些文本。这个小代码将选定的文本保存在 temp.txt 文件中以进行复制。将下面的代码放入您的 .vimrc 中。使用 CTRL-c CTRL-v 来完成这项工作。

        vnoremap :w !cp /dev/null ~/temp.txt && cat > ~/temp.txt

        noremap :r !cat ~/temp.txt

        【讨论】:

          【解决方案21】:

          我是 Vim 新手,但是,在正常模式下将所有文本复制到系统剪贴板(例如,如果您想将其粘贴到文字处理器或其他文本编辑器,如 gedit、鼠标垫等...):

          ggVGy

          或者,更简单地说:

          :%y

          按照建议,我也安装了 vim-gtk 并把

          设置剪贴板=unnamedplus

          在我的 .vimrc 中

          一切正常

          如果您只想复制部分文本,请使用视觉模式 (v),选择您要复制的文本并按 y

          最后,我建议使用 Clipman(我最喜欢的)、Clipit、Parcellite 或类似的剪贴板程序。

          (我在 Debian Stretch Xfce 中使用 vim 8.0)

          请原谅我的英语! :-)

          【讨论】:

            【解决方案22】:

            我的解决方案是将以下行放入 .vimrc:

            map <C-y> :w !xclip -sel c <CR><CR>
            

            脚本使用 Ctrl + y 将选定的行(通过可视模式)或文件内容(如果未选择)复制到剪贴板。如果这很重要,我正在使用 Manjaro Linux。

            【讨论】:

            • 不错的一个!对我来说效果很好。
            • 谢谢,这很好用!只需要一种方法将我的选择快速复制到剪贴板,因为它跨越了终端视图。
            • 这个确实适用于 macOS 上的vi/vim
            【解决方案23】:

            我已经使用这些多年了:

            nnoremap Y "+y
            vnoremap Y "+y
            nnoremap yY ^"+y$
            

            您现在可以只使用大写的Y 复制到剪贴板,小写的y 不会受到影响,例如与set clipboard=unnamed 一样,因此您仍然可以选择是否将副本转到剪贴板。

            在 ubuntu 21.04、vim 8.2 上测试。

            【讨论】:

              【解决方案24】:

              如果您不想为 vim 使用任何图形界面,而您更喜欢只使用终端仿真器,则可能有一种更简单的方法来解决这个问题。不要使用 yank 或类似的东西,先看看你使用的终端的文档。我一直在为同样的问题苦苦挣扎(尝试使用 +clipboard 和 xclip 等等),最后发现在我的终端模拟器中,只需按下 shift 并选择要复制的任何文本就足够了。而已。很简单,不需要搞乱配置。 (顺便说一下,我用的是urxvt)。

              【讨论】:

                【解决方案25】:

                我遇到了问题,因为我的 vim 不支持 剪贴板

                vim --version | grep clip
                -clipboard       +insert_expand   +path_extra      +user_commands
                +emacs_tags      -mouseshape      +startuptime     -xterm_clipboard
                

                我安装了 vim-gnome(支持剪贴板),然后再次检查:

                vim --version | grep clipboard
                +clipboard       +insert_expand   +path_extra      +user_commands
                +emacs_tags      +mouseshape      +startuptime     +xterm_clipboard
                

                现在我可以分别使用 "+y 和 "+p 进行复制和粘贴。

                【讨论】:

                  【解决方案26】:

                  我使用的是 mac osx (10.15.3) 并且是 vim 的新手。我发现这很令人沮丧,这里的所有答案都太复杂和/或不适用于我的情况。我最终通过两种方式实现了这一点:

                  1. key mapping that uses pbcopy: 适用于 mac 自带的旧版 vim。

                    添加 vmap '' :w !pbcopy&lt;CR&gt;&lt;CR&gt; 到你的 ~/.vimrc
                    现在您可以直观地选择并点击''(两个撇号)复制到剪贴板

                  2. 安装较新版本的 vim,以便我可以访问其他答案中最推荐的解决方案:

                    brew install vim
                    alias vim=/usr/local/bin/vim(应该将其添加到您的 ~/.bashrc 或等效项中)
                    现在您可以直观地选择并点击"+yy 以复制到剪贴板

                  【讨论】:

                  • 非常好的解决方案!
                  【解决方案27】:

                  我在我的 .vimrc 中写了一个简单的行来让复制工作。希望这可以帮助某人。不幸的是,我的 vim 没有安装剪贴板支持,所以这些建议都不适合我。基本上,将这一行粘贴到您的 .vimrc 中:

                  map <C-c> y:e ~/clipsongzboard<CR>P:w !pbcopy<CR><CR>:bdelete!<CR>
                  

                  如果您想阅读有关此功能的详细信息,可以在 my blog 上阅读有关此内容的信息

                  【讨论】:

                  • 买家小心。在 Mac 上,这会产生奇怪的效果。
                  • 按照说明使用时,这似乎不会将任何内容复制到剪贴板(在 linux ubuntu 16.04 上,不支持剪贴板),如果在 vim 会话中打开多个文件,将关闭其中的选项卡采取了行动(视觉选择和抄送)。
                  【解决方案28】:

                  对于某些国际键盘,您可能需要按 "+空格 来获取"

                  所以在这种情况下,您必须按 "Space+y"空格*y

                  【讨论】:

                    【解决方案29】:

                    对于 OSX,就像上面明确的 10342 答案一样,你需要确保 vim 支持剪贴板功能,说 OSX 预装的那个不支持剪贴板,如果你运行 brew install vim 会起作用的。

                    除了运行 vi 仍然会让你运行预装的 OSX 版本,而不是你从 brew 安装的那个。

                    为了克服这个问题,我只是将我的 vim 命令别名为 brew 版本,而不是 OSX 默认的:

                    alias vim="/usr/local/Cellar/vim/8.0.1100_1/bin/vim"
                    

                    现在我是金子

                    【讨论】:

                      【解决方案30】:

                      在我的实例中,通过用鼠标突出显示(单击并拖动)来选择文本导致 vim 进入可视模式。

                      无论如何,在 Mac 上,最简单的解决方案是使用 fn + mouse click and drag 来避免进入可视模式。

                      如果你希望默认避免这种行为,你可以编辑你的 vimrc

                      【讨论】:

                        猜你喜欢
                        • 1970-01-01
                        • 2017-09-10
                        • 1970-01-01
                        • 1970-01-01
                        • 2017-10-08
                        • 1970-01-01
                        • 2022-09-23
                        • 2012-07-14
                        相关资源
                        最近更新 更多