package – Las cadenas de documentos no son válidas después de actualizar los paquetes

Pregunta:

Cuando actualizo paquetes en el menú Mx list-packages , las cadenas de documentación y las ubicaciones de las definiciones de funciones no son válidas, por lo que describe-function da un error y find-function no salta al archivo correcto. Por ejemplo, ejecutar Mx describe-function en slime produce un búfer de ayuda que muestra lo siguiente:

slime is an interactive compiled Lisp function.

(slime &optional ARG1 ARG2)

Cannot open doc string file "/home/user/.emacs.d/elpa/slime-20150501.137/slime.elc"

[back]

La ejecución Mx find-function en slime produce lo siguiente (tengo la depuración en caso de error configurada en t):

Debugger entered--Lisp error: (error "Can't find library /home/user/.emacs.d/elpa/slime-20150501.137/slime.el")
  signal(error ("Can't find library /home/user/.emacs.d/elpa/slime-20150501.137/slime.el"))
  error("Can't find library %s" "/home/user/.emacs.d/elpa/slime-20150501.137/slime.el")
  find-library-name("/home/user/.emacs.d/elpa/slime-20150501.137/slime.el")
  find-function-search-for-symbol(slime nil "/home/user/.emacs.d/elpa/slime-20150501.137/slime.elc")
  find-function-noselect(slime)
  find-definition-noselect(slime nil)
  find-function-do-it(slime nil switch-to-buffer)
  find-function(slime)
  call-interactively(find-function nil nil)
  command-execute(find-function)

¿Hay alguna forma de solucionar este problema que no requiera reiniciar Emacs?

Respuesta:

Una solución es volver a cargar ese paquete: Mx load-library <package>

He visto el mismo problema. Creo que se debe a que las cadenas de documentación, etc. "apuntan" a la versión anterior del código que se eliminó cuando actualizó el paquete. Al cargarlo, restablece estos enlaces.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top

web tasarım