Re: Fwd: PATCH: Format SQL (external tool) - Mailing list pgadmin-hackers
From | J.F. Oster |
---|---|
Subject | Re: Fwd: PATCH: Format SQL (external tool) |
Date | |
Msg-id | 652521761.20150521065238@mail.ru Whole thread Raw |
In response to | Re: Fwd: PATCH: Format SQL (external tool) (Akshay Joshi <akshay.joshi@enterprisedb.com>) |
Responses |
Re: Fwd: PATCH: Format SQL (external tool)
|
List | pgadmin-hackers |
Hi Akshay, Removed that. 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 <jinfroster@mail.ru> 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> <akshay.joshi@enterprisedb.com> wrote: AJ> Sure. AJ> On Fri, May 15, 2015 at 9:30 PM, Dave Page <dpage@pgadmin.org> wrote: AJ> Akshay, can you take a look please? AJ> Thanks. AJ> On Fri, May 15, 2015 at 4:53 PM, J.F. Oster <jinfroster@mail.ru> wrote: >> Hello! >> Please take a look at the patch. >> Thanks. >> Per discussion >> http://www.postgresql.org/message-id/CAPyomk5NT9Tm-r3wombLzoY60Vqa+QyRDy4u84_2K9UWLbWHTg@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.
Attachment
pgadmin-hackers by date: