После обновления до версии Aquamacs 3.3 (emacs 25.1.1) я получаю сообщение об ошибке, упомянутое в заголовке, при запуске re-replace-region
(как определено ниже), пытаясь изменить строку из 9 в регионе (например, «99» или «999»). ") до 0 с. У меня никогда не было этой проблемы с предыдущими версиями Aquamacs (или emacs в целом), и я не могу придумать ничего ни в среде emacs, ни в машинной среде в целом (Mac OS 10.9.5), что могло бы быть связано с эта проблема.
На самом деле у меня есть исполняемый файл emacs (версия 22.1.1) на той же машине, и после его вызова в той же среде (например, в том же ~/.emacs и т. д.) re-replace-region
работает как надо.
Единственная другая подсказка, которую я могу предложить, заключается в том, что при запуске re-replace-region в регионе, скажем, с тремя девятками (999) в нем, пытаясь изменить 9 на 0, первая 9 изменяется до того, как возникнет условие ошибки.
Вот дефун:
;;; RE-REPLACE-REGION replaces OLD (a regular expression) with NEW
;;; throughout the region indicated by BEGIN and END.
;;; For example, to insert a prefix ">" at the beginning of each line
;;; in the region:
;;; M-x re-replace-regionRET^RET>RET
;;; I don't know who wrote this function!
(defun re-replace-region (begin end old new)
"Replace occurrences of REGEXP with TO-STRING in region."
(interactive "*r\nsReplace string: \nswith: ")
(save-excursion
(save-restriction
(narrow-to-region begin end)
(goto-char (point-min))
(while (re-search-forward old (point-max) t)
(replace-match new nil nil)))))
emacs -Q
(нет файла инициализации). Покажите, какие команды и входные данные вы используете и т. д. Если вы или люди здесь можете сказать, что вы не делаете что-то неправильно, рассмотрите возможность сообщения о поведении как об ошибке либо сопровождающим Aquamacs, либо с помощьюM-x report-emacs-bug
, если вы считаете, что это не связано с Aquamacs. . - person Drew   schedule 31.12.2016