4

Использование: GNU Emacs 23.3.1 (x86_64-pc-linux-gnu, GTK+ версия 2.24.10) 2012-03-25 на душистом перце, модифицированном Debian

Я пытаюсь сделать простой поиск и замену. Не так уж и важно. Я даже не использую регулярные выражения. Это простая замена строки. META-%, String1, String2. Должно быть просто. В последнее время я получаю действительно странную ошибку, которую не понимаю. Из сообщений ;

Mark set
replace-match-maybe-edit: Args out of range: 597, 607

У меня открыт длинный файл .sql, и я хотел изменить некоторые строки даты. Я ввел обе строки и затем нажал на восклицательный знак, чтобы сказать emacs, что я хочу изменить ВСЕ доступные строки, и я получил эти странные аргументы Args вне диапазона. Я получил это несколько раз в последнее время. Несколько дней назад я поиграл с ЕЦБ, который я решил не использовать, но я почти уверен, что удалил все вещи из ЕЦБ из моего init.el. Там есть какая-то глупость, но ничего смешного, и эта ошибка началась только в последние пару дней.

Я немного погуглил, но не могу ничего найти. Мысли?

В моем последнем примере я заменял строку даты:

Query replace (default 2012-04-01 -> 2001-01-01): 

В других случаях за последние несколько дней я сделал более простой поиск и заменил его аналогичными результатами.

1 ответ1

0

Либо что-то в (или загружено) в вашем файле инициализации мешает нормальному replace.el (например, сообщая об этом), либо этот код содержит ошибку. Вы никогда не должны видеть ошибку Args out of range .

replace-match-maybe-edit определяется в библиотеке replace.el . В вашем файле инициализации выполните (load-library "replace.el") и затем (debug-on-entry 'replace-match-maybe-edit) , а затем пройдитесь по отладчику, чтобы увидеть, что идет не так.

В качестве альтернативы, если вы думаете, что что-то в вашем файле инициализации вызывает проблему, разделите ваш файл инициализации рекурсивно, пока не найдете код виновника.

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