From: | "J(dot)F(dot) Oster" <jinfroster(at)mail(dot)ru> |
---|---|
To: | Akshay Joshi <akshay(dot)joshi(at)enterprisedb(dot)com> |
Cc: | Dave Page <dpage(at)pgadmin(dot)org>, pgadmin-hackers <pgadmin-hackers(at)postgresql(dot)org> |
Subject: | Re: Fwd: PATCH: Format SQL (external tool) |
Date: | 2015-05-21 03:52:38 |
Message-ID: | 652521761.20150521065238@mail.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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(at)mail(dot)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(dot)joshi(at)enterprisedb(dot)com> wrote:
AJ> Sure.
AJ> On Fri, May 15, 2015 at 9:30 PM, Dave Page <dpage(at)pgadmin(dot)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(at)mail(dot)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(at)linux:~$ cat in.sql |some_formatter >out.sql
>> user(at)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 | Content-Type | Size |
---|---|---|
150521_extformat.patch | application/octet-stream | 77.7 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Dave Page | 2015-05-21 09:38:37 | Re: PATCH: remove redundant local variables |
Previous Message | Dmitriy Olshevskiy | 2015-05-20 19:26:41 | PATCH: remove redundant local variables |