Quando uso flyspell-mode
, ele relata erros de ortografia sempre que digito um URL. Existe uma maneira de dizer ao Flyspell para parar de verificar os URLs?
Quando uso flyspell-mode
, ele relata erros de ortografia sempre que digito um URL. Existe uma maneira de dizer ao Flyspell para parar de verificar os URLs?
Respostas:
Depois de um pouco de pesquisa, encontrei uma dica na [ resposta do Superuser.com : você precisa definir flyspell-mode-predicate
uma função que decida se as palavras devem ser verificadas ou não. Aqui está uma maneira de fazer com que o Flyspell ignore qualquer coisa que comece com "http" ou "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)
Existem algumas falhas, é claro:
Mas, como um método rápido e sujo, deve funcionar.
Eu tenho algo nesse sentido (no meu caso para o modo de remarcação) ser um pouco mais resistente a alguns casos comuns, mas patológicos, da resposta de Saint Aardvark, o Carpete:
(require 'thingatpt)
(defun markdown-flyspell-predicate ()
(not (thing-at-point 'url)))
(put 'markdown-mode 'flyspell-mode-predicate 'markdown-flyspell-predicate)
Em particular, se você começar olhando o espaço em branco antes de uma palavra, o URL não começará necessariamente com https
. Considere estes casos:
(/emacs/)
[text text](/emacs/)
\url{/emacs/}
ispell
(nãoflyspell
) esse link semi-relacionadoispell-skip-region-alist
, parece útil: superuser.com/a/345461/206164 Talvezflyspell
tenha algo semelhante que possa ser implementado - por exemplo, usandoflyspell-mode-predicate
.