You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
184 lines
6.3 KiB
184 lines
6.3 KiB
<!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>
|