Fair enough, I definitely made some assumptions there, but it sure sounds the same based on the description. I guess `%` selects more than just the token?
But ya, I'm way too invested in Vim to bother with Helix. I have years of scripts and plugins I've written. I can't even be bothered to switch to nvim (I tried once and was not fun).
“%” is a range operator standing for the entire buffer; so :%s just means to start a substitution on the whole buffer. Neovim will highlight what was previously searched for, in this case matched by the *, but that won’t actually affect the search command.
The way :s works in Neovim looks like multiple cursors to me, but I’m not familiar enough with Helix to know what the difference is.
Ya, yes sorry, well aware of what `%` is, I was leaving out a lot of context there. Of course, as it turns out I was thinking in terms of my own mappings and not even then, I'm not sure why I thought `` came into play because my mapping is `gysiw<space>` (`w` can be replaced with other text objects) which populates the commandline with `%s/\<'.expand('<cword>').'\>//g` (and moves the cursor left twice). I just press `` a lot, sometimes even before replacing because I have it remapped to not autojump to the next match and rather `set hlsearch`. So ya, I'm all kinds of wrong bitten by my own config, lol.
Also :s without a range is not going to work like multiple cursor as it only acts on the current line, unless neovim has changed this for some reason. But again, I was assuming //g was a given.