【问题标题】:I can't paste to vim from external clipboard我无法从外部剪贴板粘贴到 vim
【发布时间】:2019-06-16 08:56:39
【问题描述】:

我通过 termux 使用 VIM 并遇到以下问题,我无法将数据从外部剪贴板粘贴到 VIM 中。我通过以下命令检查了我的 vim 安装是否支持从外部剪贴板粘贴

:echo has('clipboard')
#its return me 1 but when
# i trying to paste in vim
#via "+p or "*p or Ctrl V or Ctrl Shift V

它不是粘贴任何东西。我做错了什么。是否有可能我无法粘贴 Android 剪贴板中的数据

【问题讨论】:

  • 试试 Ctrl+Shift+v
  • 什么都没有发生(((
  • 在任何东西之前按 i,vim 将进入插入模式。
  • 使用 :reg 查看剪贴板的存储位置
  • :reg 显示剪贴板中包含的内容,但没有我从浏览器复制的数据

标签: linux vim termux


【解决方案1】:

我解决了我的问题。 termux 中的 Vim 包在识别 android 剪贴板时存在问题。如果您遇到同样的问题,请执行以下操作。要通过 vim 访问 android 剪贴板,您应该安装 Termux-api 允许访问一些 android 功能而不是在 VIM 内部键入以下命令

:r !termux-clipboard-get 

您可以在 .vimrc 文件中为其添加短键映射,只需键入

nnoremap <C-v> :r !termux-clipboard-get <CR>

现在我可以使用 Ctrl V 在 Vim 中粘贴 我向 termux github 页面发送了错误报告,标准快捷键“*p 不起作用

【讨论】:

    【解决方案2】:

    在.vimrc中添加以下内容

    au TextYankPost * call system('termux-clipboard-set &', @")
    function Paste(p)
        let sysclip=system('termux-clipboard-get')
        if sysclip != @"
            let @"=sysclip
        endif
        return a:p
    endfunction
    noremap <expr> p Paste('p')
    noremap <expr> P Paste('P')
    

    这适用于所有复制、剪切和粘贴命令,包括 dw、2p 等。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-08
      • 1970-01-01
      • 2010-11-10
      • 2017-04-16
      • 2023-04-08
      • 2016-01-30
      相关资源
      最近更新 更多