On Tue, May 26, 2015 at 9:51 PM, J.F. Oster <[email protected]> wrote:
> Hello Akshay, > > Is there something else to fix? > Nothing. Patch looks good to me. > > JFO> Hi Akshay, > > JFO> Removed that. > > JFO> Tuesday, May 19, 2015, 10:04:59 AM, you wrote: > > AJ>> Hi J.F > > AJ>> The version of fsql you have suggested works for me as well. I > AJ>> have reviewed your patch and it looks good to me. Please remove > AJ>> the commented code (wxString s; //, tmp at line 873 in > sysSettings.cpp. > > > AJ>> On Mon, May 18, 2015 at 10:31 PM, J.F. Oster <[email protected]> > wrote: > AJ>> Hi Akshay, > > AJ>> fsqlf.exe is the program to use; wx_fsqlf.exe is just a GUI wrapper. > > AJ>> I've got the latest version (fsqlf.v0.03-292-gd0fd9bf.zip), and it > really fails to run > AJ>> Please try the previous one, it works for me. > AJ>> > http://sourceforge.net/projects/fsqlf/files/fsqlf.v0.03/fsqlf.v0.03-141-g94f5a5f.zip.gz/download > > AJ>> Also please note that fsqlf.exe could fail when run in a path > containing national characters. > > > > AJ>> Monday, May 18, 2015, 3:42:11 PM, you wrote: > > > > > AJ>> Hi J.F > > AJ>> I am reviewing your patch. I have applied the patch and try to > AJ>> test it on Windows 7. Below are the steps that I perform > AJ>> ° Download SQL Formatter from http://fsqlf.sourceforge.net/ > AJ>> ° Given the path of fsqlf.exe/wx_fsqlf.exe in File - > AJ>> Options - Query Editor: External formatting utility > AJ>> ° I have opened the query tool and wrote some select query. > AJ>> Please refer the attached screenshot for SQL query. > AJ>> When I have given fsqlf.exe in the path it throws the error ( see > AJ>> attached screenshot) and when I have given wx_fsqlf.exe in the > AJ>> path it always report an error "Formatting command did not respond > AJ>> in 3 seconds" in the status bar. > > AJ>> I am not sure how to test it properly. Can you please provide some > steps. > > > AJ>> On Mon, May 18, 2015 at 10:10 AM, Akshay Joshi > AJ>> <[email protected]> wrote: > > AJ>> Sure. > > > AJ>> On Fri, May 15, 2015 at 9:30 PM, Dave Page <[email protected]> wrote: > > AJ>> Akshay, can you take a look please? > > AJ>> Thanks. > > > AJ>> On Fri, May 15, 2015 at 4:53 PM, J.F. Oster <[email protected]> > wrote: > >>> Hello! > > >>> Please take a look at the patch. > >>> Thanks. > > >>> Per discussion > >>> > http://www.postgresql.org/message-id/capyomk5nt9tm-r3womblzoy60vqa+qyrdy4u84_2k9uwlbw...@mail.gmail.com > > >>> It's most useful for making readable queries generated by ORMs such as > >>> Hibernate. But in general, external processing can go far beyond > >>> formatting task. > > >>> I've implemented this feature quick-and-dirty long ago. Finally I made > >>> myself clean it up, now it looks better, so please consider a patch. > >>> Tested on Windows 7 and Ubuntu 14.04. > > >>> Changes: > >>> * added new setting, ExtFormatCmd, "External formatting utility" in > >>> Options dialogue > >>> * added menu item "Edit - Format - External Format" in > >>> Query editor > >>> * class sysProcess supports UTF-8 and can pass STDIN for a process. > > >>> Suggested use scenario: > >>> 1. Download and install some SQL formatting utility. > >>> 2. Tell pgAdmin where it resides: > >>> File - Options - Query Editor: External formatting utility. > >>> 3. Open Query editor. Select a text block to format and press > >>> Ctrl-Shift-F. With no selection the whole text gets formatted. > >>> In case of non-zero exit code, STDERR will be shown in status bar. > > >>> Requirements for external formatting utility: > >>> * Accepts a STDIN stream and writes result to STDOUT > >>> * Finishes in less than 3 seconds > >>> * Exits with code 0 on success > >>> Support for UTF-8 multibyte characters is preferable. > > >>> To see whether it works well, a test can be done: > >>> C:\> type in.sql |some_formatter >out.sql > >>> C:\> echo %ERRORLEVEL% > >>> or > >>> user@linux:~$ cat in.sql |some_formatter >out.sql > >>> user@linux:~$ echo $? > > >>> There are few available utilities depending on platform: > >>> * Free SQL Formatter (Linux, Windows, Mac OS X(?)) > >>> http://fsqlf.sourceforge.net/ > >>> * Poor Man's T-SQL Formatter (Windows) > >>> http://architectshack.com/PoorMansTSqlFormatter.ashx > >>> Also it is possible to make a wrapper script for numerous online > >>> formatting services, but it's less secure and less reliable. > > >>> Fsqlf is FOSS and seems promising. I think of extending it for > >>> PosgreSQL-specific SQL syntax and probably even PL/pgSQL. > > > > > > -- > Best regards, > J.F. > > -- *Akshay Joshi* *Principal Software Engineer * *Phone: +91 20-3058-9517Mobile: +91 976-788-8246*
