Wo ist die .emacs-Datei?


26

Ich habe Emacs 23.1 von der GNU-FTP-Site heruntergeladen. Ich habe es aufgehoben und nach der Konfiguration erstellt.

Ich finde die .emacs-Datei nicht in meinem Home-Verzeichnis oder irgendwo in meinem System! Vermisse ich etwas?

Antworten:


22

Oder, wie es eine viel einfachere Art und Weise (wie im Kommentar darauf hingewiesen), Ctrl+ H, v(describe-variable) wird schön Ausgabe beschreibt die Variable bringen und seinen Wert, etwa so:

    user-init-file is a variable defined in ‘C source code’.
    Its value is
    "/home/.emacs"

Dokumentation:
Dateiname, einschließlich Verzeichnis, der Initialisierungsdatei des Benutzers. Wenn die geladene Datei die Erweiterung '.elc' hatte und die entsprechende Quelldatei vorhanden ist, enthält diese Variable den Namen der Quelldatei, die für Funktionen wie 'custom-save-all' geeignet ist, die die Init-Datei bearbeiten. Während Emacs die Init-Datei lädt und auswertet, ist value der tatsächliche Name der Datei, unabhängig davon, ob sie die Erweiterung & lsquo'.elc 'hat oder nicht.

Dieser Weg ist ziemlich ausführlich. Eine präzisere Antwort ist das Starten von Emacs. Geben Sie in Ihrem Lisp-Evaluierungspuffer + ein user-init-fileund drücken Sie , um zu evaluieren. Dies gibt aus, wo sich Ihre Init-Datei befindet:CtrlJ

user-init-file
"/home/.emacs"

5
Strg-H v (Variable beschreiben), um eine Variable zu betrachten.
Starblue

Wie wird der Lisp-Auswertungspuffer aufgerufen?
Peter Mortensen


12

Sie müssen die Datei erstellen, wenn Sie Emacs konfigurieren möchten. Sie können es einfach erstellen und die Datei manuell hacken oder M-x customizedie Anpassung verwenden und speichern.


4

Siehe Initfile Kapitel in EmacsWiki.

Ihre Init-Datei enthält persönlichen EmacsLisp-Code, den Sie beim Starten von Emacs ausführen möchten.

  • Für GnuEmacs ist es ~/.emacsoder _emacsoder ~/.emacs.d/init.el.
  • Für XEmacs ist es ~/.xemacsoder ~/.xemacs/init.el.
  • Für AquamacsEmacs ist es ~/.emacsoder~/Library/Preferences/Aquamacs Emacs/Preferences.el

1
Gabor, was ist der Unterschied zwischen den Dateitypen hier? Ich habe .emacs.d/. Soll ich init.elhier in diesem Verzeichnis eine Datei anlegen? Ist das Verzeichnis als Platzierung wichtig?
Vass

1

Haben Sie überprüft, dass es weder existiert .emacsnoch .emacs.d/init.el? Denn letzteres scheint immer mehr zum Standard zu werden (eine Datei weniger in ~).


1
Was passiert, wenn Sie es an der falschen Stelle platzieren? ist das verzeichnis beliebig
Vass

1

Unter Windows heißt die .emacs-Datei möglicherweise _emacs, um die Abwärtskompatibilität mit DOS- und FAT-Dateisystemen zu gewährleisten, bei denen Dateinamen nicht mit einem Punkt beginnen konnten. Einige Benutzer ziehen es vor, einen solchen Namen weiterhin zu verwenden, da der Explorer keine Datei erstellen kann, deren Name mit einem Punkt beginnt, obwohl das Dateisystem und die meisten anderen Programme damit umgehen können. In Emacs 22 und höher kann die Init-Datei auch .emacs.d / init.el heißen . Viele der anderen Dateien, die von lisp-Paketen erstellt werden, werden jetzt auch im Verzeichnis .emacs.d gespeichert, sodass alle Ihre Emacs-bezogenen Dateien an einem Ort bleiben.

Quelle: http://www.gnu.org/software/emacs/manual/html_mono/efaq-w32.html#Init-file


Ist das Verzeichnis der initDatei also nur eine Konvention? Einfach ein Standard, nach dem Emacs automatisch sucht und Sie Ihre persönlichen Einstellungen in eine Datei mit Lisp-Befehlen einfügen, um Emacs anzupassen ?
Vass

Unter Windows 10 habe ich festgestellt, dass es sich in zwei verschiedenen Verzeichnissen auf zwei verschiedenen Computern befindet: "C: \ Users \ Benutzername \" auf einem und "C: \ Users \ Benutzername \ AppData \ Roaming \" auf dem anderen.
Kirill Yunussov

0

Du solltest es versuchen ls -a.

ََََََََ


1
Außerdem: Haben Sie versucht, Emacs einmal auszuführen, bevor Sie eine Konfigurationsdatei in Ihrem Zuhause erwartet haben?
Joey

In welchem ​​Zusammenhang? In der Kommandozeile (welches Arbeitsverzeichnis)? Aus Emacs heraus?
Peter Mortensen

0

Einfache Antwort. Sie müssen mit dem Schreiben von Code in Emacs beginnen, bevor die .emacs-Datei in Ihrem Ausgangsverzeichnis angezeigt wird. Schreiben Sie einige schnelle Hallo, Welt! S und einfachen Mathe-Code, kompilieren Sie und führen Sie.

Dann schau nochmal nach Hause und tippe ls -aund du wirst es sehen. Dann bearbeiten und eingeben gedit .emacs. Ich benutze gedit, weil ich das seltsame Gefühl habe, Emacs mit Emacs zu bearbeiten.


Warum würden Sie etwas anderes als Emacs verwenden, um eine Datei mit Elisp-Code zu bearbeiten? Sie können jederzeit eine neue Instanz starten (mit, emacs -qwenn Ihre Init-Datei beschädigt ist und Sie sie umgehen müssen). Es ist auch nicht erforderlich, dass Emacs Ihre Init-Datei für Sie generiert. Sie können es manuell erstellen. Emacs wird es weiterhin verwenden.
Phils

0

Wie bei anderen Programmen können Sie /etc/[what file do you want]in Ihr Ausgangsverzeichnis kopieren , das Ihr System für die Einstellungen verwendet.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.