在vim中显示所有不可见的字符

我知道关于这个在stackoverflow上有一些线程,但是当我在编辑器中编写“:set list”时,它似乎显示隐藏的字符,但它不会在我们遇到问题的代码中显示隐藏的字符。

有些时候,我们的代码中有一些不可见的符号,如果循环中断,我不知道符号如何到达那里,除了一些奇怪的键盘组合很多被意外键入。代码本身看起来是正确的,但看不见的符号打破。

我已经在网上search这个,但所有我能find似乎是在VIM的“:设置列表”命令,除了必须改变隐藏的字符的颜色,但虽然这似乎显示一些隐藏的字符,它不会显示问题那些。 我们得到两个象征十字架的符号,一个看起来像手枪。 我们也尝试在崇高的文本中添加“draw_white_space”设置,但是这似乎只是显示,好吧,像这样的空白,但结果显示在谷歌显示隐藏字符,所以我试了一下。

通过DiffMerge工具,我们能够看到符号的位置的唯一方法是在其他编辑器中看不到这些符号,但是我们实际上已经能够将符号复制到它自己的文件中,并且通过所有的grep带有-f grep选项的文件可以工作,但是在vim中显示字符比使用键绑定更容易。

有人有什么build议吗? 当问题是一个不可见的符号时,这导致我们使用更多的时间来debugging代码。

Solutions Collecting From Web of "在vim中显示所有不可见的字符"

尝试以下搜索命令:

 /[^ -~<09>] 

(你可以通过按Tab键来获得<09> )。 或者,如果你想摆脱那些讨厌的标签,只是:

 /[^ -~] 

这将找到并突出显示任何非ASCII或控制ASCII字符。

如果你仍然有隐藏的字符,你可以在搜索之前尝试这个命令:

 :set enc=latin1 

这将防止任何奇怪的Unicode字符出现在您的代码。