Files
neovim/runtime/doc
zeertzjq e51f217be7 vim-patch:9.2.0223: Option handling for key:value suboptions is limited (#38426)
Problem:  Option handling for key:value suboptions is limited
Solution: Improve :set+=, :set-= and :set^= for options that use
          "key:value" pairs (Hirohito Higashi)

For comma-separated options with P_COLON (e.g., diffopt, listchars,
fillchars), :set += -= ^= now processes each comma-separated item
individually instead of treating the whole value as a single string.

For :set += and :set ^=:
- A "key:value" item where the key already exists with a different value:
  the old item is replaced.
- An exact duplicate item is left unchanged.
- A new item is appended (+=) or prepended (^=).

For :set -=:
- A "key:value" or "key:" item removes by key match regardless of value.
- A non-colon item removes by exact match.

This also handles multiple non-colon items (e.g., :set
diffopt-=filler,internal) by processing each item individually, making
the behavior order-independent.

Previously, :set += simply appended the value, causing duplicate keys to
accumulate.

fixes:  vim/vim#18495
closes: vim/vim#19783

e2f4e18437

Co-authored-by: Hirohito Higashi <h.east.727@gmail.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-23 10:13:48 +08:00
..
2026-03-12 11:12:56 +01:00
2026-03-11 18:24:57 +01:00
2026-02-12 13:46:45 +01:00
2026-02-12 13:46:45 +01:00
2026-03-11 18:17:46 +01:00
2024-05-15 23:19:26 +02:00
2026-03-11 18:00:18 +01:00
2026-03-11 18:00:18 +01:00
2026-03-16 14:52:03 +01:00
2025-12-06 20:33:02 -05:00
2023-06-25 17:14:28 +02:00
2026-03-11 18:00:18 +01:00
2026-01-27 17:14:57 -05:00
2026-03-22 01:57:28 +01:00
2026-01-12 03:50:57 +00:00
2026-03-22 01:57:28 +01:00
2026-03-22 01:57:28 +01:00
2025-12-15 13:55:15 -05:00
2026-03-16 10:29:58 +01:00
2026-02-12 13:46:45 +01:00
2025-12-15 13:55:15 -05:00
2026-03-11 18:17:46 +01:00
2025-09-28 20:57:59 -07:00
2025-12-15 13:55:15 -05:00
2026-03-11 18:00:18 +01:00
2025-12-15 13:55:15 -05:00
2025-12-06 20:33:02 -05:00
2026-03-11 18:24:57 +01:00
2026-03-22 01:57:28 +01:00
2026-03-22 01:57:28 +01:00
2026-03-18 20:40:20 +01:00
2026-03-20 23:30:09 +01:00
2026-01-07 08:11:42 +08:00
2025-12-06 20:33:02 -05:00
2025-12-06 20:33:02 -05:00
2026-03-11 12:39:49 +01:00
2025-12-15 13:55:15 -05:00
2026-03-11 18:00:18 +01:00
2026-03-20 23:30:09 +01:00
2026-03-20 23:30:09 +01:00
2026-03-11 18:17:46 +01:00