Ensure that editing one tag in a linked pair correctly mirrors the change
to the other tag for Vim delete/change/substitute commands, visual
mode operations, and the standard editor delete action.
Extract a `LinkedEdits` struct to deduplicate linked edit collection and
application across `handle_input`, `replace_selections`, `do_completion`,
`backspace`, and `delete`. Introduce `linked_edits_for_selections` as a
shared helper for building linked edits from the current selections.
Closes#35941
Release Notes:
- Fixed linked edits for delete/change/substitute commands so tag pairs
stay in sync.
---------
Co-authored-by: dino <dinojoaocosta@gmail.com>