Now, it's back. New code, new approach, hopefully usable site.
So, previously I was using pgFormatter library, which was using pretty smart regexps to format SQL. But this library was improved in a non-backward-compatible way, and I couldn't really work on paste.depesz.com (then) to fix the problem.
Now, I got some time, and figured I'll look for some other approach.
I found great library pg_query – it's a ruby gem that wraps some magical C code, that is extracted from PostgreSQL sources. Long story short – it doesn't do its work using regexps. It uses proper parsing, and output from parser is normal parse tree.
It even consists of a method to print back SQL query from parse tree. This is what I used in my approach to make it print the query in somewhat nice way. Well, at least to my eyes it's pretty 🙂
At the moment, my patch with beautification code has not yet been merged, but I hope it eventually will (possibly with some changes.
The thing is that previously if pretty printing failed – it could have printed the queries badly indented or something. Now, if it fails – it just doesn't print anything in the “prettyfied" part of paste/show.
For now – it's should be OK – you can always see the original version of the query, even if pretty-printing fails.
I will be checking periodically to see what kind of queries fail on pretty printing, and will do my best to fix these problems.