Eli Zaretskii <eliz@gnu.org> writes:
Let's please discuss your ideas before you implement them, to make
sure you don't work on some ideas that we might object to.
Sure.
The code needs to run each time the cursor moves, (is there
a function/code that do this?) and each time user changes window
(because cursor color is not buffer-local).
I think that using variable watchers would be better and keep
this defcustom (it will only use variables):
(defcustom cursor-indicators '((overwrite-mode . "red") (buffer-read-only "green" hollow) (current-input-method . "blue")) [...]