【问题标题】:How to disable ''Press ENTER or type command to continue" when I execute `write !xsel -b`执行`write!xsel -b`时如何禁用“按ENTER或键入命令继续”
【发布时间】:2019-08-06 09:50:27
【问题描述】:

我的 vim 没有附带 +clipboard,所以我不能使用像 "+y 这样的命令来复制和粘贴剪贴板。

我想把文字映射到剪贴板,也就是

vnoremap <C-c><C-c> :write !xsel -b<CR>

但是,它会显示“Press ENTER or type command to continue”,这很无聊。我应该如何禁用该消息?

【问题讨论】:

  • 我不确定你是否可以,但是在你的映射中再添加一个&lt;CR&gt;,它应该会跳过它
  • @Thor 是的,在映射工作结束时添加一个额外的&lt;cr&gt;

标签: vim pipe


【解决方案1】:

您可以使用:silent 命令来抑制该输出。

vnoremap 中执行此操作有一个小问题,因为这会在您的命令中添加一个'&lt;,'&gt; 范围,但这需要是write 而不是silent 的范围,所以使用&lt;c-u&gt;在开始时删除添加的范围,然后在 silent 之后显式添加。

把它们放在一起:

vnoremap <C-c><C-c> :<c-u>silent '<,'>write !xsel -b<cr>

另一种可能的解决方案是在原始映射的末尾添加一个额外的&lt;cr&gt;,以跳过“Press ENTER”提示:

vnoremap <C-c><C-c> :write !xsel -b<cr><cr>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-02
    • 2014-03-17
    • 1970-01-01
    • 2012-11-15
    • 1970-01-01
    • 2010-10-28
    相关资源
    最近更新 更多