package.el
no tiene buen soporte para este caso de uso. Tiene que volver a ejecutar package-install-from-buffer
cada vez que realiza una actualización del paquete, y también M-x find-function
y los amigos no saltarán al código fuente, sino a la copia que se package.el
incluye ~/.emacs.d/elpa
. Como consecuencia, recomendaría no usar package.el
para este caso de uso (o en absoluto, ya que tiene una serie de otros problemas).
En cambio, puede probar mi administrador de paquetes straight.el
, que está diseñado explícitamente para este caso de uso. Con straight.el
, no hay un procedimiento de "instalación local". Simplemente coloque su repositorio ~/.emacs.d/straight/repos/<my-package-repo>
y luego cargue el paquete en su archivo init:
(straight-use-package '(<my-package> :local-repo "<my-package-repo>"))
Cada vez que realiza un cambio en el código fuente, la generación de carga automática y la compilación de bytes se rehace (una vez que reinicia Emacs). Además, está ejecutando directamente desde el repositorio de Git, por lo que los M-x find-function
amigos trabajarán como se esperaba.
Finalmente, las versiones local y ascendente son completamente intercambiables. straight.el
le permite realizar los cambios locales que desee, y se tratan tan sagrados como los cambios ascendentes (aunque straight.el
le permite revertir automáticamente [e interactivamente] sus repositorios a sus versiones ascendentes, si lo desea). Por lo tanto, no hay que preocuparse por realizar cambios en su configuración si desea realizar un desarrollo local: simplemente realice el desarrollo local. Y si tiene un paquete privado que publica, es trivial: simplemente empuje ese paquete en algún lugar (y probablemente actualice la receta en su archivo init para apuntar a ese repositorio Git, para que straight.el
pueda volver a clonarlo desde una máquina diferente).
A diferencia de package.el
, no hay diferencia en el tratamiento de los paquetes de varios archivos y de un solo archivo.
Para obtener documentación detallada sobre straight.el
, incluidas las comparaciones con otros gestores de paquetes, consulte el archivo README .
-pkg.el
archivo opcional es interesante. ¿Qué valores predeterminados tienen en ese caso?