มีวิธีเพิ่มหน้าต่างของฉันให้ใหญ่ที่สุดเมื่อเปิดเครื่องไหม?
ขณะนี้ฉันกดControl+  + Upบนแป้นพิมพ์ของฉัน แต่มันก็น่ารำคาญมากที่จะทำเช่นนั้นทุกครั้ง
+ Upบนแป้นพิมพ์ของฉัน แต่มันก็น่ารำคาญมากที่จะทำเช่นนั้นทุกครั้ง
ฉันใช้ Emacs 24.4 บน Ubuntu 12.04
<kbd>![Windows Key][oldwinlogo]</kbd>ใดไม่ได้ผลสำหรับฉัน :-(
                มีวิธีเพิ่มหน้าต่างของฉันให้ใหญ่ที่สุดเมื่อเปิดเครื่องไหม?
ขณะนี้ฉันกดControl+  + Upบนแป้นพิมพ์ของฉัน แต่มันก็น่ารำคาญมากที่จะทำเช่นนั้นทุกครั้ง
+ Upบนแป้นพิมพ์ของฉัน แต่มันก็น่ารำคาญมากที่จะทำเช่นนั้นทุกครั้ง
ฉันใช้ Emacs 24.4 บน Ubuntu 12.04
<kbd>![Windows Key][oldwinlogo]</kbd>ใดไม่ได้ผลสำหรับฉัน :-(
                คำตอบ:
ฉันมีวิธีอื่นซึ่งฉันได้ทดสอบด้วย Emacs 24.3 และ 24.4 รวมถึงทั้งบน Windows และ GNU / Linux ฉันวางสิ่งต่อไปนี้ในไฟล์ init ของฉัน :
(add-to-list 'default-frame-alist '(fullscreen . maximized))
ฉันเชื่อว่าสิ่งนี้ได้รับการแก้ไขเล็กน้อยจากคำตอบ StackOverflow ที่ฉันพบเมื่อไม่นานมานี้ แต่ฉันไม่สามารถหามันได้อีกในขณะนี้
แก้ไข:โบนัสอีกวิธีหนึ่งของวิธีนี้ก็คือมันใช้กับลูกค้าใหม่ที่เชื่อมต่อกับเซิร์ฟเวอร์ Emacs ของคุณ (เช่นemacsclient -c)
emacsclientแต่มีบางเฟรมที่เริ่มขยายให้ใหญ่สุดจะป้องกันการใช้อย่างถูกต้องเช่นแผงควบคุม ediffมีวิธีแก้ปัญหานี้หรือไม่
                    ปรับ...-frame-alistในไฟล์ init ของคุณเพื่อบอก Emacs วิธีเพิ่มเฟรมให้ใหญ่สุด นอกจากนี้คุณยังมีหลายตัวเลือกสำหรับวิธีเพิ่มขนาด
alist ตัวเลือกคุณมีสอง...-frame-alistทางเลือก:
default-frame-alist (เหมือนในคำตอบ @Scott Weldon)initial-frame-alist  หากคุณใช้default-frame-alistมันจะเพิ่มเฟรมทั้งหมด : ทั้งเฟรมแรกและเฟรมอื่น ๆ ที่คุณสร้าง นั่นอาจไม่ใช่สิ่งที่คุณต้องการ (หรืออาจเป็น: ฉันจะเป็นใครในการตัดสิน?)
หากคุณใช้initial-frame-alistมันจะเพิ่มเฉพาะเฟรมที่ Emacs สร้างเมื่อเริ่มต้น แต่จะไม่แตะเฟรมที่ตามมาที่คุณสร้าง
สำหรับตัวเลือกการขยายใหญ่สุดของคุณให้ดูที่โหนดของคู่มือนี้สำหรับรายละเอียด เวอร์ชันย่อคือคุณสามารถตั้งค่าfullscreenพารามิเตอร์เป็น:
fullwidth (ทำให้กรอบกว้างเท่าที่เป็นไปได้อย่าแตะต้องแนวตั้ง)fullheight (ทำให้เฟรมสูงที่สุดเท่าที่เป็นไปได้อย่าแตะต้องแนวนอน)fullboth (ตั้งค่าความสูงและความกว้างเป็นขนาดของหน้าจอ)maximized (ทำให้ดีขยายใหญ่สุด)ความแตกต่างระหว่างfullbothและmaximizedคือคุณสามารถปรับขนาดอดีตด้วยเมาส์ในขณะที่หลังคุณไม่สามารถปรับขนาด
ตัวอย่างเช่นบรรทัดเหล่านี้จะ 1) สร้างเฟรมเริ่มต้นที่ขยายให้ใหญ่สุดและ 2) สร้างเฟรมแบบเต็มความสูง (แต่ไม่ใช่แบบเต็มความกว้าง) ในทุกเฟรมที่ตามมา:
(add-to-list 'initial-frame-alist '(fullscreen . maximized))
(add-to-list 'default-frame-alist '(fullscreen . fullheight))
initial-frame-alistมีประโยชน์มากกว่าdefault-frame-alistเมื่อใช้เครื่องมือเช่น ediff
                    บน Emacs 24.4 (toggle-frame-maximized)สลับสถานะที่ขยายใหญ่สุดของเฟรมปัจจุบัน
