#13985 changed the meaning of the count on rotate_selection_contents_{forward,backward} and reverse_selection_contents from group size to number of repetitions.
I'm not disputing the second half/bug of that PR, the primary index should follow the content it was on, and the old code even carried a // TODO: also modify main index comment acknowledging that. This issue is only about the count (Bug 1).
What was labelled as a bug was in fact, intentional behaviour, the count on rotate selection was used to indicate the group size to rotate within, mirroring how this works in kakoune: https://github.com/mawww/kakoune/blob/master/README.asciidoc?plain=1#L573-L575
This enabled intuitive motions to rotate between multiple selections per line over multiple lines at once, demonstrated here: https://nik-rev.github.io/helix-golf/invert_dictionary_2.html
I personally prefer the old behaviour as it is in kakoune, but this functionality was also never documented in helix, as mentioned by #15352 (side note, the only comment in that thread makes no sense to me and reads like LLM generated slop). Maybe there exists an intuitive way to offer both?
#13985 changed the meaning of the count on rotate_selection_contents_{forward,backward} and reverse_selection_contents from group size to number of repetitions.
I'm not disputing the second half/bug of that PR, the primary index should follow the content it was on, and the old code even carried a // TODO: also modify main index comment acknowledging that. This issue is only about the count (Bug 1).
What was labelled as a bug was in fact, intentional behaviour, the count on rotate selection was used to indicate the group size to rotate within, mirroring how this works in kakoune: https://github.com/mawww/kakoune/blob/master/README.asciidoc?plain=1#L573-L575
This enabled intuitive motions to rotate between multiple selections per line over multiple lines at once, demonstrated here: https://nik-rev.github.io/helix-golf/invert_dictionary_2.html
I personally prefer the old behaviour as it is in kakoune, but this functionality was also never documented in helix, as mentioned by #15352 (side note, the only comment in that thread makes no sense to me and reads like LLM generated slop). Maybe there exists an intuitive way to offer both?