Emacs hat diese scheinbar sehr nette Einrichtung für Gebäude autoload Dateien basierend auf magischen Quellcode-Kommentare ("autoload Cookies") der Form ;;;###autoload
, die auf Linien von sich selbst unmittelbar über jeder Definition platziert werden automatisch geladen werden; siehe (elisp)Autoload.Emacs Autoload-Dateien für vom Benutzer installierte elisp beibehalten?
Dies scheint ein ideales Werkzeug zu sein, um Autoloads für die kleinen Ein-Datei-Pakete zu verwalten, die Emacs-Benutzer unweigerlich in ihren Profilen installieren. Es gibt nur ein kleines Problem: Diese Einrichtung (jedenfalls in GNU Emacs) scheint fast ausschließlich darauf ausgerichtet zu sein, die Datei loaddefs.el
für Emacs selbst zu erzeugen, mit sehr geringen (wenn überhaupt) Zugeständnissen an andere Verwendungen.
Das hört nicht auf, große Pakete von der autoloads.el
Maschinerie zu verwenden, um ihre eigenen Autoload-Dateien zu bauen, aber die, die ich angeschaut habe, haben ein ziemlich bisschen haarigen Code, der dafür gemacht wird, das zu tun, was gebraucht wird, obwohl einige Die Haarigkeit könnte durch die Abweichung von GNU Emacs/XEmacs bedingt sein.
(Ich denke, XEmacs ist ein bisschen besser an dieser Front, wahrscheinlich zumindest teilweise aufgrund der Tatsache, dass das offizielle Paketsystem diese Maschinerie verwendet, um separate Autoload-Dateien für jedes Paket zu machen. Hoffentlich GNU Emacs Aufnahme der ELPA Paketsystem, das auch diese Maschinen verwendet, führt zu ähnlichen Verbesserungen auf ihrer Seite)
Also, meine Frage an Sie ist:.
Wie soll ich eine Autoload-Datei für alle
.el
Dateien in einem Verzeichnis beibehalten , vorausgesetzt, sie haben alle notwendigen;;;###autoload
Kommentare (automatisches Laden von Cookies) bereits vorhanden?
[Hmm. block quotes schauen viel coolor auf tex.SE ...]
Ich benutze derzeit GNU Emacs 23.2.1, obwohl die weiter hinten eine Antwort funktioniert, desto besser. (Es wäre schön, wenn es auch mit XEmacs funktionieren würde.)
Ich bin auf Windows, aber habe MSYS neben Emacs installiert, so dass sh/bash-Skripts wahrscheinlich in Ordnung sein werden, solange sie nicht ' Ich nenne nichts Außergewöhnliches.
[Ich bin nicht ganz sicher, dass das nicht auf Superuser statt SO gehört. Wenn es bereits ein Paket gibt, das dies mit nur einer kleinen Konfigurationsmenge erledigen kann, tut es das wahrscheinlich; Auf der anderen Seite, wenn (wie ich vermute) gibt es nur ziemlich grobe Codeschnipsel, die eine Menge direkte Änderungen erfordern könnten, ich denke, dass es wahrscheinlich hier auf SO gehört.]
Huh, es scheint, dass jemand anderes als ich dies favorisiert, aber nicht aufgewertet hat: 2 Benutzer haben es favorisiert (eine davon bin ich, denke ich), aber es gibt überhaupt keine Stimmen. Ich frage mich, warum das ist - Vergesslichkeit? – SamB