如何默认显示隐藏字符(ZERO WIDTH SPACE即。)

时间:2012-03-26 08:25:16

标签: intellij-idea whitespace

我因为这个而错过了周末的一部分......小丑 - 零宽度空间。我只是使用谷歌小组的一些片段并且没有认识到有双倍的字符,因为Idea(11)没有显示它们,这导致解析我的应用程序的配置文件的问题...我在vi中意外发现它

有没有办法在不使用外部编辑器的情况下以IntelliJ(或其他方式检查文件)显示这些内容。

IntelliJ 11 / Mac OS 10.7

编辑 - 示例

这两行在浏览器和Idea中看起来完全相同。您可以在页面的代码中看到,在第一个注释行中,mysql://localhost之间存在隐藏的零宽度空间,这会导致问题。当然,如果您期望“小丑”,您可以尝试使用搜索并替换它,但是没有人希望不应该存在的标志,特别是如果他不能以任何方式看到它。

#db.default.url="jdbc:mysql://​localhost/play-fullcalendar"
 db.default.url="jdbc:mysql://localhost/play-fullcalendar"

3 个答案:

答案 0 :(得分:331)

不确定您的意思,但您可以永久地在Settings -> Editor -> General -> Appearance -> Show whitespaces中打开和关闭显示空格。

此外,您只能在View -> Active Editor -> Show WhiteSpaces

中为当前文件设置它

编辑:

有一些空闲时间,因为它看起来像一个流行的问题,我写了一个插件来检查这些异常的代码。它被称为零宽度字符定位器,欢迎您使用give it a try

答案 1 :(得分:70)

一个非常简单的解决方案是使用正则表达式在文件中搜索非ascii字符。这将很好地突出显示带边框的所有斑点。

搜索 [^\x00-\x7F] 并选中正则表达式框。

结果将如下所示(在暗模式下):

zero width space made visible

答案 2 :(得分:0)

如果您是来这里寻找Jetbrains IDE插件的,请签出这本神圣的文章

https://plugins.jetbrains.com/plugin/7448-zero-width-characters-locator

它增加了您所有需要的检查

new inspection