Como desea "Para distinguir mejor entre la ventana enfocada", puede usar otras formas de hacerlo en lugar de simplemente cambiar el color marginal de la ventana activa.
Combino tres formas de distinguir mejor entre ventanas activas e inactivas.
- Use diferentes colores de línea de modo para las ventanas activas e inactivas.
- Resalte la línea actual donde está el punto en la ventana activa.
- Use diferentes colores de fondo para las ventanas activas e inactivas.
Tenga en cuenta que todos los colores elegidos mencionados anteriormente deberían funcionar bien con su tema Emacs.
Aquí están las tres formas:
Use diferentes colores de línea de modo para las ventanas activas e inactivas:
(custom-set-faces
'(mode-line ((t (:background "dim gray" :foreground "white"))))
'(mode-line-inactive ((t (:background nil)))))
Resalte la línea actual donde está el punto en la ventana activa:
(global-hl-line-mode 1)
;; underline the current line
(set-face-attribute hl-line-face nil :underline t)
Use diferentes colores de fondo para las ventanas activas e inactivas:
(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)
Puede cambiar los colores en los fragmentos de código para que funcionen bien con su tema de Emacs.
Esta es la captura de pantalla final:
Y hay otra función que puede usar manualmente para mostrar la ventana activa:
(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)))
Puede cambiar la combinación de teclas en el fragmento de código, cuando desee mostrar la ventana activa, presione la tecla, la ventana activa será azul, después de mover su punto, el color desaparecerá.
M-x customize-face mode-line-inactive
.