Gibt es eine Funktion zum Protokollieren im * Nachrichten * -Puffer ohne Anzeige im Echobereich?
12
Gibt es eine Funktion zum Protokollieren in den Nachrichtenpuffer, ohne dass dies im Echobereich angezeigt wird? Oder vielleicht ein anderer eingebauter Log-Mechanismus?
Ich bin nach einer Art console.log ("string") Art von Funktionalität.
Hier ist ein Link, der zeigt, wie ich es mache: emacs.stackexchange.com/a/6003/2287 Im Wesentlichen wird die Funktion (messages-buffer)verwendet, um den Puffer abzurufen oder einen mit dem richtigen Modus zu erstellen, wenn er nicht vorhanden ist. Die Funktion - using (inhibit-read-only t)- geht zum Ende des Puffers und prüft, ob es sich um eine neue Zeile handelt. Wenn dies nicht der Fall ist, erstellen Sie eine neue Zeile, fügen Sie den Inhalt der Nachricht ein (was auch immer es ist) und testen Sie dann erneut, um festzustellen, ob es sich um eine neue Zeile handelt. Diese Methode hält den Echobereich für Inhalte wie interaktive Eingabeaufforderungen verfügbar.
Gesetzesliste
Antworten:
10
Mit emacs-snapshot können Sie Folgendes inhibit-messagean t binden :
Non-nil bedeutet, dass Anrufe zu "message" nicht angezeigt werden. Sie werden weiterhin im Nachrichtenpuffer protokolliert .
Eine Möglichkeit, dies zu tun, besteht darin, (message "")sofort danach anzurufen . Dadurch werden jedoch alle vorhandenen Inhalte im Echobereich gelöscht.
(messages-buffer)
verwendet, um den Puffer abzurufen oder einen mit dem richtigen Modus zu erstellen, wenn er nicht vorhanden ist. Die Funktion - using(inhibit-read-only t)
- geht zum Ende des Puffers und prüft, ob es sich um eine neue Zeile handelt. Wenn dies nicht der Fall ist, erstellen Sie eine neue Zeile, fügen Sie den Inhalt der Nachricht ein (was auch immer es ist) und testen Sie dann erneut, um festzustellen, ob es sich um eine neue Zeile handelt. Diese Methode hält den Echobereich für Inhalte wie interaktive Eingabeaufforderungen verfügbar.Antworten:
Mit emacs-snapshot können Sie Folgendes
inhibit-message
an t binden :quelle
Eine Möglichkeit, dies zu tun, besteht darin,
(message "")
sofort danach anzurufen . Dadurch werden jedoch alle vorhandenen Inhalte im Echobereich gelöscht.quelle