Ich verwende einen Emacs-Modus, um einige meiner Dateien zu kommentieren (der tatsächliche Modus ist nicht wichtig). Es wird als eine Bibliothek geliefert und kommt mit kompiliertem Lisp-Code (natürlich). Ich möchte sein Verhalten ändern, indem ich eine einzelne Funktion darin überschreibe. Nur für meine lokale Emacs-Sitzung. Für den Moment kopiere ich einfach die Funktion aus der Quelldatei der Bibliothek, ändere sie etwas und tippe dann auf eval-last-sexp
. So weit, ist es gut. Allerdings bekomme ich inkonsistente Ergebnisse: Ich bin mir nicht sicher, wie Emacs Funktionen aus .elc
Dateien mit Funktionen aus der Quelle gemischt behandelt. Manchmal sehe ich meine eigene Version der Funktion, manchmal die Originalversion. Sehr verwirrend (und nervig).Eine einzelne Funktion in einer Emacs-Bibliothek überschreiben
Alle Ideen, wie kann ich eine Lisp-Funktion in einer Emacs-Bibliothek ersetzen ohne Änderung der Bibliothek Quelldateien, die schreibgeschützt sind?
Wichtig zu erwähnen, dass 'add-function' und die anderen nur in Emacs 24.4 hinzugefügt wurden (Ich muss meine Emacs aktualisieren). –