คำถามติดแท็ก window

ใน Emacs หน้าต่างเป็นส่วนหนึ่งของเฟรมโดยแสดงบัฟเฟอร์เดียว สำหรับคำถามเกี่ยวกับหน้าต่างระบบปฏิบัติการโปรดดูที่แท็ก "เฟรม"

13
วิธีสลับระหว่างหน้าต่างอย่างรวดเร็ว?
ฉันจะสลับระหว่างหน้าต่างอย่างรวดเร็วได้อย่างไร ฉันมักจะเปิดหน้าต่างหลายบานและจำเป็นต้องสลับระหว่างกัน ตอนนี้ฉันใช้C-x oเพื่อไปยังที่ที่ฉันต้องการ มีเวิร์กโฟลว์ที่มีประสิทธิภาพมากกว่านี้หรือไม่

2
ความแตกต่างระหว่างบัฟเฟอร์ไฟล์หน้าต่างและเฟรมคืออะไร
เมื่อโพสต์คำถามในเว็บไซต์นี้บางครั้งผู้คนพูดถึง"windows"เมื่อพวกเขาหมายถึง"เฟรม"และ"บัฟเฟอร์"หรือ"ไฟล์"เมื่อพวกเขาหมายถึง "หน้าต่าง" ดังนั้น: ถาม: อะไรคือความแตกต่างระหว่างบัฟเฟอร์ไฟล์หน้าต่างและเฟรม? (ฉันโพสต์คำถามนี้ในจิตวิญญาณของคำสั่งผสมคำถาม : เพื่อส่งเสริมการใช้คำที่ถูกต้อง)
28 buffers  window  frames  files 


6
สลับไปมาระหว่างเค้าโครงหน้าต่าง
เมื่อฉันกำหนดค่าเลย์เอาต์ที่กำหนดเองจากนั้นเพียงแค่ต้องดูชั่วคราวในไฟล์เดียวแบบเต็มหน้าจอและเมื่อฉันต้องการเลย์เอาต์นั้นกลับมา - ฉันต้องทำการรีโฟลด้วยตนเอง ฉันต้องการรหัสปลั๊กอิน / elisp เพื่อบันทึกเลย์เอาต์ของฉันและสามารถสลับไปมาระหว่างเลย์เอาต์ที่บันทึกไว้ได้ UPDATE ขอบคุณทุกคน. ข้อเสนอแนะabo-abo ที่จะใช้โหมดผู้ชนะเป็นสิ่งที่ดีจริงๆและฉันได้รับมันทำงานในเวลาศูนย์ wasamasaแนะนำปลั๊กอินที่ยอดเยี่ยมมากมายที่ฉันไม่เคยได้ยินและให้ข้อมูลวิธีใช้รีจิสเตอร์ Jordon Biondoอธิบายให้ฉันทราบถึงวิธีการใช้รีจิสเตอร์และสิ่งนี้เป็นสิ่งที่ฉันต้องการในวิธีที่ง่ายที่สุด ขอบคุณทุกคน.
24 window  package  frames 

1
การเลื่อนแบบซิงโครไนซ์ในสองหน้าต่าง
มีวิธีสะท้อนคำสั่งการนำทางในหน้าต่างปัจจุบันในหน้าต่างอื่นที่มองเห็นได้หรือไม่ ฉันมีไฟล์ LaTeX สองไฟล์ที่แสดงในหน้าต่างสองบานและต้องการเลื่อนดูในเวลาเดียวกันเพื่อดูภาพรวมของความแตกต่าง ขณะนี้ฉันใช้แมโครเพื่อเลื่อนแบบอัตโนมัติในบัฟเฟอร์หนึ่งเลื่อนไปที่หน้าต่างอื่นและเลื่อนแล้วเลื่อนกลับ Ediff มีวิธี inbuilt การทำเช่นนี้ในediff-scroll-verticallyผูกไว้กับvดังนั้นผมสงสัยว่าถ้า emacs แล้วได้หนึ่งสร้างขึ้นใน. ดีผมอยากโหมดย่อยที่นำทางกระจกหน้าต่างที่มองเห็นได้ทั้งหมด

