
如果我从Chrome复制上面的文本并将其粘贴到Obsidian中,我会得到
People who code: we want your input. [Take the Survey](https://stackoverflow.com/dev-survey/start?utm_source=so-owned&utm_medium=announcement-banner&utm_campaign=dev-survey-2021)
[](https://stackoverflow.com/questions/ask# "dismiss")

但是当我粘贴到VS Code或任何其他编辑器中时,我会得到
People who code: we want your input. Take the Survey

视频参考:https://dsc.cloud/J/67968285.mov
黑麻石是怎么做到的?如何在VS Code中实现相同的功能?
发布于 2021-06-17 07:08:07
“反对VSCode编辑器不支持你所描述的功能,VSCode几乎可以肯定永远不会支持任何接近它的功能。这是因为VSCode是什么,以及VSCode做了什么,我将在下面详细解释。”
长长的答案是:
因此,VS-Code是一个基于文本的编辑器,它的目的是让程序员可以在其中编写代码,因此,使用VSCode的人将执行一长串任务,包括但不限于:解释、编译、执行、调试、服务、共享、保存、写入、读取、文档和运行代码。具有任何类型的数据,而不是文件中的标准文本,您计划使用这些数据来执行以下操作之一(这是非常简短的列表)……
...will导致抛出语法错误。
当你可以从外部源(如网页)复制和粘贴文本格式时,很有可能一些不需要的格式数据会被粘贴到你编写的程序中,文本的格式数据最终会因为任何原因而不能呈现(他们有一百万和87个原因),你最终会得到看不到的语法错误,所以你现在不知道错误在哪里,尽管错误消息说是734行24列。在这种情况下,您将看到一条毫无意义的错误消息,并且您将不得不开始删除内容以查找问题。这一切都是因为它有与标准文本数据交织在一起的文本格式数据,这是您看不到的。
他们还有其他的工具,叫做字处理器,可以实现这个特性。我经常把G-Docs和VSCode结合在一起。
VSCode允许扩展生成custom editors。用于创建编辑器的扩展API (可以通过单击链接看到)允许开发人员使用标准的HTML和JavaScript构建UI。这足以让人为VSCode编写一个字处理程序,但令人惊讶的是,还没有人这样做。当有人创建了一个,我几乎可以肯定有人最终会创建一个,可以支持你所要求的功能。
根据记录,您描述的功能通常是一个字处理器的东西。VSCode允许您安装诸如之类的扩展,它可以复制和粘贴其他数据类型;但是,当它被粘贴到编辑器中时,它不会呈现数据类型,而只是将其写入文本格式。换句话说,一开始你可能认为你在复制页面,但是一旦你粘贴到VSCode,你就会失望了。我想指出的是,Paste使用GTK-3 Clipboards API,这意味着如果要在字处理器中实现Paste,例如word或Google docs,这些字处理器将呈现粘贴扩展粘贴到字处理器中的数据。换句话说,不是扩展未能呈现数据(如前所述,可以使用粘贴扩展来完成),而是它的VSCode将数据呈现为超文本标记语言,而只将其作为标准文本数据类型接受。
发布于 2021-06-14 23:24:02
您复制的内容可以被认为是“富文本”,但是VSCode将剪贴板中的所有内容都视为纯文本。
因此,这与在Word或Google Docs等其他程序中通过"Ctrl+Shift+V“进行粘贴是相同的。它将删除任何格式、链接、颜色、字体、粗体/斜体等。
built在构建时就考虑到了格式化-它紧跟markdown规范,所以它会尝试将任何富文本转换为markdown,这是很自然的。
我不知道有没有内置的VSCode设置可以让你粘贴富文本,但我发现有两个扩展可以做到这一点:
https://stackoverflow.com/questions/67968285
复制相似问题