Visual cue to distinguish modes
See original GitHub issueIssue Description
In vanilla Kakoune and also in Dance I tend to mix up which mode I’m in. I know the status bar shows me “Normal” or “Insert”, but it is usually far away from the cursor, where my eyes are, and I have to search for the text between all the other information VSCode shows in the status bar.
I love how in Vim you can spot the difference just by looking at the cursor: a block for normal mode, and a line for insert mode. However, this is not an option for Dance, because of the (very well founded!) choice to support zero width selections.
I was thinking about other ways to visually distinguish normal mode and insert mode. Till now, I’ve come up with two ideas:
- Change the way the current line is highlighted:
- while in insert mode highlight it:
"editor.renderLineHighlight": "line"
- while in normal mode remove the highlighting:
"editor.renderLineHighlight": "none"
- while in insert mode highlight it:
- Change the color of the status bar (don’t know if this is easily doable).
What do you think of these options?
Issue Analytics
- State:
- Created 3 years ago
- Comments:22 (9 by maintainers)
Top Results From Across the Web
Media multitasking: How visual cues affect switching behavior
A first study explores how differences in central versus peripheral vision might cause certain cues to encourage switching towards, or discourage switching away ......
Read more >Dynamic Visual Cues for Differentiating Mirror and Glass
These results suggest that the visual system relies on dynamic cues that indicate the difference between mirror and glass.
Read more >Role of visual and non-visual cues in constructing a rotation ...
Sunkara et al. devised an experiment that can help distinguish the effects of visual cues from copies of neural signals sent to the...
Read more >Impact of visual cues on directional benefit and preference
Specifically, the study tested the hypotheses that (1) the provision of visual cues would reduce the preference for DIR processing (re: omnidirectional [OMNI] ......
Read more >Using Cues to Enhance Receptive Communication | Nevada ...
Visual Cues. Visual cues use color, contrast, lighting, spacing, and arrangement to make an object more visible to the child. The child's vision ......
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Note:
lineHighlight
is ignored now, anddecorations.backgroundColor
should be used instead (see https://github.com/71/dance/issues/204#issuecomment-934222172 for an example).About using a block character – why not, but I want this behind an optional preference, and this isn’t high priority for me (but I’ll try to accept a PR that implements it if you want to submit one).
It will definitely require some changes in the existing code, but something nice about this is that this is the way Kakoune originally works, so this option will increase compatibility with Kakoune, and any of the choices we make regarding its implementation can be made by looking at the way Kakoune does it.
Regarding the line highlight – I’ve been using the current config for a few days now as a long time Vim user (so I’m used to looking at the cursor to find out if I’m in normal or insert), and I no longer confuse the two modes. I do understand your preference, and suggest putting this behind a user preference. How about adding
dance.{normal,insert}Mode.lineHighlight
which can befalse
, an hex color, or a theme color name?