2
แสดงรายการคำศัพท์ที่ด้านล่างของเฟรมหรือไม่
ฉันต้องการแสดงคำศัพท์ 3 รายการในบรรทัดแยกกันตามแนวนอนที่ด้านล่าง (แม้ว่าส่วนบนก็ใช้ได้เช่นกัน) ของ emacs ทุกเฟรมที่ฉันเปิด ฉันคิดว่า 6 วิธีในการทำเช่นนี้และพวกเขาทั้งหมดมีปัญหา: ความคิดแรกของฉันคือการเพิ่มบรรทัดลงในบรรทัดโหมดของฉัน แต่ AFAICT คุณไม่สามารถใช้อักขระบรรทัดใหม่ในบรรทัดโหมดได้เพียงแค่ได้รับการแปลงเป็น "^ J" ความคิดที่สองของฉันคือการมีบรรทัดที่ด้านบนของหน้าจอและใช้บรรทัดส่วนหัว แต่ไม่รองรับอักขระขึ้นบรรทัดใหม่ ฉันสามารถแสดงโอเวอร์เลย์ในช่วง 3 บรรทัดสุดท้ายของหน้าต่างได้ แต่การทำให้สิ่งนี้ดูแข็งแกร่ง - การเลื่อนจะต้องถูกกระตุ้นเมื่อจุดถึงการวางซ้อนมากกว่าจุดสิ้นสุดของหน้าต่างจริงและฉันต้องเปลี่ยนตำแหน่งใหม่ตลอดเวลา การซ้อนทับเนื่องจากการวางซ้อนอยู่ในพื้นที่ข้อความไม่ใช่พื้นที่หน้าต่าง ฉันสามารถลองทำ windows เฉพาะที่ด้านล่างของเฟรม ฉันได้ลองโค้ดนี้แล้ว แต่มันก็ไม่แข็งแรงเหมือนกันดูเหมือนว่ามันจะทำงานไม่ถูกต้องเมื่อเฟรมมีหน้าต่างที่แยกออกไปแล้วและฉันต้องรีบูต Cx, 1 ถึงเวอร์ชันลบที่กำหนดเองซึ่งไม่สนใจ หน้าต่างพิเศษของฉันและฉันแน่ใจว่ามีมุมอื่น ๆ นอกจากนี้เมื่อหน้าต่างความช่วยเหลือปรากฏขึ้นในขณะนี้หน้าต่างจะเปิดขึ้นในแนวตั้งเพราะคิดว่ามีการแบ่งตามแนวนอนอยู่แล้ว (ซึ่งในทางเทคนิคแล้วมี แต่จะแสดงหน้าต่างบรรทัดเดียวเท่านั้น) ฉันสามารถมีเฟรมเฉพาะสำหรับสิ่งนี้ได้ แต่จากนั้น config ของฉันจะไม่ทำงานในโหมดเทอร์มินัลและฉันต้องสคริปต์ตัวจัดการหน้าต่างของฉันเพื่อจัดการกับมันที่ด้านล่างของหน้าจอทำให้ไม่สามารถเลือกได้ ฯลฯ ฉันสามารถแทรกข้อความ 3 บรรทัดลงใน minibuffer โดยตรง ตอนนี้ฉันทำงานได้บางส่วนฉันสามารถเพิ่มรถมินิบัสเพื่อรองรับ 3 …

4
ซ่อนหน้าต่างการรวบรวม *
มันน่ารำคาญที่เห็นหน้าต่างการคอมไพล์ปรากฏขึ้นเมื่อมันสำเร็จ วิธีลบโดยอัตโนมัติ ฉันต้องการเห็นมันแม้ว่าจะไม่ประสบความสำเร็จ

