Re: Preliminary results for proposed new pgindent implementation
Andres Freund <andres@anarazel.de>
From: Andres Freund <andres@anarazel.de>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Peter Eisentraut <peter.eisentraut@2ndquadrant.com>, Alvaro Herrera <alvherre@2ndquadrant.com>, Robert Haas <robertmhaas@gmail.com>, Stephen Frost <sfrost@snowman.net>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>, Piotr Stefaniak <postgres@piotr-stefaniak.me>
Date: 2017-06-16T17:19:46Z
Lists: pgsql-hackers
Hi, On 2017-06-16 13:10:50 -0400, Tom Lane wrote: > I experimented with disabling that logic and just always aligning > to the paren indentation. That fixes the weird cases with continued > string literals, but it also makes for a heck of a lot of other changes. > The full diff is too big to post here, but I've attached a selection > of diff hunks to give you an idea. I'm not really sure if I like this > better than pgindent's traditional behavior --- but it's arguably less > confusing. > > An intermediate position that we could consider is to disable the back-off > logic only when the line starts with a string literal. I haven't actually > coded this but it looks like it would be easy, if grotty. I think the current logic is pretty horrible, primarily because it's so hard to get to manually. I could live with both of these proposed changes, the selection of the changes you posted looks like it could be improved by code changes, but that's obviously a large amount of work. The heuristic also seems to make sense. At this point however I wonder whether just moving to the new tool on its own wouldn't be a big enough change - we could just delay that decision until we've got the rest done at least. - Andres
Commits
-
Manually un-break a few URLs that pgindent used to insist on splitting.
- 780b3a4c43fd 10.0 landed
-
Remove entab and associated detritus.
- 81f056c7256f 10.0 landed
-
Phase 3 of pgindent updates.
- 382ceffdf7f6 10.0 landed
-
Phase 2 of pgindent updates.
- c7b8998ebbf3 10.0 landed
-
Initial pgindent run with pg_bsd_indent version 2.0.
- e3860ffa4dd0 10.0 landed
-
Adjust pgindent script to use pg_bsd_indent 2.0.
- 8ff6d4ec7840 10.0 landed
-
Final pgindent run with old pg_bsd_indent (version 1.3).
- 9ef2dbefc7fb 10.0 landed