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") показывает, что текущая позиция точки назначается позиции в случае интерактивного вызова. Матиас

Другие вопросы по тегам