Cuando lo uso flyspell-mode
, informa errores ortográficos cada vez que escribo una URL. ¿Hay alguna forma de decirle a Flyspell que deje de verificar las URL?
Cuando lo uso flyspell-mode
, informa errores ortográficos cada vez que escribo una URL. ¿Hay alguna forma de decirle a Flyspell que deje de verificar las URL?
Respuestas:
Después de un poco de búsqueda, encontré una pista en [esta respuesta de Superuser.com : debe establecer flyspell-mode-predicate
una función que decida si las palabras deben verificarse o no. Aquí hay una manera de hacer que Flyspell ignore cualquier cosa que comience con "http" o "https":
(defun flyspell-ignore-http-and-https ()
"Function used for `flyspell-generic-check-word-predicate' to ignore stuff starting with \"http\" or \"https\"."
(save-excursion
(forward-whitespace -1)
(when (looking-at " ")
(forward-char)
(not (looking-at "https?\\b")))))
(put 'text-mode 'flyspell-mode-predicate 'flyspell-ignore-http-and-https)
Hay algunas deficiencias, por supuesto:
Pero como método rápido y sucio, debería funcionar.
Tengo algo en este sentido (en mi caso para el modo de reducción) para ser un poco más resistente a algunos casos comunes pero patológicos de la respuesta de Saint Aardvark the Carpeted:
(require 'thingatpt)
(defun markdown-flyspell-predicate ()
(not (thing-at-point 'url)))
(put 'markdown-mode 'flyspell-mode-predicate 'markdown-flyspell-predicate)
En particular, si comienza mirando el espacio en blanco antes de una palabra, la URL no necesariamente comenzará con https
. Considere estos casos:
(/emacs/)
[text text](/emacs/)
\url{/emacs/}
ispell
(noflyspell
) este enlace semi-relacionado, con respectoispell-skip-region-alist
, parece útil: superuser.com/a/345461/206164 Quizásflyspell
tenga algo similar que se pueda implementar, por ejemplo, usarflyspell-mode-predicate
.