Es una práctica común escribir archivos de configuración de Emacs usando un estilo de programación alfabetizado en modo Org.
Desafortunadamente, al tiempo que mejora la legibilidad, esto conlleva importantes desventajas de programación. En particular, dado que no hay un .el
archivo de respaldo , Emacs solo conoce el código en el bloque fuente actual. Esto significa que, excepto por el bloque editado actualmente, la navegación, la definición del símbolo y el chequeo no están disponibles.
#+BEGIN_SRC emacs-lisp
(defun literate-but-invisible ()
(interactive)
(message "I close my eyes..."))
#+END_SRC
#+BEGIN_SRC emacs-lisp
(defun humans-can-read-but-emacs-cannot ()
(interactive)
(literate-but-invisible) ; No navigation! Flycheck reports undefined symbol!
(message "...so that the room will be empty"))
#+END_SRC
¿Hay alguna forma de decirle a Emacs que se enrede y use el .el
archivo generado para proporcionar estas características en modo Org? Tal característica mejoraría la capacidad de mantenimiento del código alfabetizado Emacs Lisp.
Tenga en cuenta que si bien sería una característica fantástica ver Flycheck trabajando para Org y Emacs Lisp simultáneamente en un búfer, solo estoy preguntando cómo instrumentar los org-edit
búferes (el entorno que se obtiene cuando se invoca org-edit-special
(generalmente C-c '
)). Esto debería ser más fácil ya que solo hay un modo activo para el búfer.
He abierto una solicitud de función en el repositorio Flycheck aquí , y hay algunas investigaciones relevantes en otro tema aquí . Sin embargo, todavía no puedo construir una solución.
find-file-hook
etc. para detectar si se abre el archivo de configuración de emacs