Frage

Ich verwende maxframe.el meinen Emacs Rahmen zu maximieren.

Es funktioniert auf alle drei großen Plattformen, außer auf meinem Dual-Head-Mac-Setup (Macbook Pro 15-Zoll-Laptop mit 23-Zoll-Monitor).

Wenn Sie ein Emacs Rahmen maximiert wird, dehnt sich der Rahmen die Breite von beide Monitore und die Höhe des größeren Monitor zu füllen.

Natürlich würde ich den Rahmen wie zu maximieren nur zum Füllen des Monitors auf es ist. Wie kann ich erkennen, die Beschlüsse der beiden einzelnen Monitore mit elisp?

Danke, Jacob

EDIT: Wie Denis weist darauf hin, das Setzen von mf-max-width ist eine angemessene Abhilfe. Aber (wie ich erwähnt sollte) Ich hatte gehofft, eine Lösung, die auf beiden Monitoren und mit jeder Auflösung arbeitet. Vielleicht etwas OSX spezifisch im Stil des Windows-spezifischen w32-send-sys-Befehls.

War es hilfreich?

Lösung

Ich scannte schnell die Referenz, die Sie zur Verfügung gestellt, um maxframe.el und Ich glaube nicht , dass Sie die gleiche Technik verwenden, die ich verwende. Ist der folgende Code-Schnipsel geholfen?


(defun toggle-fullscreen ()
  "toggles whether the currently selected frame consumes the entire display or is decorated with a window border"
  (interactive)
  (let ((f (selected-frame)))
    (modify-frame-parameters f `((fullscreen . ,(if (eq nil (frame-parameter f 'fullscreen)) 'fullboth nil))))))

Andere Tipps

Ist die Anpassung `mf-max-width‘ funktioniert? Seine Dokumentation:

"*The maximum display width to support.  This helps better support the true
nature of display-pixel-width.  Since multiple monitors will result in a
very large display pixel width, this value is used to set the stop point for
maximizing the frame.  This could also be used to set a fixed frame size
without going over the display dimensions."

Diese Art der Sache ist die Aufgabe Ihres Window-Manager, nicht der Job von Emacs. (Zum Beispiel xmonad Griffe Vollbild-Emacs gut.)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top