|firstname.lastname@example.org||[8d6264] Use 'stack.h' for tracking subquery openings|
|gui||2014-07-23||dnsmkl||[0431d9] Move 'private' includes .hpp->.cpp|
|email@example.com||[3fdf59] Add more keywords & refactorings|
|firstname.lastname@example.org||[988f31] Fix from Carlos|
|unused||2011-08-10||dnsmkl||[6e61fe] Add file with some general formating functions|
|.gitignore||2014-04-27||dnsmkl||[1c7974] Gitignore *.o files|
|LICENSE||2011-04-17||dnsmkl||[7cb509] Initial version of files.|
|README.email@example.com||[6ea4a5] Fix markdown syntax in README.md|
|formatting.conf||2014-05-02||dnsmkl||[cc8101] Add explanations to conf file|
|makefile||2014-07-22||dnsmkl||[36dc01] Shorten C++ building|
This is a tool that adds linebreaks and indentation to sql source code.
Licensed under LGPL. Full license is available in file 'LICENCE', which you should have received with the program
fsqlf simply goes through provided input text, and tries to recognise predefined set of keywords. If keyword is recognized it adds spacing around it using settings in configuration file (and to some level settings from CLI/GUI).
My use case is formatting generated SQL code - make something readable out of one long line of SQL code
Current list of implemented capabilities:
(see TODO list what is planed for future)
The following list actualy should be suficient. Look into 'makefile' for compilation instructions
Stuff that I got installed:
If you use Linux and have installed same programs as I do (see section 2.1), then you can use the make file
# make all # Compile source for LINUX and WINDOWS. Excutables can be found in 'bin/' directory: 'fsqlf', 'fsqlf.exe', 'gui_wx_basic', 'gui_wx_basic.exe' # make test # Compile and run program on test file 'test.sql' and print output to console # make zip # Create zip archive with executables and source code binaries (for publishing) # make clean # Remove all files created with other make commands
# bin/fsqlf.exe # read from stdin, write to stdout # bin/fsqlf.exe input_file # read from file, write to stdout # bin/fsqlf.exe input_file output_file # use files for reading and writing # bin/fsqlf.exe --help # info on more options
Usage in Linux is equivalent, just without the extention '.exe'
Formatting configurations can be changed in 'formatting.conf'
Go to directory 'bin/' (this is needed so 'wx_fsqlf.exe' would be started in the same folder where 'fsqlf.exe' is located)
In Windows execute 'wx_fsqlf.exe'
In Linux execute 'wx_fsqlf'
When it starts, just fill your code into the formater window and press 'Format'
Formating configurations can be changed in 'formatting.conf'
I use debian, so I describe what I did. Your system probably is different, but maybe this will at least give you an idea in which direction to go.
1 2 3 4 5
#!/bin/bash # apt-get install wx2.8-headers libwxgtk2.8-0 libwxgtk2.8-dev # cd /usr/include # ls | grep wx # ln -sv wx-2.8/wx wx
Install mingw (cross) compiler
#!/bin/bash # apt-get install mingw32
Download wxWidgets source from http://www.wxwidgets.org/
(some forums mention that sources provided by ubuntu/debian are not good)
Build wxWidgets with mingw
1 2 3 4 5 6
#!/bin/bash # ./configure --prefix=/usr/i586-mingw32msvc --host=i586-mingw32msvc --build=`./config.guess` --enable-unicode --disable-shared # make # make install # cd /usr/i586-mingw32msvc/include # ln -sv wx-2.8/wx wx
This was done by following instructions found in http://wiki.wxwidgets.org/Cross-Compiling_Under_Linux
with little adjustment by after reading http://forums.codeblocks.org/index.php?topic=7988.msg%msg_id%