package.el
hat keine gute Unterstützung für diesen Anwendungsfall. Sie müssen package-install-from-buffer
jedes Mal neu ausführen, wenn Sie ein Update für das Paket vornehmen. Außerdem M-x find-function
springen Freunde nicht zum Quellcode, sondern zu der Kopie, die sie package.el
einfügt ~/.emacs.d/elpa
. Infolgedessen würde ich empfehlen, nicht package.el
für diesen Anwendungsfall zu verwenden (oder überhaupt nicht, da es eine Reihe anderer Probleme gibt).
Stattdessen können Sie meinen Paketmanager ausprobieren straight.el
, der explizit für diesen Anwendungsfall entwickelt wurde. Mit straight.el
gibt es keine "lokale Installation". Sie legen einfach Ihr Repository ab ~/.emacs.d/straight/repos/<my-package-repo>
und laden das Paket in Ihre Init-Datei:
(straight-use-package '(<my-package> :local-repo "<my-package-repo>"))
Jedes Mal, wenn Sie eine Änderung am Quellcode vornehmen, wird die automatische Ladegenerierung und Bytekompilierung wiederholt (sobald Sie Emacs neu starten). Außerdem werden Sie direkt aus dem Git-Repository ausgeführt, sodass M-x find-function
Freunde wie erwartet arbeiten.
Schließlich sind lokale und vorgelagerte Versionen vollständig austauschbar. straight.el
Mit dieser Option können Sie lokale Änderungen vornehmen, die Sie möchten, und sie werden genauso heilig behandelt wie Upstream-Änderungen (obwohl straight.el
Sie Ihre Repositorys auf Wunsch automatisch [und interaktiv] auf ihre Upstream-Versionen zurücksetzen können). Daher müssen Sie keine Änderungen an Ihrer Konfiguration vornehmen, wenn Sie eine lokale Entwicklung durchführen möchten: Führen Sie einfach eine lokale Entwicklung durch. Und wenn Sie ein privates Paket haben, das Sie veröffentlichen, ist es trivial: Schieben Sie dieses Paket einfach irgendwohin (und aktualisieren Sie wahrscheinlich das Rezept in Ihrer Init-Datei, um auf dieses Git-Repository zu verweisen, damit straight.el
es von einem anderen Computer neu geklont werden kann).
Anders als bei package.el
gibt es keinen Unterschied bei der Behandlung von Paketen mit mehreren Dateien und einzelnen Dateien.
Eine ausführliche Dokumentation zu straight.el
, einschließlich Vergleiche mit anderen Paketmanagern, finden Sie in der README-Datei .
-pkg.el
Datei ist interessant. Was sind die Standardwerte in diesem Fall?