Über das Handbuch
Im Handbuch (das Sie in Emacs unter Info durchsuchen können:) C-h i m Emacs RET
: Gehen Sie zum Kapitel über Dateien und dann zum Abschnitt über das Besuchen (dh Öffnen) von Dateien. Suchen Sie nach dem Wort "groß":
Wenn Sie versuchen, eine Datei zu besuchen, die größer ist als large-file-warning-threshold
(der Standardwert ist 10000000, was etwa 10 Megabyte entspricht), werden Sie von Emacs zunächst um Bestätigung gebeten. Sie können mit y antworten, um die Datei zu besuchen.
Dies ist nicht die ganze Geschichte. Weitere Informationen finden Sie in der Dokumentation von large-file-warning-threshold
( C-h v large-file-warning-threshold RET
).
Large-File-Warning-Threshold ist eine Variable, die in definiert ist files.el
.
Sein Wert ist 10000000
Maximale Dateigröße, ab der eine Bestätigung angefordert wird.
Wenn nicht, fordern Sie niemals eine Bestätigung an.
Um den Wert festzulegen, können Sie entweder die Benutzeroberfläche "Anpassen" verwenden (es gibt einen Link im Hilfebildschirm für die Variable) oder die folgende Anweisung in Ihre einfügen .emacs
:
(setq large-file-warning-threshold nil)
Geben Sie ein, C-M-x
während sich der Punkt auf dieser Linie befindet, um ihn jetzt auszuführen.
In der Benutzeroberfläche anpassen
Unter "Dateien" befindet sich unter "Dateien suchen" die Einstellung "Warnschwelle für große Dateien". Sie können einen großen Wert festlegen, obwohl Sie auf einem 32-Bit-Computer möglicherweise auf Emacs 'relativ kleines hartes Limit für Ganzzahlgrößen stoßen.
Durch das Lesen der Quelle
Schauen Sie sich die Funktion zum Öffnen von Dateien an: C-h k C-x C-f
(oder C-h f find-file RET
). Klicken Sie auf, files.el
um die Quelldatei zu durchsuchen (Sie müssen die Lisp-Quellen installiert haben). Lesen Sie den Code nicht - er ist ziemlich groß - sondern suchen Sie in dieser Datei nach Teilen der Nachricht. Du wirst es finden
(defun abort-if-file-too-large (size op-type filename)
"If file SIZE larger than `large-file-warning-threshold', allow user to abort.
OP-TYPE specifies the file operation being performed (for message to user)."
(when (and large-file-warning-threshold size
(> size large-file-warning-threshold)
(not (y-or-n-p
(format "File %s is large (%dMB), really %s? "
(file-name-nondirectory filename)
(/ size 1048576) op-type))))
(error "Aborted")))
Die Meldung wird nur angezeigt, wenn einige Bedingungen erfüllt sind. Die erste Bedingung ist large-file-warning-threshold
(als Boolescher Wert interpretiert), large-file-warning-threshold
muss also nicht null sein. Sie können die Nachricht also deaktivieren, indem Sie diese Variable auf setzen nil
. (Sie können bestätigen, dass es sich um eine globale Variable handelt, indem Sie sich die Definition in derselben Datei ansehen. Es handelt sich um ein anpassbares Element. In der Dokumentation wird erklärt, wie es verwendet wird, wenn Sie nicht genug mit Lisp vertraut sind und nur herausgefunden haben, dass die Variable in einigen Fällen eine Rolle spielt Weg.)