Visual Studio 允许将 unicode 字符零宽度空间 (U+200B)粘贴到代码编辑器中。这个字符(顾名思义)是不可见的。
这可能会导致令人讨厌的错误,例如我刚刚花时间进行故障排除的错误,当传递看起来无害的字符串文字时HttpWebRequest.CreateHttp(string url)抛出了一个。 UriFormatException"?http://www.umich.edu"
发生异常是因为该字符串文字中的第一个字符不是h,正如它所显示的那样,而是零宽度空间字符。当我从网页正文复制 URL 时,它被放在剪贴板上,当我在代码编辑器窗口中按 Ctrl+V 时,它被 Visual Studio 忠实地粘贴到我的代码中。
打开“查看空白”选项(编辑>高级>查看空白)并不会导致Visual Studio透露,有一个零宽度空格字符存在。
我希望 Visual Studio:
有没有办法让 Visual Studio 做到这一点?
我有看不到的 unicode 字符,不是 utf8,我需要找出它们。
我使用了扩展Highlight Bad Chars (Kevin Wenger)但这还不够,特别是,我不知道这些字符是哪些,我不想事先定义它们。
我怎样才能用 VScode 做到这一点?