ดูเพิ่มเติมได้ที่Maximize Emacs เมื่อมีคำถามเกี่ยวกับ stackoverflow และหน้าเต็มหน้าจอใน EmacsWiki
@ คำตอบของคอนสแตนตินนั้นครอบคลุมถึงวิธีการนี้สามารถทำได้โดยการแก้ไขไฟล์ init ของคุณ (ถ้าคุณใช้ Emacs 24.4)
หากคุณเริ่ม Emacs จากบรรทัดคำสั่งจากเส้นประหรือจากตัวเรียกใช้งานเช่นSynapseหรือkrunnerคุณสามารถระบุ-mmตัวเลือก (ย่อมาจาก--maximized) เพื่อให้ได้ผลลัพธ์เดียวกัน:
emacs -mm-mmตัวเลือกเป็นครั้งแรกที่นำมาใช้ใน Emacs 23.2เพื่อแก้ปัญหานี้ไม่ได้ จำกัด อยู่ที่การเปิดตัวล่าสุดที่มีเสถียรภาพ
สิ่งที่แตกต่างจากวิธีการแก้ปัญหานี้จากคำแนะนำอื่น ๆ ที่โพสต์ไว้ที่นี่ (ทั้งหมดนั้นยอดเยี่ยม) คือมันช่วยให้คุณตัดสินใจได้เป็นกรณี ๆ ไปไม่ว่าคุณต้องการให้เฟรม Emacs ขยายใหญ่สุดเมื่อเริ่มต้นหรือไม่
หากคุณต้องการวิธีการแก้ปัญหาที่ถาวรมากขึ้นคุณสามารถตั้งค่าaliasสำหรับคำสั่งที่แสดงด้านบนโดยเพิ่มสิ่งต่อไปนี้ใน.bashrc:
alias emacs='emacs -mm'emacs -fsเริ่มต้น Emacs ขยายให้เต็มหน้าจอหรือขยายให้ใหญ่สุดสูงสุด
                    ในการเริ่มต้นให้ Emacs ขยายใหญ่สุดให้เพิ่มไฟล์ init ของคุณ:
;; Start maximised (cross-platf)
(add-hook 'window-setup-hook 'toggle-frame-maximized t)
ในกรณีที่คุณต้องการจะแสดงแบบเต็มหน้าจอหรืออย่างที่พวกเขาพูดตอนนี้โหมดที่ปราศจากสิ่งรบกวน :
;; Start fullscreen (cross-platf)
(add-hook 'window-setup-hook 'toggle-frame-fullscreen t)
หมายเหตุ : สิ่งนี้ใช้ได้ใน Windows เช่นกัน
ฉันใช้สิ่งต่อไปนี้:
(when (eq system-type 'gnu/linux)
  (defun x11-maximize-frame ()
    "Maximize the current frame (to full screen)"
    (interactive)
    (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 '(2 "_NET_WM_STATE_MAXIMIZED_HORZ" 0))
    (x-send-client-message nil 0 nil "_NET_WM_STATE" 32 '(2 "_NET_WM_STATE_MAXIMIZED_VERT" 0)))
  (run-with-idle-timer 0.01 nil 'x11-maximize-frame)
  )
(when (eq system-type 'windows-nt)
  (w32-send-sys-command 61488)
)