Ok, this was a bit of a saga. Ultimately, if I add bindings to
<space> in visual it will work it just still increments characters if you spam it. Still don’t understand what the deal is but it’s working for what I had originally intended, so I can’t be bothered pursuing it further.
Something else I was frustrated with was that I was having similar problems with
<bs>. TL;DR some weird crap seemed to be going on with my plugins regarding
<bs>, in particular some unmodifiable bindings from UltiSnips, so really
<bs> was the worst case scenario. I really should open an issue in ultisnips about it, but I don’t really understand why I can’t just rebind the thing normally so might not be worth doing. Otherwise, I gave up on