Files
zed/crates/vim/test_data
Hansanddino 8cd3bd90aa vim: Add use_match_quotes setting for % motion, default is true (#42615)
Add a `match_quotes` parameter to the `vim::Matching` action that
controls whether the `%` motion should treat quote characters (', ", `)
as matching pairs.

In Neovim, `%` only matches bracket pairs (([{}])), not quotes. Zed's
existing behavior includes quote matching, which some users prefer. To
preserve backwards compatibility while allowing users to opt into
Neovim's behavior, this PR:

1. Adds an optional `match_quotes` boolean parameter to the
   `vim::Matching` action
2. Updates the default vim keymap to use ["vim::Matching", {
   "match_quotes": true }], preserving Zed's current behavior
3. Users who prefer Neovim's behavior can rebind `%` in their keymap:

```
{
    "context": "VimControl && !menu",
    "bindings": {
        "%": ["vim::Matching", { "match_quotes": false }]
    }
}
```

When `match_quotes` is `false`, the `%` motion will skip over quote
characters and only match brackets/parentheses, matching Neovim's
default behavior.

Release Notes:

- vim: Added match_quotes parameter to the vim::Matching action to control
whether % matches quote characters

---------

Co-authored-by: dino <dinojoaocosta@gmail.com>
2026-01-09 18:04:44 +00:00
..
2024-06-14 10:16:59 -06:00
2024-05-11 14:04:05 -04:00
2024-05-09 21:18:56 -06:00
2024-05-09 21:18:56 -06:00
2023-09-12 09:56:23 -06:00
2024-01-21 22:00:35 -07:00
2023-09-20 20:44:41 -06:00
2025-04-16 17:24:24 +00:00
2023-09-27 23:09:09 -06:00
2024-05-09 21:18:56 -06:00
2023-09-12 09:56:23 -06:00
2023-04-20 15:25:11 -06:00
2024-05-11 14:04:05 -04:00
2024-05-09 21:18:56 -06:00
2024-09-20 13:02:39 -06:00
2024-06-14 10:16:59 -06:00
2023-09-27 19:49:31 -06:00
2023-10-09 21:48:50 -06:00
2024-01-21 22:00:35 -07:00
2024-06-14 10:16:59 -06:00
2024-05-11 14:04:05 -04:00
2024-05-11 14:04:05 -04:00
2024-05-11 14:04:05 -04:00
2024-03-13 23:12:12 -06:00
2023-08-15 10:00:45 -06:00
2023-08-17 17:13:23 -06:00
2023-09-12 09:56:23 -06:00