Ich habe das Changelog für Emacs 24.4 ( C-hn) gelesen und versucht zu sehen, was die Datei-Benachrichtigungsfunktion ist. Ich habe versucht, C-hveine verwandte Variable zu verwenden, auto-revert-use-notify
aber es wurde nichts angezeigt.
Ich habe dann im Emacs-Quellcode nach diesem Variablennamen gesucht und festgestellt, dass er in verwendet wurde lisp/autorevert.el
. Danach (require 'autorevert)
wurden alle zugrunde liegenden Funktionen und Variablen definiert.
Frage: Woher weiß ich, ob und was ich tun muss, require
wenn ich eine dann inaktive Emacs-Funktion verwenden möchte? Gibt es eine Liste solcher Pakete?
require
das Paket.Antworten:
Soweit ich weiß, lautet die Antwort auf Ihre Fragen " Sie können es nicht wissen " und " Es gibt keine solche Liste von Bibliotheken ".
apropos
und ähnliche Befehle basieren nur auf dem, was aktuell geladen oder automatisch geladen wird, nicht auf dem, was mit Emacs verteilt wird. Sofern etwas nicht (a) eingebaut (dh in C-Code), (b) aus einer bereits geladenen Bibliothek verfügbar oder (c) automatisch geladen ist, wird es von solchen Befehlen nicht ausgewählt.In diesem Fall besteht Ihr einziger Ausweg darin, den Quellcode zu durchsuchen (soweit ich weiß). Grepping ist eine Möglichkeit, dies zu tun.
Wenn eine Variable wie
auto-revert-use-notify
(die eine Benutzeroption ist) in den Emacs NEWS (C-h N
) explizit erwähnt wird , wäre es großartig, wenn diese Erwähnung mit der Quellbibliothek verknüpft wäre, die sie definiert, sodass Sie einfach auf ihren NamenRET
klicken oder klicken könntenmouse-2
um die Bibliotheksdatei bis zu ihrer Definition zu öffnen. Möglicherweise möchten Sie diesM-x report-emacs-bug
als Erweiterungsanforderung ablegen.(Es kann auch nützlich sein, einen Befehl zu haben, um dies im Allgemeinen zu tun: Suchen Sie die Definition einer Variablen oder einer Funktion im verteilten Quellcode, ohne dass die Bibliothek geladen werden muss. In diesem Fall kannten Sie den genauen Variablennamen, aber musste
grep
herausfinden, wo es definiert ist.)quelle
require+
Paket, mit dem Sie die Symbole von Paketen durchsuchen können, die noch nicht geladen wurden. ;-)load-path
. ;-) (Aber eine Bibliothek mit dem Namenapropos+.el
existiert bereits, wie minimal sie auch seinrequire