Fabien COUTANT <fab.cout...@laposte.net> wrote: |Le Tue, 31 Oct 2017 20:17:27 -0400, Thomas Dickey a écrit: |> On Tue, Oct 31, 2017 at 07:47:38PM +0100, Steffen Nurpmeso wrote: |>> Fabien COUTANT <fab.cout...@laposte.net> wrote: |[...] |>>|> Is it possible that a backspace spaces back shiftwidth (or |>>|> tabstop) characters in notabinsert mode, _if_ the cursor is |>>|> positioned on a clean sw/ts position and preceeded by a sw/ts |>>|> number of spaces (or multiple thereof)? That would be great! |[...] |>>|You could remap backspace to ^D but you would loose (and miss) the \ |>>|standard |>>|key. Why not trying to get used back to the vi standard ? |> |> Oddly enough, the ^D and ^T used for this purpose aren't rebindable |> (unlike just about everything else). | |I think Steffen would remap something else to them, rather than the reverse. | |FWIW my vile/xvile at hand (9.8) accepts to remap BS to ^D for insert mode, |and it works (and when applied to normal characters it removes several at a |time, as expected and unwanted). | |:map! ^V^H ^V^D
":map! ^? ^D" works, contradicting the manual. But like you say.. |NB: Maybe there's a way to write a user function to backspace smartly over |chars and indent + meta-insert-bindings setting + key binding a "meta-key" |to that function + xmodmap-ping BS to that metakey, but that way it would |also void BS for other apps and I don't see any other possibility :( complicated. Maybe in winter i find some time and try to write a macro which looks for spaces and uses ^D if appropriate, maybe temporarily a real, normal backspace can be "injected" for the other cases. I have no idea yet if such works in vile, but what you say does not make me pretty confident. Thanks anyway! --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt) _______________________________________________ vile mailing list vile@nongnu.org https://lists.nongnu.org/mailman/listinfo/vile