从系统剪贴板粘贴带样式的文本

6
在vim中,如何从系统剪贴板粘贴带有样式的文本而不是纯文本?
例如,从浏览器复制并粘贴到文字处理器通常会导致带有基本格式(加粗)和链接等内容的样式化文本被粘贴。那么,一个人如何以同样的方式从浏览器复制,但将原始HTML表示形式的文本粘贴到vim中?

将其粘贴到文字处理器中并保存为原始文本。 - Kevin
3个回答

8

临时添加 html剪贴板 选项应该会有所帮助:

set clipboard^=html
put +
set clipboard-=html
  html            When the clipboard contains HTML, use this when
                  pasting.  When putting text on the clipboard, mark it
                  as HTML.  This works to copy rendered HTML from
                  Firefox, paste it as raw HTML in Vim, select the HTML
                  in Vim and paste it in a rich edit box in Firefox.
                  You probably want to add this only temporarily,
                  possibly use BufEnter autocommands.
                  Only supported for GTK version 2 and later.
                  Only available with the |+multi_byte| feature.

在执行 put + 时,我收到了“无效的寄存器名称”错误。 - Elijah Lynn
@ElijahLynn:阅读 :help quoteplus。可能 put * 会起作用。 - idbrii

-1

Vim不支持富文本:它是一个文本编辑器,而不是一个文字处理器。


3
小心不要太执着;你忽略了一个事实,在某些情况下,“富文本”实际上是纯文本,这种文本编辑器可以很好地处理。 - Alkini
我不认为我错过了任何要点。从浏览器复制文本不能在Vim中得到文本,因为Vim不是一个富文本编辑器。你能得到的最好的结果是原始的文本或者根据ZyX的回答得到<strong>文本</strong>。实际上,我误解了你问题的最后一部分。我以为你想要在Vim中得到文本,而事实上你想要得到<strong>文本</strong>。对此我感到抱歉。按照ZyX的回答去做,它是正确的。 - romainl

-2

Vim只能编辑纯文本,或多或少。无论如何,你所要求的是不可能的。

如果你想要,可以查找HTML页面的源代码,并将其粘贴到Vim中,但那仍然是纯文本(这取决于定义;我仍然认为标记是纯文本)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接