Ich versuche, die Größe des Bildschirms zu ermitteln, auf dem ich Emacs starte, und die Größe anzupassen und das Fenster, in dem es gestartet wird, entsprechend zu positionieren (ich denke, das ist der Rahmen in Emacs-Sprache). Ich versuche, meine .emacs so einzurichten, dass ich immer ein "einigermaßen großes" Fenster mit der oberen linken Ecke oben links auf meinem Bildschirm erhalte.
Ich denke, dies ist eine große Frage für den allgemeinen Fall. Um die Dinge ein wenig einzugrenzen, bin ich am meisten an GNU Emacs 22 unter Windows und (Debian) Linux interessiert.
Ich habe folgendes in meinem
.emacs
:Sie können auch auf die Funktionen aussehen
set-frame-size
,set-frame-position
undset-frame-width
. Verwenden SieC-h f
(akaM-x describe-function
), um eine detaillierte Dokumentation aufzurufen.Ich bin mir nicht sicher, ob es eine Möglichkeit gibt, die maximale Höhe / Breite eines Rahmens in der aktuellen Fensterumgebung zu berechnen.
quelle
(if (window-system) (set-frame-size (selected-frame) 124 40))
für den Sieg - so schön und prägnant, und ich bekomme die Größe, die mein Terminal standardmäßig verwendet, was nett und vertraut ist. :) (Natürlich nach Belieben anpassen.) Danke!init.el
eingeben, gilt dies nur für den Anfangsrahmen. Wenn Sie danach einen neuen Frame erstellen, hat die obige Funktion keine Auswirkung. Für den neuen Frame werden die Einstellungen vorgenommendefault-frame-alist
.(set-frame-size (selected-frame) 80 24)
ich einen Rahmen von 161 mal 48 habe. Ich bin auf einem 4K-Hidpi-Bildschirm, aber ich würde nicht erwarten, dass sich dies auf die Anzahl der Zeichen auswirkt.Entnommen aus: http://www.gnu.org/software/emacs/windows/old/faq4.html
Die erste Einstellung gilt für alle Emacs-Frames, einschließlich des ersten, der beim Start angezeigt wird. Die zweite Einstellung fügt dem ersten Frame zusätzliche Attribute hinzu. Dies liegt daran, dass es manchmal schön ist, den Originalrahmen zu kennen, in dem Sie Emacs starten.
quelle
(width . 80) (height . 40)
), aber aus irgendeinem Grund funktionierte sie nicht mehr, nachdem ich meine Xubuntu-Version von 12.04 auf 13.10 aktualisiert hatte: Beim Start war die Rahmengröße die Standardeinstellung. Ich wechselte dann zu Chris Conways Antwort, die für mich funktioniert.Der einfachste Weg, dies in einer X-Window-Umgebung zu tun, sind X- Ressourcen . Der relevante Teil meiner .Xdefaults sieht folgendermaßen aus:
Sie sollten in der Lage sein, es mit + 0 + 0 Positionskoordinaten zu versehen, um es in die obere linke Ecke Ihrer Anzeige zu zwingen. (Der Grund, warum ich das nicht mache, ist, dass ich gelegentlich neue Frames spawne, und es macht die Dinge verwirrend, wenn sie genau an der gleichen Stelle wie die vorherige erscheinen.)
Laut Handbuch funktioniert diese Technik auch unter MS Windows und speichert die Ressourcen als Schlüssel / Wert-Paare in der Registrierung. Das habe ich nie getestet. Es könnte großartig sein, es könnte viel unangenehmer sein, als einfach eine Datei zu bearbeiten.
quelle
Versuchen Sie, den folgenden Code hinzuzufügen
.emacs
quelle
Sie können auch den Parameter -geometry verwenden, wenn Sie Emacs starten:
emacs -geometry 80x60+20+30
Sie erhalten ein Fenster mit einer Breite von 80 Zeichen und einer Höhe von 60 Zeilen, wobei die obere linke Ecke 20 Pixel nach rechts und 30 Pixel nach unten von der oberen linken Ecke des Hintergrunds entfernt ist.quelle
Auf Ubuntu tun:
quelle
Unter Windows können Sie den Emacs-Frame mit dieser Funktion maximieren:
quelle
quelle
Ich bevorzuge Bryan Oakleys Einstellungen. Allerdings funktioniert die Höhe in meinem GNU Emacs 24.1.1 nicht richtig.
quelle