Wie ändere ich die Standardschriftgröße und den Schrifttyp von emacs?


Antworten:


70

Sie können die Menüleiste verwenden. Gehe zu Options-> Set Default Font....

Vergessen Sie nicht, nach Auswahl einer Schriftart Options-> zu drücken . Save OptionsAndernfalls wird Ihre neue Schriftart nach dem Schließen von Emacs nicht gespeichert.


9
Dies funktioniert nicht (vielleicht früher?). Es ändert nur die Schriftart für den aktuellen Frame und wird nicht für zukünftige Sitzungen gespeichert. In dieser Antwort finden Sie eine Methode, die funktioniert.
— Alexis

@alexis: Es funktioniert immer noch für mich auf Emacs-24.2. Hier ist ein Screenshot . (Entschuldigen Sie die abscheuliche Auswahl an Schriftarten: P.) Sie wurde auch beim Neustart von Emacs ordnungsgemäß gespeichert. Vielleicht haben Sie einen Konfigurationsunterschied oder so?
— Tikhon Jelvis

3
Meine Version ist kaum anders: Ich habe GNU Emacs 24.3.1 unter OS X und es funktioniert nicht. Klar ist etwas anders, aber siehe auch die Frage und Diskussion bei der Antwort, auf die ich verlinkt habe . Dieser Ansatz hat mir den Tag gerettet. Ich denke, die Schlussfolgerung ist "YMMV".
— Alexis

1
Funktionierte auch nicht für Emacs 24.4 unter OS X 10.10.5. Die direkte Änderung von ~ / .emacs funktioniert jedoch.
— Fonzie

7
Wenn Sie die Menüleiste ausgeblendet haben, aber dennoch eine GUI-Schriftartenauswahl mit Vorschau verwenden möchten, können Sie diese verwenden M-x menu-set-font.
— Vladimir Panteleev

113

Sie können in Ihrer .emacsDatei auch Folgendes tun .

Emacs 23.1

(set-frame-font "Inconsolata 12" nil t)

Ältere Versionen von Emacs

(set-default-font "Inconsolata 12" nil t)

12
(set-default-font Fontname-Size) ist jetzt veraltete Verwendung (set-frame-font Fontname-Size)
— Napoleon

1
Sie sollten das FRAMESArgument auch so einstellen t, dass es alle Frames betrifft, nicht nur den aktuellen Frame. (set-frame-font Fontname-Size nil t)
— Nick McCurdy

Sie können auch ausführen describe-font, um die aktuelle Schriftart zu bestimmen (z. B. wenn sie durch Anpassen festgelegt wurde) oder um mögliche Optionen für "vollständiger Name"
— herauszufinden

7

Um eine erweiterte Liste der Anpassungen zu erhalten, verwenden Sie

Mx Customize-Face RET


4

Emacs 25.1 unter MacOS hat Menlo 12 als Standard. Ich wollte die Größe erhöhen.

C-x C-f ~/.emacs

Fügen Sie dies am Ende der ~/.emacsDatei hinzu

(set-default-font "Menlo 14")

Um den Änderungseffekt sofort während des Aufenthalts zu sehen ~/.emacs

M-x eval-buffer [RET]


1
Dies funktioniert für die ERSTE Datei, die ich beim Starten von Emacs öffne, aber nachfolgende Puffer verwenden wieder die kleinere Schriftart.
— HaPsantran

3

In meiner Antwort werde ich mich darauf konzentrieren, die Standardschriftgröße über X-Ressourcen festzulegen. Die Verwendung von X-Ressourcen wurde bereits in der Antwort erwähnt ~/.Xdefaults. Ich werde weitere Details angeben (die gleichen, die ich bereits in https://unix.stackexchange.com/a/426914/4319 beschrieben habe . Abgesehen von der Höhe des "Standard" -Gesichtes in Emacs kann man dies ähnlich einstellen andere Schriftparameter.

Um eine bestimmte Standardschrifthöhe für Emacs festzulegen, habe ich Folgendes eingegeben /etc/X11/Xresources-site( /etc/X11/Xresourcesist ebenfalls in Ordnung, kann jedoch von Ihrer Distribution überschrieben werden):

Emacs.default.attributeHeight: 94

Dies würde auch Remote-X-Clients betreffen, bei denen es sich um Emacs handelt (z. B. Emacs, die auf einem Remote-Host über ssh gestartet wurden).

/etc/X11/Xresources-siteund /etc/X11/Xresources(und wahrscheinlich ~/.Xresourcesund ~/.Xdefaults) werden normalerweise zu Beginn Ihrer X-Sitzung gelesen. Führen Sie so etwas aus, um Ihre aktuellen X-Ressourcen sofort zu beeinflussen xrdb -merge /etc/X11/Xresources-site. Die X-Ressourcen können von angezeigt werden xrdb -query.

Tatsächlich wird in meinem Fall /etc/X11/Xresources-sitedank einer Zeile in /etc/X11/Xresources(die von den Startskripten gelesen wird) gelesen:

#include "/etc/X11/Xresources-site"

so /etc/X11/Xresourcesist die Sache, die sicher gelesen wird.

Es gibt auch einige Dateien mit derselben Syntax, die jedes Mal gelesen werden, wenn ein X-Programm wie emacs gestartet wird. In meinem Fall sind dies : ~/.Xdefaults-MY_HOST_NAME, /etc/X11/app-defaults/Emacs(nur für emacs-athena, nicht für emacs-gtk3) /usr/share/X11/app-defaults/Emacsusw. (Aber ich mag die Idee, geladene X-Ressourcen mehr zu zeigen - gezeigt mit xrdb -query; damit entfernte X-Clients dieselben X-Ressourcen lesen .)

Weitere X-Ressourcen, die Emacs versteht, sind unter https://www.gnu.org/software/emacs/manual/html_node/emacs/Table-of-Resources.html#Table-of-Resources beschrieben .

Emacs 24.3 hatte einen Fehler, der dazu führte, dass die Attribute für das Standardgesicht aus den X-Ressourcen nicht berücksichtigt wurden, wie in meinem obigen Beispiel. Dies wurde seit 24.4 behoben .


3

Ich habe die folgende Einstellung in init.el:

(set-face-attribute 'default nil :font "Menlo" :height 160)

Hinweis: Wenn Sie eine Voreinstellung für die Fenstergröße (Breite und Höhe) haben, wird das heightAttribut der Schriftart dieses Layout beeinträchtigen.


2

Wenn Sie Linux / X11 verwenden, müssen Sie dies möglicherweise einstellen ~/.Xdefaults. Ich habe die Schriftart dort eingestellt, da die anderen Antworten hier keine Auswirkung haben.

Ich kann die verfügbaren Schriftarteinstellungen anzeigen, indem ich sie in Emacs ausführe: helm-select-xfont

Dann beginne ich zu tippen Consound sehe Einträge wie:

-Consolas-normal-normal-normal-*-*-*-*-*-m-0-iso10646-1
...

Also habe ich es eingefügt ~/.Xdefaultsund die Größe 12wie folgt eingestellt :

Emacs.font: xft:-*-Consolas-normal-normal-normal-*-12-*-*-*-m-0-iso10646-1

und starten Sie Emacs neu.


0

Einfach drücken und M-xdann eingeben set-frame-font. Alle verfügbaren Schriftarten, die auf Ihrem Computer vorhanden sind, werden angezeigt. Wählen Sie die gesuchte aus. Ich benutze diesen Weg, um den Schrifttyp in meinem Emacsso einfach zu ändern ; anstatt die .spacemacsoder .emacsDatei zu ändern .

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.