4
วิธีการตั้งค่าหน้าต่างเริ่มต้นเมื่อเริ่มต้น?
ทุกครั้งที่ฉันเปิด Emacs ฉันมักจะตั้งค่า 3 windows โดยทำC-x 3( split-window-right) และจากนั้นC-x2( split-window-below) หลังจากนั้นฉันต้องสลับไปที่แต่ละหน้าต่างเพื่อเปิดไฟล์ที่ฉันต้องการแก้ไข ฉันจะตั้งสิ่งนี้ให้ทำโดยอัตโนมัติได้อย่างไร มีวิธีให้ Emacs กู้คืนการจัดหน้าจอเดียวกัน (windows และไฟล์) จากการใช้งานครั้งสุดท้ายหรือไม่?

1
ฉันจะบล็อกเฟรมไม่ให้แตกได้อย่างไร
ขณะนี้ฉันทำงานกับทับทิมและ rspec ฉันชอบความคิดที่ว่ามีเฟรมแยกต่างหากในจอภาพอื่นที่แสดงบัฟเฟอร์การคอมไพล์ การตั้งค่าปัจจุบันของฉันใช้เฟรม 'code' (ซึ่งฉันทำงานจริง) และเฟรม 'test-result' (ซึ่งฉันเห็นผลลัพธ์ rspec) ปัญหาคือว่าเมื่อฉันพยายามที่จะเปิดบางรวบรวมข้อผิดพลาดหรือแฟ้มใน 'การทดสอบผล' กรอบแยกหน้าต่างในที่กรอบ สิ่งที่ฉันอยากทำคือเปิดให้อยู่ในกรอบ 'code' ของฉัน ฉันใช้ตัวเลือกdisplay-buffer-reuse-framesนี้แล้ว ฉันพยายามตั้งค่าหน้าต่างผลลัพธ์การคอมไพล์dedicatedด้วย แต่เมื่อใดก็ตามที่ emacs พยายามเปิดหน้าต่างใหม่เฟรมใหม่จะถูกสร้างขึ้น (ซึ่งน่ากลัวเป็นพิเศษหากคุณใช้ Helm) มีวิธีง่ายๆในการบรรลุเป้าหมายนี้หรือไม่?
16 window  frames 

1
สลับการวางแนวการแบ่งหน้าต่างวิธีที่เร็วที่สุด
สมมติว่าคุณเปิดบัฟเฟอร์สองอันเช่นนี้: ------------------------------------ | | buffer 1 | buffer 2 | | | ------------------------------------ เป็นวิธีที่เร็วที่สุดในการสลับบัฟเฟอร์เพื่อให้คุณได้รับสิ่งนี้: ------------------------------------ buffer 1 | | ------------------------------------ buffer 2 | | ------------------------------------
16 buffers  window 

