เนื่องจากคุณต้องการ "เพื่อแยกความแตกต่างระหว่างหน้าต่างโฟกัส" ให้ดีขึ้นคุณสามารถใช้วิธีอื่นแทนการเปลี่ยนสีขอบของหน้าต่างที่ใช้งานอยู่
ฉันรวมสามวิธีเพื่อแยกความแตกต่างระหว่างหน้าต่างที่ใช้งานและไม่ใช้งานได้ดีขึ้น
- ใช้สีของโหมดบรรทัดต่างกันสำหรับหน้าต่างที่แอ็คทีฟและไม่ทำงาน
 
- เน้นบรรทัดปัจจุบันที่มีจุดอยู่ในหน้าต่างที่ใช้งานอยู่
 
- ใช้สีพื้นหลังที่แตกต่างกันสำหรับหน้าต่างที่ทำงานและไม่ทำงาน
 
โปรดทราบว่าสีที่เลือกทั้งหมดที่กล่าวถึงข้างต้นควรทำงานได้ดีกับธีม Emacs ของคุณ
นี่คือทั้งสามวิธี:
ใช้สีโหมดบรรทัดที่แตกต่างกันสำหรับหน้าต่างที่ทำงานและไม่ทำงาน:
(custom-set-faces
 '(mode-line ((t (:background "dim gray" :foreground "white"))))
 '(mode-line-inactive ((t (:background nil)))))
 
เน้นบรรทัดปัจจุบันที่มีจุดอยู่ในหน้าต่างที่ใช้งานอยู่:
(global-hl-line-mode 1)
;; underline the current line
(set-face-attribute hl-line-face nil :underline t)
 
ใช้สีพื้นหลังที่แตกต่างกันสำหรับหน้าต่างที่ทำงานและไม่ทำงาน:
(defun highlight-selected-window ()
  "Highlight selected window with a different background color."
  (walk-windows (lambda (w)
                  (unless (eq w (selected-window))
                    (with-current-buffer (window-buffer w)
                      (buffer-face-set '(:background "#111"))))))
  (buffer-face-set 'default))
(add-hook 'buffer-list-update-hook 'highlight-selected-window)
 
คุณสามารถเปลี่ยนสีในตัวอย่างโค้ดเพื่อให้ทำงานได้ดีกับธีม Emacs ของคุณ
นี่คือภาพหน้าจอสุดท้าย:

และมีฟังก์ชั่นอื่นที่คุณสามารถใช้เพื่อแฟลชหน้าต่างที่ใช้งานอยู่:
(global-set-key (kbd "<f12>") 'flash-active-buffer)
(make-face 'flash-active-buffer-face)
(set-face-attribute 'flash-active-buffer-face nil
                    :background "blue" :foreground nil)
(defun flash-active-buffer ()
  (interactive)
  (run-at-time "100 millisec" nil
               (lambda (remap-cookie)
                 (face-remap-remove-relative remap-cookie))
               (face-remap-add-relative 'default 'flash-active-buffer-face)))
คุณสามารถเปลี่ยนการเชื่อมโยงคีย์ในโค้ดขนาดเล็กเมื่อคุณต้องการแสดงหน้าต่างที่ใช้งานอยู่กดปุ่มหน้าต่างที่ใช้งานจะเป็นสีฟ้าหลังจากที่คุณเลื่อนคุณชี้สีจะหายไป
               
              
M-x customize-face mode-line-inactiveความพยายาม