2016-05-03 5 views
1

Ich bin mit GNU Emacs 24.3.1 unter Windows 7. Wie in this manual page erwähnt, ichWarum ändert das Ändern der .emacs-Datei nicht das Verhalten von GNU Emacs?

C-x d ~/ RET 

geben Sie können die Position von meinem Home-Verzeichnis zu bestimmen. In meinem Fall Emacs zurück:

e:/EmacsDocs 

, die nach dem Windows-Explorer in der Tat eine Datei .emacs enthält. Wenn ich .emacs mit Emacs öffne, scheint die Datei leer zu sein.

Jetzt möchte ich Emacs so einstellen, dass es in Überschreibmodus standardmäßig ist.

(setq-default overwrite-mode t) 

Aber wenn ich diese Änderung .emacs und in der Nähe machen und öffnen Emacs, ist Emacs nicht überschreiben, wenn ich Text auswählen und Text eingeben: Nach this page, dass durch Zugabe der folgenden .emacs erfolgen. (Vielmehr arbeitet noch in Einfügemodus, mit neuen Zeichen vor dem Cursor eingefügt.)

Ich habe auch versucht, beispielsweise das Hinzufügen dieser Befehl .emacs, die nach this page deaktivieren wird Cursor blinkt:

(blink-cursor-mode 0) 

aber wieder, es gibt keine Änderung, wenn ich Emacs neu starten.

Wie kann ich feststellen, ob Emacs tatsächlich die .emacs im Home-Verzeichnis (beim Neustart von Emacs) liest?

+0

Sehen Sie, ob Ihre kürzlich gestarteten Emacs einen 'Nachrichten'-Puffer haben, der einen Hinweis enthalten kann (um zum' Nachrichten'-Puffer zu wechseln, lautet der Standardbefehl 'C-xb Nachrichten RET'). Es ist auch nützlich, emacs mit dem '--debug-init' Parameter von der Kommandozeile aus zu starten (https://www.gnu.org/software/emacs/manual/html_node/efaq/Debugging-a-customization-file.html). –

Antwort

0

Statt die Datei von der Bearbeitung außerhalb von Emacs, geben Sie einfach

C-x C-f ~/.emacs 

und Ihre Konfigurationen dort hinzuzufügen. Mit

C-x C-s 

speichern und neu starten. Dies sollte funktionieren, da ~ in Emacs standardmäßig das Home-Verzeichnis ist.

2

Sie verwirren, was Emacs overwrite-mode mit dem angeforderten Verhalten "überschreibt, wenn ich Text auswähle und beginne zu schreiben". Das letzte Verhalten wird in Emacs als delete-selection-mode bezeichnet, und overwrite-mode bedeutet, dass bei der Eingabe von Text (ohne Auswahl von irgendetwas) jeder vorhandene Text, der dem Cursor folgt, mit dem überschrieben wird, was Sie eingeben.

meist Emacs-Benutzer nicht aktiviert overwrite-mode standardmäßig und sie einfach auf die insert Taste (in der Regel auf die linke Seite der home Taste) hin- und herzuschalten `überschreiben-Modus ein/aus, wenn sie brauchen/wollen.

Ein Weg, auf delete-selection-mode standardmäßig aktivieren ist ein der folgenden in Ihrer init-Datei zu setzen (.emacs):

(setq delete-selection-mode t) 

oder

(delete-selection-mode) 

Ein anderer Weg ist die anpassen Option delete-selection-mode mit M-x customize-option RET delete-selection-mode RET und speichern Sie den benutzerdefinierten Wert.