When a command used an explicit register (e.g. `"_dd` or `"add`), the subsequent dot repeat (`.`) was ignoring that register and using the default instead. Store the register at recording start in `recording_register_for_dot`, persist it to `recorded_register_for_dot` when recording stops, and restore it in `Vim::repeat` when no explicit register is supplied for `.`. An explicit register on `.` (e.g. `"b.`) still takes precedence. This commit also updates the dot-repeat logic to closely follow Neovim's when using numbered registers, where each dot repeat increments the register. For example, after using `"1p`, using `.` will repeat the command using `"2p`, `"3p`, etc. Closes #49867 Release Notes: - Fixed vim's repeat . to preserve the register the recorded command used - Updated vim's repeat . to increment the recorded register when using numbered registers --------- Co-authored-by: dino <dinojoaocosta@gmail.com>
7 files changedLine totals unavailable