Ниже приведён список наиболее важных символов ошибок в стандартном Emacs, сгруппированных по концепциям. Список включает сообщение каждого символа и перекрёстную ссылку на описание того, как может возникнуть эта ошибка.
Каждый символ ошибки имеет набор родительских условий ошибки, который является списком символов. Обычно этот список включает сам символ ошибки и символ error. Иногда он включает дополнительные символы, которые являются промежуточными классификациями, более узкими, чем error, но более широкими, чем отдельный символ ошибки. Например, все ошибки при доступе к файлам имеют условие file-error. Если здесь не сказано, что определённый символ ошибки имеет дополнительные условия ошибки, это означает, что он их не имеет.
В качестве особого исключения символы ошибок quit и minibuffer-quit не имеют условия error, поскольку выход не считается ошибкой.
Большинство этих символов ошибок определены в C (в основном в data.c), но некоторые определены в Lisp. Например, файл userlock.el определяет ошибки file-locked и file-supersession. Некоторые специализированные библиотеки Lisp, поставляемые с Emacs, определяют собственные символы ошибок. Мы не пытаемся перечислить все из них здесь.
См. Ошибки для объяснения того, как генерируются и обрабатываются ошибки.
errorСообщение: ‘error’. См. Ошибки.
quitСообщение: ‘Quit’. См. Выход.
minibuffer-quitСообщение: ‘Quit’. Это подкатегория quit. См. Выход.
args-out-of-rangeСообщение: ‘Args out of range’. Возникает при попытке доступа к элементу за пределами допустимого диапазона последовательности, буфера или другого подобного контейнеру объекта. См. Последовательности, массивы и векторы и см. Текст.
arith-errorСообщение: ‘Arithmetic error’. Возникает при попытке выполнить целочисленное деление на ноль. См. Числовые преобразования и см. Арифметические операции.
beginning-of-bufferСообщение: ‘Beginning of buffer’. См. Перемещение по символам.
buffer-read-onlyСообщение: ‘Buffer is read-only’. См. Буферы только для чтения.
circular-listСообщение: ‘List contains a loop’. Возникает при обнаружении циклической структуры. См. Синтаксис чтения для циклических объектов.
cl-assertion-failedСообщение: ‘Assertion failed’. Возникает, когда макрос cl-assert не проходит проверку. См. Утверждения в Расширениях Common Lisp.
coding-system-errorСообщение: ‘Invalid coding system’. См. Системы кодировки в Lisp.
cyclic-function-indirectionСообщение: ‘Symbol's chain of function indirections contains a loop’. См. Косвенная адресация функций символов.
cyclic-variable-indirectionСообщение: ‘Symbol's chain of variable indirections contains a loop’. См. Псевдонимы переменных.
dbus-errorСообщение: ‘D-Bus error’. См. Ошибки и события в Интеграции D-Bus в Emacs.
end-of-bufferСообщение: ‘End of buffer’. См. Перемещение по символам.
end-of-fileСообщение: ‘End of file during parsing’. Обратите внимание, что это не подкатегория file-error, поскольку относится к средству чтения Lisp, а не к вводу-выводу файлов. См. Функции ввода.
file-already-existsЭто подкатегория file-error. См. Запись в файлы.
permission-deniedЭто подкатегория file-error, которая возникает, когда ОС по какой-либо причине не разрешает Emacs доступ к файлу или каталогу.
file-date-errorЭто подкатегория file-error. Возникает, когда copy-file пытается установить время последней модификации выходного файла и терпит неудачу. См. Изменение имён и атрибутов файлов.
file-errorМы не перечисляем строки ошибок для этой ошибки и её подкатегорий, поскольку сообщение об ошибке обычно конструируется только из элементов данных при наличии условия ошибки file-error. Таким образом, строки ошибок не очень важны. Однако эти символы ошибок имеют свойства error-message, и если данные не предоставлены, свойство error-message используется. См. Файлы.
file-missingЭто подкатегория file-error. Возникает, когда операция пытается воздействовать на отсутствующий файл. См. Изменение имён и атрибутов файлов.
compression-errorЭто подкатегория file-error, которая возникает из-за проблем при работе со сжатым файлом. См. Как программы выполняют загрузку.
file-lockedЭто подкатегория file-error. См. Блокировки файлов.
file-supersessionЭто подкатегория file-error. См. Время модификации буфера.
file-notify-errorЭто подкатегория file-error. Возникает, когда за файлом не удалось установить наблюдение за изменениями. См. Уведомления об изменениях файлов.
remote-file-errorЭто подкатегория file-error, которая возникает из-за проблем при доступе к удалённому файлу. См. Удалённые файлы в Руководстве по GNU Emacs. Часто эта ошибка появляется, когда таймеры, фильтры процессов, сторожевые процессы процессов или специальные события в целом пытаются получить доступ к удалённому файлу и конфликтуют с другой операцией над удалённым файлом. В общем случае рекомендуется сообщать об ошибке. См. Ошибки в Руководстве по GNU Emacs.
ftp-errorЭто подкатегория remote-file-error, которая возникает из-за проблем при доступе к удалённому файлу через ftp. См. Удалённые файлы в Руководстве по GNU Emacs.
invalid-functionСообщение: ‘Invalid function’. См. Косвенная адресация функций символов.
invalid-read-syntaxСообщение обычно: ‘Invalid read syntax’. См. Печатное представление и синтаксис чтения. Эта ошибка также может возникать при выполнении команд, таких как eval-expression, когда после выражения есть текст. В этом случае сообщение: ‘Trailing garbage following expression’.
invalid-regexpСообщение: ‘Invalid regexp’. См. Регулярные выражения.
mark-inactiveСообщение: ‘The mark is not active now’. См. Метка.
no-catchСообщение: ‘No catch for tag’. См. Явные нелокальные выходы: catch и throw.
range-errorСообщение: Arithmetic range error.
overflow-errorСообщение: ‘Arithmetic overflow error’. Это подкатегория range-error. Может возникнуть при целых числах, превышающих лимит integer-width. См. Основы целых чисел.
scan-errorСообщение: ‘Scan error’. Возникает, когда некоторые функции синтаксического анализа обнаруживают недопустимый синтаксис или несбалансированные скобки. Обычно вызывается с тремя аргументами: понятное человеку сообщение об ошибке, начало препятствия, которое нельзя преодолеть, и конец препятствия. См. Перемещение по сбалансированным выражениям и см. Разбор выражений.
search-failedСообщение: ‘Search failed’. См. Поиск и сопоставление.
setting-constantСообщение: ‘Attempt to set a constant symbol’. Возникает при попытке присвоить значения nil, t, most-positive-fixnum, most-negative-fixnum и символам-ключевым словам. Также возникает при попытке присвоить значения enable-multibyte-characters и некоторым другим символам, прямое присвоение которым по какой-либо причине запрещено. См. Переменные, которые никогда не изменяются.
text-read-onlyСообщение: ‘Text is read-only’. Это подкатегория buffer-read-only. См. Свойства с особым значением.
undefined-colorСообщение: ‘Undefined color’. См. Имена цветов.
user-errorСообщение: пустая строка. См. Как сигнализировать об ошибке.
user-search-failedЭто подобно ‘search-failed’, но не вызывает отладчик, подобно ‘user-error’. См. Как сигнализировать об ошибке и см. Поиск и сопоставление. Используется для поиска в Info-файлах, см. Поиск текста в Info.
void-functionСообщение: ‘Symbol's function definition is void’. См. Доступ к содержимому ячейки функции.
void-variableСообщение: ‘Symbol's value as variable is void’. См. Доступ к значениям переменных.
wrong-number-of-argumentsСообщение: ‘Wrong number of arguments’. См. Особенности списков аргументов.
wrong-type-argumentСообщение: ‘Wrong type argument’. См. Предикаты типов.
unknown-image-typeСообщение: ‘Cannot determine image type’. См. Изображения.
inhibited-interactionСообщение: ‘User interaction while inhibited’. Эта ошибка сигнализируется, когда inhibit-interaction не равен nil и вызывается функция взаимодействия с пользователем (например, read-from-minibuffer).