(global-set-key [?\C-c ?v ?i] 'vm-visit-imap-folder)
(global-set-key [?\C-c ?v ?m] 'vm-visit-folder)
(global-set-key [?\C-c ?v ?v] 'mdw-auto-revert)
+ (global-set-key [?\C-c ?w ?c] 'mdw-set-frame-colour)
(global-set-key [?\C-c ?w ?d] 'mdw-divvy-window)
(global-set-key [?\C-c ?w ?h] 'windmove-left)
(global-set-key [?\C-c ?w ?j] 'windmove-down)
This is sadly necessary because Emacs 26 is broken in this regard.")
+(defvar mdw-frame-colour-alist
+ '((black . ("#000000" . "#ffffff"))
+ (red . ("#2a0000" . "#ffffff"))
+ (green . ("#002a00" . "#ffffff"))
+ (blue . ("#00002a" . "#ffffff")))
+ "*Alist mapping symbol names to (FOREGROUND . BACKGROUND) colour pairs.")
+
+(defun mdw-set-frame-colour (colour &optional frame)
+ (interactive "xColour name or (FOREGROUND . BACKGROUND) pair:
+")
+ (when (and colour (symbolp colour))
+ (let ((entry (assq colour mdw-frame-colour-alist)))
+ (unless entry (error "Unknown colour `%s'" colour))
+ (setf colour (cdr entry))))
+ (set-frame-parameter frame 'background-color (car colour))
+ (set-frame-parameter frame 'foreground-color (cdr colour)))
+
;; Don't raise windows unless I say so.
(defvar mdw-inhibit-raise-frame nil