Crystal REVS frees you from low-level editing.
It formats code and comments in real time - as soon as you complete
the current declaration or statement.
Suppose you enter a long expression that does not fit within
the current line
Crystal REVS breaks the expression into separate
parts based on operator precedence
Places each part on successive lines
Indents each part as per operator precedence
The formatted expression is easier to
read if ( *cp == 0
&& ( oldIndex < ( JSVAL_INT_MAX
/ 10 )
||
( oldIndex == ( JSVAL_INT_MAX / 10 ) && c < 10 )
) )
Crystal REVS does a lot more than indenting. It lines up successive
assignment statements, successive declarations, splits long
expressions as per operator precedence. It formats macro #definitions,
array-initializers and learns how you initialize the structure
variables.
Why spend your time on low-level editing when you edit a
declaration or a statement?
Why struggle with hard-to-read code?
With automatic formatting, you accomplish a lot more in less
time.
Overview of Auto-Formatting
Crystal REVS formats code in real time. Unlike batch-mode
beautifiers, your code is always easy to read
Crystal REVS formats code and comments both. It maintains
the association between code and related comments
Lines up declared objects in successive declarations
Lines up assignment operators in successive assignments
Formats long expressions as per operator precedence
Formats the contents of macro definitions, especially
when the expansion contains multiple statements
Formats large arrays with initializers
Learns how you initialize structure variables
Effects of macro-calls are taken into account during indenting,
brace-matching etc