[Geany-Users] Possible unintentional behavior when stripping trailing spaces and tabs
Matthew Brush
mbrush at xxxxx
Sun Sep 3 22:50:04 UTC 2017
On 2017-09-03 11:05 AM, Little Girl wrote:
> Hey there,
>
> I was looking through the preferences for Geany today and decided to
> try this one since I occasionally have an unwanted space or tab at
> the end of a line:
>
> Edit --> Preferences --> Files --> Saving files --> Strip trailing
> spaces and tabs
>
> I turned it on and it works great on lines with a trailing space or
> tab, but I noticed a behavior I consider unwanted and I'm wondering
> if this is by design or if it's something that ought to get fixed:
>
> If you put your cursor on a blank line and tab over three times and
> save the file, Geany strips those three tabs out even though they're
> leading tabs (they're not trailing after anything).
>
It's by design, though both ways have their pros and cons.
If I remember correctly VisualStudio has a nice (if complicated to
implement) solution, it never saved the superfluous whitespaces, but
graphically, in the editor it appeared to leave them alone so it didn't
cause you to re-indent while editing after a save.
> For the purposes I have for that option, Geany saving me from the
> trailing spaces or tabs I occasionally litter a file with wouldn't be
> worth the many times that Geany would prevent the cursor from being
> in exactly the spot I want it in (three tabs over or whatever) on
> save, so I'm going to turn that off again for now.
>
> What I'd like is for Geany to only strip trailing spaces or tabs from
> lines that also contain something other than tabs or spaces. Is there
> any chance that that's what was intended and that it just needs
> fixing or is it behaving as intended?
>
It could be made an option, for example as in this this pull request:
https://github.com/geany/geany/pull/128
Of course it would take someone to update it and try and get it merged.
Speaking only for myself, I'd never use this option/feature, and so,
with my limited time, have never dedicated any towards reviewing and
merging it.
You could also do as John mentioned and write a little script to do it
as you like, and you could even make it a command for "Send Selection to
Command" so that you could do <Ctrl>+a, <Ctrl>+1, <Ctrl>+s to strip the
whole file while saving, to your preference.
For inspiration, there is a script in Geany's scripts directory called
`rstrip-whitespace.py` which could be trivially adapted to do as above.
Regards,
Matthew Brush
More information about the Users
mailing list