เริ่ม emacs ด้วยการกำหนดค่าหน้าต่างบางอย่าง


3

ฉันต้องการเริ่มต้น emacs ด้วยการกำหนดค่าหน้าต่างเริ่มต้น การกำหนดค่า 'วานิลลา' เพิ่งเปิดหน้าต่างเดียว หลังจากติดตั้ง 'sr-speedbar' และเพิ่ม(sr-speedbar-open)ลงในไฟล์ init ของฉัน emacs จะเริ่มสองหน้าต่างแยกในแนวนอนด้านขวาที่มีสปีดบาร์ ฉันสามารถแยกหน้าต่าง Speedbar M-x buffer-menuในแนวตั้งและเปิดเมนูบัฟเฟอร์ในหน้าต่างด้านล่างด้วย หน้าจอของฉันตอนนี้ดูเหมือนว่า:

--------
|    |a|
|    |-|
|    |b|
--------

โดยที่ 'a' คือ speedbar และ 'b' เป็นเมนูบัฟเฟอร์ ฉันจะรับการกำหนดค่านี้เมื่อเริ่มต้นได้อย่างไร ฉันได้ลองแล้ว:

  1. (desktop-save-mode 1) ดูเหมือนจะไม่มีผลกับการกำหนดค่าหน้าต่าง
  2. เวิร์กกรุ๊ป มีปัญหาบางอย่างในการแยกหน้าต่างสปีดบาร์ มันเพียงแค่ให้ข้อผิดพลาดเมื่อโหลด หากฉันปิดสปีดบาร์ก็ยังคงไม่ทำงาน เมนูบัฟเฟอร์ไม่โหลดเมื่อฉันรีสตาร์ท (ตำแหน่งหน้าต่างถูกบันทึกไว้อย่างถูกต้อง)
  3. ครึ่งหนึ่งของสิ่งที่พบที่นี่ เช่นเดียวกับใน # 2 ไม่มีแพ็คเกจใดโหลดเมนูบัฟเฟอร์เมื่อเริ่มต้น

สมมติว่าจุดเริ่มต้นในหน้าต่างด้านซ้ายคุณสามารถลองเพิ่ม(other-window) (buffer-menu) (other-window)ไฟล์ init ของคุณ ที่ควรเลื่อนตำแหน่งไปที่หน้าต่างสปีดบาร์แยกสำหรับเมนูบัฟเฟอร์ (การเรียกใช้ฟังก์ชันที่สองจะเหมือนกับสิ่งที่เกิดขึ้นเมื่อคุณM-x buffer-menu) แล้วเลื่อนจุดกลับไปที่หน้าต่างขนาดใหญ่ด้านซ้าย ปรับแต่งเพื่อลิ้มรส (ตัวอย่างเช่น OTHER-WINDOW สามารถรับอาร์กิวเมนต์ที่ระบุจำนวนหน้าต่างที่จะวนไปมาจากหน้าต่างปัจจุบัน) แต่อาจมีบางอย่างที่สามารถทำให้ทำงานได้
Aaron Miller

หากมีจำนวนหนึ่งของการซ้อมรบที่คุณมักจะทำเมื่อเปิด Emacs เพื่อสร้างรูปแบบครั้งแรกของคุณแล้วคุณสามารถใช้บางอย่างเช่นนี้จะทำให้กระบวนการ: (add-hook 'emacs-startup-hook (lambda () (...user2407038-opening-sequence...one...)(...user2407038-opening-sequence...two...) (...user2407038-opening-sequence...three...) )) หมายเหตุ: desktop.elใช้after-init-hookและemacs-startup-hookวิ่งตามมาafter-init-hookกับ หากคุณใช้desktop-save-modeคุณอาจต้องปรับลำดับการเริ่มต้นของคุณตามลำดับ
กฎหมาย

คำตอบ:


1
  1. ด้วยภาพรวมของการพัฒนา GNU Emacs และในเร็ว ๆ นี้เพื่อจะได้รับการปล่อยตัว Emacs 24.4, desktop.el ไม่ เรียกคืนกรอบหน้าต่างและการกำหนดค่า มันไม่สมบูรณ์แบบ แต่มันเกี่ยวกับดีเท่าที่จะเป็นไปได้เนื่องจากบางสถานะบัฟเฟอร์เป็นแบบไดนามิก ฯลฯ ฉันขอแนะนำให้คุณเริ่มต้นด้วยการลองถ้าคุณทำได้

  2. นอกเหนือจากนั้นสิ่งใดก็ตามที่คุณทำตามปกติ (แบบโต้ตอบหรือตามรหัสชุด) เพื่อให้ Emacs ของคุณอยู่ในสถานะที่กำหนดสามารถทำส่วนใหญ่ในไฟล์ init ของคุณ ดังนั้นการเริ่มต้น Emacs โดยการโหลดไฟล์ init ของคุณควรจะสามารถกู้คืนสิ่งที่สำคัญสำหรับคุณได้ ใช่มันอาจซับซ้อนที่จะทำซ้ำได้มากเท่าที่คุณต้องการ แต่ไม่มีสิ่งกีดขวางโดยธรรมชาติเกินกว่าความจริงที่ว่าเวลาผ่านไปและโลกเปลี่ยนแปลง: วันนี้ไม่ใช่วันพรุ่งนี้แน่นอน


ฉันจะลอง # 1 สำหรับ # 2 ฉันเข้าใจว่าฉันสามารถเขียนโค้ดได้ด้วยตัวเอง แต่นั่นต้องใช้การเรียนรู้ที่น่าทึ่ง! ฉันไม่คิดว่าฉันมีเวลาว่างมากขนาดนั้น
user2407038

ฉันเห็นด้วย: # 1 คือคำตอบสมมติว่าคุณสามารถระงับและใช้ภาพรวม dev
ดึง
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.