2012-05-13 4 views
6

Ist es möglich, integrierte Emacs-Pakete wie "tetris" zu entfernen? Sie können nicht markiert werden, um in der Paketliste ab 24.1 gelöscht zu werden. Es wäre nett, eine minimale Installation von Emacs zu haben - wenn auch kaum nützlich - indem einige oder alle eingebauten Pakete gelöscht werden. Ist es irgendwie möglich, und wird diese Fähigkeit in Zukunft hinzugefügt?Integrierte Pakete in Emacs löschen

+2

Da Emacs nicht alle Pakete beim Start laden wird, frage ich mich, was ist Ihr Zweck, das zu tun? – kindahero

Antwort

9

Emacs sollte starten und benutzbar sein, auch wenn das ganze lisp Verzeichnis leer ist (beachte, dass wir selten/nie testen, also kann ich nicht garantieren, dass es funktioniert, aber zumindest im Prinzip sollte es und wenn es sollte es nicht gemeldet werden mit M-x report-emacs-bug). Sie können alle Pakete, die Sie nicht finden, entfernen, um eine abgespeckte Version von Emacs zu erstellen.

4

Sie könnten einfach die elc-Dateien aller gewünschten Pakete entfernen.

Zum Beispiel in der Version von Emacs im ubuntu-Repository das tetris Paket befindet sich:

/usr/share/emacs/23.3/lisp/play/tetris.elc 

Wenn Sie verschieben oder entfernen, wird Emacs weiter arbeiten, aber sie werden nicht fähig, Tetris mehr zu spielen.

1

Möglicherweise möchten Sie die Variable package--builtins überprüfen. Das heißt - es ist wenig sinnvoll, Pakete zu entfernen, die über package.el installiert wurden, da package.el automatisch nur die Autoloads eines Pakets extrahiert und lädt - daher führt das Vorhandensein vieler installierter Pakete zu keinem nennenswerten Overhead. Ich bin mir ziemlich sicher, dass das Entfernen von integrierten Paketen nie ein Feature von package.el sein wird.

+0

Die Bewertung von Autoloads verursacht eine erhebliche Verlangsamung beim Laden, wenn Sie die Art von Person sind, die ihre Init unter 0,5 Sekunden hält. –

Verwandte Themen