我很难理解我在文本编辑器Vim中看到的标志。我看到^@
和^A
以及^M
和^F
等标志。这是什么意思?这些标志及其含义是否有任何结构化清单?
由于谷歌不会搜索“^ @”,因此试图谷歌这是一个死胡同。
答案 0 :(得分:18)
这些标志是控制角色。 ^@
是NUL
或0
字符,^M
是CR
或字符13等。这个符号实际上是说你是仅查看@
,M
或其他任何内容的低5位。
ASCII图表,例如this会帮助您排除大部分内容。在图表中的某处找到你在vim中看到的字符,然后它的代码就在最左边的列中。
答案 1 :(得分:6)
当你在Vim中看到很多二进制字符时,你应该小心你正确地编辑文件而不是破坏任何东西。处理具有大量二进制字符的文本文件是不常见的。
您是否尝试编辑二进制文件?您应该在加载文件之前设置Vim的'binary'
选项(或以vim -b
开头),否则Vim会翻译换行符并执行其他不需要的转换。
您是否正在编辑包含错误换行符的文本文件?出现这种情况的一个症状是,行的末尾会出现^M
或^J
个字符。浏览'fileformat'
和'fileformats'
选项,以帮助Vim使用正确的换行符保存文件。如果您使用的是版本控制,则可以指示它将换行符转换为您的平台,以便让每个人都满意。
你看到很多^@
(空)字符吗?也许这个文件是用UTF-16编码的,Vim没有正确解码它。例如,使用:e ++enc=utf-16
重新加载它。
要查看字符代表的值,请将光标放在其上并输入ga
。
答案 2 :(得分:0)