kakoune: use different cursor color in insert mode

This commit is contained in:
Leonardo Eugênio 2026-04-07 11:29:39 -03:00
parent c4c900a48a
commit 846c58788e
2 changed files with 17 additions and 1 deletions

View file

@ -14,6 +14,9 @@ let
orange = color.normal.orange; orange = color.normal.orange;
brown = color.normal.brown; brown = color.normal.brown;
}; };
cursorNormalSpec = "${colors.accent_fg},${colors.accent_color}+fg";
cursorInsertSpec = "black,bright-green+b";
in in
with colors; with colors;
'' ''
@ -49,8 +52,11 @@ with colors;
# builtin faces # builtin faces
face global Default default,default face global Default default,default
face global PrimaryCursor ${accent_fg},${accent_color}+fg face global PrimaryCursor ${cursorNormalSpec}
face global PrimaryCursorEol PrimaryCursor face global PrimaryCursorEol PrimaryCursor
declare-option str cursor_normal_face '${cursorNormalSpec}'
declare-option str cursor_insert_face '${cursorInsertSpec}'
face global PrimarySelection default,${bg_light}+f face global PrimarySelection default,${bg_light}+f
face global SecondaryCursor default,default+rfg face global SecondaryCursor default,default+rfg

View file

@ -2,6 +2,16 @@ set global idle_timeout 500
enable-auto-pairs enable-auto-pairs
hook -group tell-mode global ModeChange push:.*:insert %{
set-face window PrimaryCursor %opt{cursor_insert_face}
set-face window PrimaryCursorEol %opt{cursor_insert_face}
}
hook -group tell-mode global ModeChange pop:insert:.* %{
set-face window PrimaryCursor %opt{cursor_normal_face}
set-face window PrimaryCursorEol %opt{cursor_normal_face}
}
hook global NormalIdle .* %{ evaluate-commands %sh{ hook global NormalIdle .* %{ evaluate-commands %sh{
hex_with_size() { hex_with_size() {
for i in 3 4 6 8; do for i in 3 4 6 8; do