summaryrefslogtreecommitdiffstats
path: root/debian/uncrustify-trinity/uncrustify-trinity-0.78.1/documentation/htdocs/index.html
blob: 7b14f7e56fcf803d6f5dae13110e6503e759e433 (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
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <meta http-equiv="content-type" content="text/html; charset=utf-8" />
   <title>Uncrustify - Source Code Beautifier for C-like languages</title>
   <link rel="stylesheet" type="text/css" href="uncrustify1.css" />
   <!-- <link rel="shortcut icon" href="images/favicon.ico" /> -->
</head>
<body lang="en-us" dir="ltr">

<div align="center">
<table>
<tr>
<td align="center">
<div class="node1" align="center">
<div class="node2" align="left">
<h1>Uncrustify</h1>
<h2>Source Code Beautifier for C, C++, C#, ObjectiveC, D, Java, Pawn and VALA</h2>
<table>
 <tr>
  <td valign="top">
   <script type='text/javascript' language='JavaScript' src='http://www.ohloh.net/projects/4765/badge_js'></script>
  </td>
  <td valign="top">
   <a href="https://travis-ci.org/uncrustify/uncrustify/builds">
    <img alt="Travis CI Build Status"
         src="https://travis-ci.org/uncrustify/uncrustify.svg?branch=master"/>
   </a>
  </td>
  <td valign="top">
   <a href="https://scan.coverity.com/projects/uncrustify">
    <img alt="Coverity Scan Build Status"
         src="https://scan.coverity.com/projects/8264/badge.svg"/>
   </a>
  </td>
 </tr>
</table>

<h2>Introduction</h2>
<p>The goals of this project are simple:
Create a highly configurable, easily modifiable source code beautifier.</p>

<br />

<h2>Features</h2>
<ul>
   <li>Indent code, aligning on parens, assignments, etc</li>
   <li>Align on '=' and variable definitions</li>
   <li>Align structure initializers</li>
   <li>Align #define stuff</li>
   <li>Align backslash-newline stuff</li>
   <li>Reformat comments (a little bit)</li>
   <li>Fix inter-character spacing</li>
   <li>Add or remove parens on return statements</li>
   <li>Add or remove braces on single-statement if/do/while/for statements</li>
   <li>Supports embedded SQL 'EXEC SQL' stuff</li>
   <li>Highly configurable - 850 configurable options as of version 0.78.1</li>
</ul>

<p>
   See some example <a href="examples/example.c">output</a>.
</p>

<br />

<h2>Where to get Uncrustify</h2>

<h3>Project Websites</h3>
<a href="http://sourceforge.net/projects/uncrustify/">Sourceforge project web site</a><BR>
<a href="http://sourceforge.net/projects/uncrustify/files/">Release downloads</a><br>
<a href="http://freshmeat.net/projects/uncrustify/">Freshmeat Project</a><BR>
<a href="http://github.com/uncrustify/uncrustify">Git Hub</a><br>

<h3>Source Code</h3>
As of release 0.54, the source code is maintained in a <a href="http://git-scm.com/">Git</a> repository.<br>
<br>
The public Git URL for Sourceforge.net is <br>
<code>git://uncrustify.git.sourceforge.net/gitroot/uncrustify/uncrustify</code><br>
<br>
The public Git URL for github.com is <br>
<code>git://github.com/uncrustify/uncrustify.git</code><br>

<h3>Prebuilt binaries</h3>
Windows (i386) :
<a href="http://sourceforge.net/project/showfiles.php?group_id=153164">Sourceforge</A><BR>

<h3>Universal Indent GUI</h3>
<a href="http://universalindent.sourceforge.net/">Universal Indent GUI</a> is a
cross-platform graphical configuration file editor for many code beautifiers, including Uncrustify.

<br />

<h2>Want to help?</h2>
<p>
The most helpful way is to try it out and give feedback.
Documentation and examples are available in the source tree, so check it out.
</p>
<p>
You can find the output from 'uncrustify --show-config' <a href="config.txt">here</a>.<br />
Here is the <a href="default.cfg">default config file</a>.
And one I set up for <a href="linux.cfg.txt">Linux</a>.<br />
And here is a <a href="examples/c-1.in.c">before</a> and <a href="examples/c-1.out.c">after</a> C source example.<br />
That should give you a pretty good idea of what Uncrustify can do.<br />
</p>

<p>
If you find a bug, please do the following:
</p>
<ul>
<li>Reduce the input source file to the minimum that still has the problem</li>
<li>Use the sourceforget.net bug tracker</li>
<li>Attach the input source file, the configuration file, and a file that contains the expected output</li>
</ul>

<p>
If you want to add a feature, fix a bug, or implement missing functionality, feel free to do so! Patches are welcome!<BR/>
Here are some areas that need attention:
</p>
<ul>
   <li>Test Java support and provide feedback (or patches!)</li>
   <li>Test Objective C support and provide feedback (or patches!)</li>
   <li>Test Embedded SQL to see what works</li>
   <li>This web page need a (re)design</li>
   <li>A logo of some sort</li>
   <li>Examples that can be put on this website to show off what Uncrustify can do</li>
   <li>Anything else that you want to do to make it better?</li>
</ul>

<h3>Project Mailing list</h3>
We don't have a mailing list for Uncrustify.<BR/>
We are using <a href="https://github.com/uncrustify/uncrustify/">github</a>.
<br>
You may use <a href="https://github.com/uncrustify/uncrustify/issues">Issues</a> to publish an error report.
<br>
Or <a href="https://github.com/uncrustify/uncrustify/pulls">PR</a> to make a bugfix proposal.

<br />

<h2>Portability</h2>
<p>
I'm pretty sure that I'm not using anything that is OS-specific.<br />
The software has been tested on the following operating systems:
</p>
<ul>
   <li>Linux</li>
   <li>QNX</li>
   <li>OS X</li>
   <li>FreeBSD, NetBSD, OpenBSD</li>
   <li>Sun Solaris 9</li>
   <li>Windows XP (binary available)</li>
</ul>

<br />

<h2>Links</h2>
<ul>
   <li><a href="http://universalindent.sourceforge.net/">Universal Indent GUI</a></li>
   <li>Don't know what D is?  Check out the <a href="http://dlang.org/index.html">D Programming Language website</a>.</li>
   <li><a href="http://www.linuxlinks.com">Linux Links</a></li>
</ul>
<h2>Distributions that package Uncrustify</h2>
<ul>
   <li><A href="http://www.debian.org/">Debian</A>
   <li><A href="http://fedora.redhat.com/">Fedora</A></li>
   <li><A href="http://www.altlinux.com/">ALT Linux</A></li>
   <li><A href="http://www.t2-project.org/">T2</A></li>
   <li><A href="http://www.macports.org/">MacPorts</a></li>
   <li><A href="http://www.freebsd.org/cgi/ports.cgi?query=uncrustify">FreeBSD Ports (textproc/uncrustify)</a></li>
   <li><A href="http://openports.se/textproc/uncrustify">OpenBSD Ports (textproc/uncrustify)</a></li>
   <li>Others?</li>
</ul>
</div>
</div>
</td>
</tr>
</table>
</div>
<br />
<a href="http://sourceforge.net/donate/index.php?group_id=153164">"Support This Project"</a>
<br />

</body>
</html>