تكبير إطار Emacs إلى شاشة واحدة فقط باستخدام elisp

StackOverflow https://stackoverflow.com/questions/93415

  •  01-07-2019
  •  | 
  •  

سؤال

أنا أستعمل maxframe.el لتعظيم إطارات Emacs الخاصة بي.

إنه يعمل بشكل رائع على جميع الأنظمة الأساسية الثلاثة الرئيسية، باستثناء إعداد Mac ثنائي الرأس (كمبيوتر محمول Macbook Pro مقاس 15 بوصة مع شاشة مقاس 23 بوصة).

عند تكبير إطار Emacs، يتوسع الإطار ليملأ عرضه كلاهما الشاشات وارتفاع الشاشة الأكبر.

من الواضح أنني أرغب في تعظيم الإطار لملء الشاشة الموجودة عليه فقط.كيف يمكنني اكتشاف دقة الشاشتين الفرديتين باستخدام elisp؟

شكرا ، يعقوب

يحرر:وكما يشير دينيس، فإن ضبط mf-max-width هو حل معقول.ولكن (كما كان يجب أن أذكر) كنت أتمنى إيجاد حل يعمل على كلا الشاشتين وبأي دقة.ربما يكون هناك شيء خاص بـ OSX بأسلوب الأمر w32-send-sys-command الخاص بنظام التشغيل Windows.

هل كانت مفيدة؟

المحلول

لقد قمت بمسح المرجع الذي قدمته بسرعة maxframe.el و لا أعتقد أنك تستخدم نفس التقنية التي أستخدمها.هل يساعدك مقتطف التعليمات البرمجية التالي؟


(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))))))

نصائح أخرى

هل يعمل تخصيص "mf-max-width"؟توثيقها:

"*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."

هذا النوع من الأشياء هو وظيفة مدير النوافذ لديك، وليس وظيفة إيماكس.(على سبيل المثال، يتعامل Xmonad مع ملفات emac بملء الشاشة بشكل جيد.)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top