flyspell исправить предыдущую ошибку
Предположим, у меня есть содержимое буфера следующим образом
teh msot |
Курсор в |
, в общем я могу исправить msot
в most
с одним C-;
нажмите (flyspell-auto-правильное предыдущее слово). Я хочу исправить teh
в the
, т.е. до предыдущей ошибки. (или вообще n-е заклинание)
Похоже на то flyspell-auto-correct-previous-word
принимает числовые аргументы, но не дает ожидаемого результата.
что мне не хватает.?
ОБНОВИТЬ:
Зачем мне это нужно. Когда я пишу заметки об исследованиях, flyspell ошибочно помечает некоторые научные слова как неправильные. Поэтому нужно пропустить одну или две ложные отметки.
1 ответ
Chf flyspell-auto-correct-previous-word говорит мне, что числовой аргумент называется "позиция". Это не похоже на то, что вы ищете. Позиция, скорее всего, относится к позиции в буфере. Глядя на исходный код flyspell, видно, что этот параметр не используется намеренным образом (не могу сказать, что такое оверлей, хотя...)
;*---------------------------------------------------------------------*/
;* flyspell-auto-correct-previous-word ... */
;*---------------------------------------------------------------------*/
(defun flyspell-auto-correct-previous-word (position)
"*Auto correct the first mispelled word that occurs before point."
(interactive "d")
(add-hook 'pre-command-hook
(function flyspell-auto-correct-previous-hook) t t)
(save-excursion
(unless flyspell-auto-correct-previous-pos
;; only reset if a new overlay exists
(setq flyspell-auto-correct-previous-pos nil)
(let ((overlay-list (overlays-in (point-min) position))
(new-overlay 'dummy-value))
[SNIP]
также (интерактивное "d") показывает, что текущая позиция точки назначается позиции в случае интерактивного вызова. Матиас