ZIm/assets
Gaku Kanematsu c15382c4d8
vim: Add cursor shape settings for each vim mode (#28636)
Closes #4495

Release Notes:

- vim: add cursor shape settings for each vim mode

---

Add cursor shape settings for each vim mode to enable users to specify
them.

Example of `settings.json`:

```json
{
  "vim_mode": true,
  "vim": {
    "cursor_shape": {
      "normal": "hollow",
      "insert": "bar",
      "replace": "block",
      "visual": "underline"
    }
  }
}
```

After this change is applied,

- The cursor shape specified by the user for each mode is used.
- In insert mode, the `vim > cursor_shape > insert` setting takes
precedence over the primary `cursor_shape` setting.
- If `vim > cursor_shape > insert` is not set, the primary
`cursor_shape` will be used in insert mode.
- The cursor shape will remain unchanged before and after this update
when the user does not set the `vim > cursor_shape` setting.

Video:


[screen-record.webm](https://github.com/user-attachments/assets/b87461a1-6b3a-4a77-a607-a340f106def5)
2025-04-21 18:42:04 -06:00
..
fonts Fix font selection on macOS (#13615) 2024-06-27 17:02:45 -06:00
icons agent: Refine language model selector (#28597) 2025-04-11 23:02:50 +00:00
images add ui::Vector and separate images from icons (#17815) 2024-09-13 17:44:16 -04:00
keymaps Fix ctrl-c in vim normal mode (#29167) 2025-04-21 11:19:44 -06:00
prompts Add ability to attach rules as context (#29109) 2025-04-21 20:16:51 +00:00
settings vim: Add cursor shape settings for each vim mode (#28636) 2025-04-21 18:42:04 -06:00
sounds Update collaboration sounds, add sounds to screensharing 2023-07-04 16:18:42 -04:00
themes theme: Make Gruvbox terminal ANSI magenta more vibrant (#27166) 2025-04-07 18:25:24 +00:00