Что эти знаки означают в Vim?

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

Попытка погуглить его является тупиком, так как Google не будет искать "^".

13
задан Peter Mortensen 7 April 2010 в 09:44
поделиться

3 ответа

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

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

18
ответ дан 1 December 2019 в 21:52
поделиться

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

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

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

0
ответ дан 1 December 2019 в 21:52
поделиться

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

Вы пытаетесь редактировать двоичный файл? Вы должны установить параметр Vim 'binary' перед загрузкой файла (или начать с vim -b ), иначе Vim переведет символы новой строки и выполнит другие нежелательные преобразования.

Вы редактируете текстовый файл с неправильными символами новой строки? Признаком этого являются символы ^ M или ^ J в конце ваших строк. Изучите параметры 'формат файла' и 'форматы файлов' , чтобы помочь Vim сохранить файлы с правильными символами новой строки. Если вы используете контроль версий, вы можете указать ему преобразовывать символы новой строки на вашу платформу и обратно, чтобы все были довольны.

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

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

6
ответ дан 1 December 2019 в 21:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: