org-mode – Ejecute org-lint automáticamente a través de flycheck

Pregunta:

Tengo un montón de archivos en modo org que publico en HTML para una base de conocimiento, a veces la publicación falla debido a un enlace roto o algo así y es difícil encontrar el problema.

Recientemente he estado usando org-lint para encontrar los problemas. ¿Hay alguna forma de ejecutar esto automáticamente a través de flycheck?

Respuesta:

Intenté restringir el linting a un verificador con (org-lint '(link-to-local-file)) , sin embargo, el análisis todavía va a inducir un retraso notable. Quizás limitar el linter al subárbol actual o usar la biblioteca async puede mejorar el rendimiento. De todos modos, a continuación se muestra una configuración de flycheck bastante simple para org-lint :

(flycheck-define-generic-checker 'org-lint
  "Syntax checker for org-lint."
  :start 'flycheck-org-lint-start
  :modes '(org-mode))

(defun flycheck-org-lint-start (checker callback)
    (funcall
     callback 'finished
     (save-excursion
       (mapcar
        (lambda (err)
          (goto-char (car err))
          (flycheck-error-new-at
           (org-current-line) (1+ (current-column))
           'warning (cadr err) :checker checker))
        (org-lint-link-to-local-file (org-element-parse-buffer))))))

(add-to-list 'flycheck-checkers 'org-lint)

Leave a Comment

Your email address will not be published.

Scroll to Top

istanbul avukat

-

web tasarım