6

Я привык видеть Карета-М (^ M) под Emacs. Но ниже я вижу Карет-Ат (^ @):

Файл был создан путем запуска тестовой программы Crypto++ в OpenBSD с помощью команды ./cryptest.exe > cryptopp.txt . Странно то, что все строки в файле были созданы с помощью endl C++. И endl чувствителен к концу строки платформы, поэтому он корректно воспринимает такие вещи, как CR и LF .

Кажется, что Caret-At (^ @) должен быть везде или нигде.

Что такое Caret-At (^ @) и почему он отображается только в первой строке?

1 ответ1

6

Что такое карет-ат (^ @)?

Это нулевой символ (control- @ или ASCII 0), который emacs отображает как ^@ .


Почему он отображается только в первой строке?

Потому что cryptest выводит их в этот момент.


Большинство символов являются печатными символами: когда они появляются в буфере, они отображаются буквально на экране. Печатные символы включают цифры ASCII, буквы и знаки пунктуации, а также множество не-ASCII символов.

Набор символов ASCII содержит непечатные управляющие символы. Два из них отображаются специально: символ новой строки (кодовая точка Unicode U+000A) отображается при запуске новой строки, а символ табуляции (U+0009) отображается как пробел, который простирается до следующего столбца табуляции (обычно каждые 8 колонок). Количество пробелов на вкладке контролируется локальной буферной переменной tab-width, которая должна иметь целочисленное значение от 1 до 1000 включительно. Обратите внимание, что способ отображения символа табуляции в буфере не имеет ничего общего с определением TAB в качестве команды.

Другие управляющие символы ASCII, чьи коды меньше U+0020 (восьмеричное 40, десятичное 32), отображаются в виде символа вставки (^), за которым следует неуправляемая версия символа с гранью escape-глифа. Например, символ управления+A , U+0001, отображается как ^A

Источник 14.19 Как отображается текст

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .