语法突出显示在VSCode中复制“不间断空格”

时间:2020-09-08 08:35:02

标签: visual-studio-code

无论出于何种原因,当我使用语法突出显示功能复制/粘贴代码时,VSCode都会复制non-breaking spaces。只要我在VSCode内部工作,这都是没有问题的,但是在将内容复制/粘贴到VSCode中时,这是一场噩梦。

我正在使用已激活“隐藏字符”功能的MSWord,这是一种了解正在发生的情况的简便方法。我可以这样复制它:

  1. 在VSCode中创建一个新文件(无扩展名,未保存),键入一些文本,然后选择 全部,然后在MSWord中复制/粘贴->空间是普通U + 0020空间, 没有复制语法高亮显示。
  2. 将文件另存为“ .txt”文件,全选并复制/粘贴到MSWord中->空格为正常U + 0020空格,未复制语法高亮显示。
  3. 另存为python文件“ .py”(或Markdown或HTML ...),全选并复制/粘贴到MSWord中->空格为不间断空格U + 00A0空格,语法高亮显示已复制。
  4. 另存为文本文件“ .txt”,全选并复制/粘贴到MSWord中->空格为不间断空格U + 00A0空格,语法突出显示被复制。

由于图片好于1000个单词,因此这是MSWord的输出: Scenarios output in Word

有什么主意吗?

1 个答案:

答案 0 :(得分:1)

似乎 VSCode 会根据上下文将带样式或不带样式的内容复制到剪贴板中。当粘贴到某种富文本编辑器时,这可能会导致麻烦。

在设置 JSON 文件中添加 editor.copyWithSyntaxHighlighting 设置为 false 以永久禁用此行为。

请注意,调色板中仍有一个单独的命令 Copy With Syntax Highlighting,您可以将其绑定到其他一些键以备不时之需。此选项不受上述选项的影响。

参考这个 PR https://github.com/microsoft/vscode/pull/54155