Что означают эти знаки в Vim? - PullRequest
13 голосов
/ 07 апреля 2010

Мне трудно понять признаки, которые я вижу в своем текстовом редакторе Vim. Я вижу такие знаки, как ^@ и ^A и ^M и ^F. Что это значит? Есть ли структурированный список этих признаков и их значения?

Попытка Google это тупик, так как Google не будет искать "^ @".

Ответы [ 3 ]

18 голосов
/ 07 апреля 2010

Эти знаки являются управляющими символами.^@ - это символ NUL или 0, ^M - это CR или символ 13 и т. Д. В действительности это обозначение говорит о том, что вы смотрите на младшие 5 бит @, M или что-то еще.

Диаграмма ASCII, например this , поможет вам разобраться с большинством из них.Найдите символ, который вы видите в vim, где-то на графике, а затем его код находится в крайнем левом столбце.

6 голосов
/ 07 апреля 2010

Когда вы видите много двоичных символов в Vim, вы должны быть осторожны, чтобы правильно редактировать файлы и ничего не портить.Необычно иметь дело с текстовыми файлами с большим количеством двоичных символов.

Вы пытаетесь редактировать двоичный файл?Вам следует установить 'binary' параметр Vim перед загрузкой файла (или начать с vim -b), в противном случае Vim будет переводить символы новой строки и выполнять другие нежелательные преобразования.что имеет неправильные переводы строк?Симптомом этого является ^M или ^J символов, появляющихся в конце ваших строк.Изучите параметры 'fileformat' и 'fileformats', чтобы помочь Vim сохранить файлы с соответствующими символами новой строки.Если вы используете контроль версий, вы можете указать ему преобразовывать переводы строки на вашу платформу и обратно, чтобы все были довольны.

Видите ли вы много символов ^@ (ноль)?Возможно, этот файл закодирован в UTF-16, и Vim не декодирует его должным образом.Например, перезагрузите его с помощью :e ++enc=utf-16.

Чтобы увидеть, какое значение представляет символ, поместите курсор на него и введите ga.

0 голосов
/ 07 апреля 2010

Если вы видите что-то вроде

^@F^@i^@l^@e

это представление NULL и, видимо, немного сложно выбраться из Vim. Эта статья может дать больше информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...