Как игнорировать селекторы jQuery в flyspell?

Как игнорировать селекторы jQuery в flyspell?

Я использую js2-modewith flyspell-prog-modeдля проверки орфографии комментариев и строк.

При использовании jQuery вы используете селекторы вроде $("#something")или $('something else'). Могу ли я настроить flyspell так, чтобы он не проверял орфографию этих строк? В принципе, все, что заключено в $(и ). Обработка jQuery(и )тоже была бы классной, но я, вероятно, смогу это сделать.

Я нашел этот вопрос, он похож, но я не смог адаптировать его самостоятельно.Как исключить {{{ ... }}} в flyspell-mode и flyspell-buffer?

Спасибо!

решение1

Короче говоря, вы действительно не сможете этого сделать, по крайней мере, без серьезного взлома Flyspell и/или вашего основного режима.

Из источника flyspell

;;;###autoload
(defun flyspell-prog-mode ()
  "Turn on `flyspell-mode' for comments and strings."
  (interactive)
  (setq flyspell-generic-check-word-p 'flyspell-generic-progmode-verify)
  (flyspell-mode 1)
  (run-hooks 'flyspell-prog-mode-hook))

Соответствующая строка, в которой мы устанавливаем flyspell-generic-check-word-pфункцию для flyspell-generic-progmode-verifyэтой функции, выглядит так

(defun flyspell-generic-progmode-verify ()
  "Used for `flyspell-generic-check-word-p' in programming modes."
  (let ((f (get-text-property (point) 'face)))
    (memq f flyspell-prog-text-faces)))

Наконец, нам нужно взглянуть наflyspell-prog-text-faces

(defvar flyspell-prog-text-faces
  '(font-lock-string-face font-lock-comment-face font-lock-doc-face)
  "Faces corresponding to text in programming-mode buffers.")

Итак, как теперь легко заметить, flyspell использует шрифт текста для проверки того, как он был набран (на самом деле это, вероятно, самый эффективный способ для flyspell справиться с этой проблемой. Это означает, что ему не нужно повторно анализировать ваш код).

flyspell-generic-progmode-verifyВы можете либо загрузить пользовательскую версию, flyspell-generic-check-word-pлибо изменить основной лад таким образом, чтобы он создавал разные лица для разных струн.

Связанный контент