最近的一个问题*让我想知道是否有一个文本编辑器可以让你看到文件的每个字符,即使它们是不可见的?具体来说,我不是在寻找十六进制编辑功能,我对可以显示所有不可见字符(不仅仅是常见的空格/换行符)的文本编辑器感兴趣。BOM 标记只是一个示例,其他例如数学不可见或可能不受支持的字符。
我不是在寻找仅支持多种文本编码/编码之间翻译的文本编辑器。我遇到的所有文本编辑器都会正确处理不可见字符,即让它们不可见(或者像 BOM 标记一样在翻译中简单地删除)。
我问这个主要是出于学术兴趣,所以我并不特别关注任何特定的操作系统。我可以轻松地测试 Linux 和 OSX 解决方案,但如果您推荐 Windows 编辑器,如果您包含有关编辑器如何处理除空格/换行符之外的不可见内容的描述,我将不胜感激。
编辑:我开始确定我想要的行为可以通过自定义突出显示或通过弄乱字体本身在 emacs/vim 中实现。这种类型的解决方案也是可以接受的。
EDIT2:在查看了几个选项后,我发现 TextMate 至少显示了一个空白区域,其中文件中有一个不可见的 UTF-8 字符。对 SO 回答我的问题的能力有点失望。赏金转到 VIM,因为那是解决方案最有可能所在的方向。
*导致我提出这个问题的事件:我使用 TextWrangler 编写了一个 perl 脚本,并设法将编码更改为 UTF8 BOM,它将 BOM 标记插入文件的开头。Perl(或者更确切地说是操作系统)会立即错过 #! 混乱随之而来。然后我花了一个下午的大部分时间才弄清楚这一点,因为即使打开了各种“显示不可见”选项,大多数文本编辑器也不显示 BOM 标记。现在我已经吸取了教训,将less
立即使用:-)。