Jindent supports more than 300 formatting settings:
- Intelligent line wrapping
Jindent knows several algorithms to perform line wrapping and tries always to find the best fitting solution. The line wrapping algorithms keep attention of operator precedence, prefer low level wrapping, and much more. [screenshot]
- Scope related indentation
Several options to control indentation of blocks, tokens and scopes by white spaces and tabulators. [screenshot]
- Brace style transformation
Separated and fine grained control of brace style settings for classes, interfaces, annotation types, methods, constructors, statements, enums and try-catch-blocks. Additionally the most common braces styles are already available as presets: K&R/Kernal, BSD/Allman, Whitesmiths and Gnu. [screenshot]
- Insertion of parantheses and braces
To improve readability of source code Jindent is able to insert parentheses and braces into certain statements and conditions without changing its functionality. [screenshot]
- Blank line and white space formatting
Support for very fine grained white space and blank line control before and after tokens. [screenshot]
- Semantic source code separation
Automatical insertion of blank lines and special comments to separate source code elements by its semantic. [screenshot]
- Sorting of source code elements
Very fine graind sorting options for: fields, initializers, annotation types, constructors, methods and import declarations. Sorting keys can be modifier, types, names, parameters count, assignments and many more. [screenshot]
- Javadoc validation, formatting and template-driven generation
JavaDocs can be autmatically validated for parameters, exceptions, return types and generics. Missing JavaDoc tags or completely missing JavaDocs can be inserted by customizable templates. Obsolete JavaDoc tags can be removed. [screenshot]
- Insertion and substitution of header and footer
Jindent is able to recognize header and footer comments. Missing headers/footers will be inserted or obsolete headers/footers will be regonized and substituted by new ones. [screenshot]
- Conversion between character and end-of-line encodings
Support of a lot of different encodings and text styles to read and write source codes. Therefore it is possible to convert Java files from one encoding standard to another. [screenshot]
- Understands Java 5.0 source code including SQLJ-Statements
Formatting support is enabled for all kind of Java files (Java 5.0 syntax and below) including SQLJ-statements. [screenshot]