2
เมื่อใดที่ฉันควรใช้ with-eval-after-load ในไฟล์กำหนดค่าของฉัน
ฉันไปที่ไฟล์กำหนดค่าของฉันและต้องการล้างข้อมูล ความเข้าใจของฉันwith-eval-after-loadคือว่าร่างกายของมันจะได้รับการประเมินทันทีหลังจากโหลดแพ็คเกจที่เกี่ยวข้อง with-eval-after-loadในขณะที่การทำความสะอาดไฟล์การกำหนดค่าของฉันและแยกพวกเขามากขึ้นผมอยากจะใส่ทุกแพคเกจค่ากับ ทุกอย่างเป็นไปตามที่คาดไว้จนกว่าฉันจะปิดล้อมการกำหนดค่าสำหรับและhelmhelm-projectile นี่คือสิ่งที่ฉันมีอยู่ในใจ ( lisp / init-helm.el ): (with-eval-after-load 'helm (setq helm-mode-line-string "") (add-to-list 'helm-sources-using-default-as-input 'helm-source-man-pages) (define-key global-map (kbd "C-c m") 'helm-imenu) (define-key global-map (kbd "C-x b") 'helm-buffers-list)) (with-eval-after-load 'helm-command (global-set-key (kbd "M-x") 'helm-M-x)) (with-eval-after-load 'helm-projectile (helm-projectile-on)) หลังจากรีสตาร์ท Emacs ฉันได้รับปัญหาขนาดหน้าต่างนี้: นี่คือวิธีปรับขนาดหน้าต่างของฉัน: (set-frame-parameter nil 'fullscreen 'fullboth) ฉันเดาว่าฉันใช้ผิดwith-eval-after-loadวิธีหนึ่งจะทำให้การกำหนดค่า Emacs ของเขาถูกสุขลักษณะและทำให้แน่ใจได้ว่าไม่มีอะไรผิดพลาดไม่ว่าจะติดตั้งแพ็คเกจใด

3
มีวิธีการเปลี่ยนสีของหน้าต่างที่ใช้งานอยู่หรือไม่?
เพื่อแยกความแตกต่างระหว่างหน้าต่างที่โฟกัสกับส่วนที่เหลือที่ไม่ใช่ฉันอยากจะเปลี่ยนสีของหน้าต่างนี้ การค้นพบการปรับแต่งด้วยคำสำคัญที่ขอบฉันพบเฉพาะวิธีการเปลี่ยนสี bg ของมันโดยไม่สามารถตั้งค่าสีที่แตกต่างสำหรับคนที่ใช้งานและไม่ได้ใช้งาน เป็นไปได้หรือไม่ ขอบคุณ.

2
ฉันจะป้องกันคำสั่งจากการใช้หน้าต่างเฉพาะได้อย่างไร
โดยทั่วไปฉันมีกรอบแยกออกเป็นสี่หน้าต่างโดยที่สองที่ด้านล่างอุทิศให้กับฉัน*compilation*และ*grep*บัฟเฟอร์ เมื่อเรียกดูข้อผิดพลาดในการรวบรวมnext-errorในที่สุดจะแทนที่*grep*บัฟเฟอร์ของฉันด้วยหนึ่งในไฟล์เป้าหมาย ฉันnext-errorจะกำหนดค่าให้ไม่ใช้หน้าต่างที่มี*grep*บัฟเฟอร์ได้อย่างไร กรณีการใช้งานเฉพาะของฉันคือnext-errorคำสั่ง แต่ยินดีต้อนรับคำตอบทั่วไปเพิ่มเติมเช่นกัน
14 buffers  window 

1
เปลี่ยนสีไฮไลต์เมื่อหน้าต่างไม่ได้โฟกัส?
ฉันใช้โหมด hl เป็นโหมดรองสำหรับคล่องแคล่ว ฉันจะทำให้สีไฮไลต์เปลี่ยนบรรทัดได้อย่างไร (เช่นสีเทา) เมื่อหน้าต่างคล่องแคล่วไม่ใช่หน้าต่างปัจจุบันจากนั้นกลับสู่สีไฮไลต์เริ่มต้นเมื่อหน้าต่างคล่องแคล่วกลายเป็นหน้าต่างปัจจุบันอีกครั้ง

2
“ ป๊อป” หน้าต่างเข้าไปในกรอบ
บ่อยครั้งที่ฉันหน้าต่างของฉันถูกแบ่งโดยอัตโนมัติจนกว่าฉันจะตัดสินใจเองว่าเฟรมปัจจุบันไม่มีอสังหาริมทรัพย์เพียงพอสำหรับพวกเขาทั้งหมด เมื่อสิ่งนี้เกิดขึ้นฉันจะลบหน้าต่างด้วยตนเองสร้างเฟรมและสลับไปที่หน้าต่างที่ถูกลบนั้น ฉันจะเขียนฟังก์ชัน elisp ที่ทำสิ่งนี้ได้อย่างไร ฉันเหนื่อย: (defun pop-window-into-frame () (interactive) (delete-window) (make-frame-command) (switch-to-prev-buffer)) แต่ด้วยเหตุผลบางอย่างนี้ไม่ได้ทำในสิ่งที่ฉันคิดว่ามันควร
13 window  frames 

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