summaryrefslogtreecommitdiffstats
path: root/readme.html
blob: 7670e5a5cf5d04cf4de78803b388bf3d91d9b864 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=windows-1250">
    <title>UniversalIndentGUI-TQt ReadMe</title>

<style type="text/css">
<!--
/* Links general
/*******************************/
a
{
    color: #36b;
}
/* Links external
/*******************************/
a.external
{
    background: url("doc/images/externallinks.png") center right no-repeat;
    padding-right: 13px;
}
-->
</style>

</head>

<body style="font-family: Tahoma,serif;">
    <br/>
    <div align="center"><h1>UniversalIndentGUI-TQt-TQt</h1></div>
    <br clear="all" />
    <p>
        Ever concerned about how your code looks like?<br />
        Ever heard of different indenting styles, for example K&amp;R?<br />
        Ever received code from someone else who didn't care about code formatting?<br />
        Ever tried to configure a code indenter to convert such code to your coding style?<br />
        Ever got bored by that tedious "changing a parameter"-"call the indeter"-"try and error" procedure?<br />
    </p>

    <p>
        Help is close to you. UniversalIndentGUI-TQt offers a live preview for setting the parameters of nearly any indenter.
        You change the value of a parameter and directly see how your reformatted code will look like. Save your beauty looking
        code or create an anywhere usable batch/shell script to reformat whole directories or just one file even out of the
        editor of your choice that supports external tool calls.<br />

        Many free available code beautifier, formatter and indenter are currently supported, like GNU Indent, Uncrustify,
        Artistic Styler, PHP Stylist, Ruby Beautify, HTML Tidy and many other (look at features for complete list).
        Currently not supported indenters can be easyly added by creating a configuration file for them.<br />

        Thus UniversalIndentGUI-TQt is open for nearly any new indenter and programming languages. Give it a try.
        Perhaps you'll also find an indenter for your programming language that you even didn't know that it exists.
    </p>


    <h3>Features</h3>
    <p>
        <ul>
            <li>Live Preview: change an indenter parameter and directly see how your formatted code will look like.</li>
            <li>Support for nearly any existing indenter possible. Currently supported are:</li>
            <img width="400" align="right" vspace="10" src="doc/images/screenshot8.jpg" alt="UiGUI Screenshot">
            <ul>
                <li><a class="external" href="http://astyle.sourceforge.net/">Artistic Styler</a></li>
                <li><a class="external" href="http://invisible-island.net/bcpp/">BCPP</a></li>
                <li><a class="external" href="http://www.siber.com/sct/tools/cbl-beau.html">Cobol Beautify</a></li>
                <li><a class="external" href="http://csstidy.sourceforge.net/">CSSTidy</a></li>
                <li><a class="external" href="ftp://ftp.ifremer.fr/ifremer/ditigo/fortran90/">Fortran 90 PPR</a></li>
                <li><a class="external" href="http://www.gnu.org/software/indent/">GNU Indent</a></li>
                <li><a class="external" href="http://sourceforge.net/projects/gcgreatcode/">GreatCode</a></li>
                <li><a class="external" href="http://packages.debian.org/de/lenny/hindent">hindent</a></li>
                <li><a class="external" href="http://www.digital-mines.com/htb/">HTB</a></li>
                <li><a class="external" href="http://code.gosu.pl/">Javascript Decoder</a></li>
                <li><a class="external" href="http://jsppp.sourceforge.net/">JSPPP</a></li>
                <li><a class="external" href="http://perltidy.sourceforge.net/">Perl Tidy</a></li>
                <li><a class="external" href="http://pear.php.net/package/PHP_Beautifier">PHP_Beautifier</a></li>
                <li><a class="external" href="http://www.waterproof.fr/products/phpCodeBeautifier/">PHP Code Beautifier</a></li>
                <li><a class="external" href="http://sourceforge.net/projects/phpstylist/">PHP Stylist</a></li>
                <li><a class="external" href="http://coverage.livinglogic.de/Tools/scripts/pindent.py.html">pindent</a></li>
                <li><a class="external" href="http://psti.equinoxbase.com/">Pl/Sql tidy</a></li>
                <li><a class="external" href="http://www.arachnoid.com/ruby/rubyBeautifier.html">Ruby Beautify</a></li>
                <li><a class="external" href="http://raa.ruby-lang.org/project/ruby_formatter/">Ruby Formatter</a></li>
                <li><a class="external" href="http://www.bolthole.com/AWK.html">Shell Indent</a></li>
                <li><a class="external" href="http://tidy.sourceforge.net/">(HTML) Tidy</a></li>
                <li><a class="external" href="http://uncrustify.sourceforge.net/">Uncrustify</a></li>
                <li><a class="external" href="http://www.daansystems.com/vbsbeaut/">VBSBeautifier</a></li>
                <li><a class="external" href="http://xmlindent.sourceforge.net/">XML Indent</a></li>

                Please note that Cobol Beautify and PHP Code Beautifier can not be distributed with a UiGUI package, because
                they are only free available if you register at their homepage.
            </ul>
            <li>Easy adding of new indenters: just create a parameter definition file for the new indenter.</li>
            <li>Load and save different indenter configurations.</li>
            <li>Reset to indenters default parameters.</li>
            <li>By the above named indenters currently supported programming languages:</li>
            <img width="400" align="right" vspace="10" src="doc/images/screenshot6.jpg" alt="UiGUI Screenshot">
            <ul>
                <li>C, C++</li>
                <li>C#</li>
                <li>Cobol</li>
                <li>CSS</li>
                <li>D</li>
                <li>Fortran</li>
                <li>HTML</li>
                <li>Java</li>
                <li>JavaScript</li>
                <li>JSP</li>
                <li>Objective-C</li>
                <li>Pawn</li>
                <li>Perl</li>
                <li>PHP</li>
                <li>Pl/Sql</li>
                <li>Python</li>
                <li>Ruby</li>
                <li>Shellscript</li>
                <li>VALA</li>
                <li>Visual Basic</li>
                <li>XML</li>
                <li>XSL</li>
            </ul>
            <li>Syntax highlighting for all of these languages except for Pawn and VALA</li>
            <li>Really easy to handle user interface.</li>
            <li>Tooltips for each indenter parameter.</li>
            <li>Creation of batch/shell scripts.</li>
            <li>HTML and PDF export of your code.</li>
            <li>PortableMode and MultiUserMode: In portable mode only uses its own subdirectories for temporary writing.</li>
            <li>Multiple languages: English, German, Traditional Chinese, Russian, Ukrainian, partly Japanese.</li>
            <li>Drag'n Drop of source code files.</li>
            <li>Support for many different file encodings, like Korean KOI8-R or Chinese BIG5.</li>
            <li>Possibility to edit your code while live preview is turned on. Yeah, thats really live! (but positions cursor wrong sometimes depending on the used indenter :-( )</li>
            <li>Code completion.</li>
            <li>Automatic update check. Does check only once a day and can be disabled.</li>
            <li>A nice about dialog. Errrmm, ok beneath all the mean stuff this is somehow the programmers playground ;-)</li>
        </ul>
    </p>

    <h3>Supported and tested platforms</h3>
    <p>
        <ul>
            <li>Windows 32 bit</li>
            <li>Linux 32 and 64 bit</li>
            <li>Mac OS X >= 10.4 (currently Intel only. PPC produced mysterious linker error)</li>
        </ul>
    </p>

    <h3>How to install / build UniversalIndentGUI-TQt</h3>
    <p>
        If you downloaded a complete binary package/archive for your system from SourceForge, you only need to unpack it and
        can run it out of the box. Also all free available indenters for your platform are included. Doing it that way,
        UiGUI will run in portable mode.
    </p>
    <p>
        But if you'd like to build UiGUI from source, follow these steps:
        <ol>
            <li>Download, unpack, configure and compile
            <a class="external" href="http://www.qtsoftware.com/downloads/opensource/appdev">TQt</a>
            >= 4.4.0. Make your QTDIR and QMAKESPEC settings. Or install TQt via a package manager.</li>
            <li>Download, unpack, compile and install
            <a class="external" href="http://www.riverbankcomputing.com/software/qscintilla/download">TQScintilla</a>
            >= 2.2.</li>
            <li>Checkout UiGUI: svn co https://universalindent.svn.sourceforge.net/svnroot/universalindent/trunk universalindentgui</li>
            <li>In the checked out directory run "qmake UniversalIndentGUI-TQt.pro".</li>
            <li>Run "make release".</li>
            <li>Install it</li>
            <ol type="a">
                <li>
                    Windows and Mac:<br />
                    For testing on Windows/Mac download the indenter binary package from sourceforge and extract it into the
                    directory where you checked out the code (in the upper example that is "universalindentgui").
                    Then move the file "UniversalIndentGUI-TQt.exe" (on Mac the directory "UniversalIndentGUI-TQt") from the
                    "release" directory also to that directory. Starting UiGUI from this directory will run it
                    in portable mode.
                </li>
                <li>
                    Linux:<br />
                    Run "sudo make install" installs for multi user mode. Install supported indenters via package manager for
                    example. For portable mode just skip "make install" and move the file "universalindentgui" from the "release"
                    directory into the directory where you checked out the code (in the upper example that is
                    "universalindentgui").
                </li>
            </ol>
        </ol>
        <b>Indenter binary packages</b> can be downloaded from the project at SourceForge
        <a class="external" href="http://sourceforge.net/project/showfiles.php?group_id=167482&package_id=293094">here</a>.
        <p>Beneath the possibility to build UiGUI using qmake, also project files for Visual Studio 2005
        and XCode are included.</p>
    </p>

    <h3>Thanks</h3>
    Here I'd like to say "thank you" to all those guys, who helped me improving UiGUI. May it be doing some
    translations, creating packages for Linux, letting me know about bugs or ways to improve or just saying
    that they found my application helpful and that they like it. So:<br /><br />
    <div align="center"><b>Thank you all out there!!</b></div>

    <h3>Disclaimer</h3>
    You may use this software on your own risk. I am not responsible for any system damage or loss of data.
    Respect the GPL! UiGUI is being released under
    <a class="external" href="http://www.gnu.org/licenses/old-licenses/gpl-2.0.html">GPL 2</a>.
    You will also find the license in the included file "LICENSE.GPL".
</body>
</html>