Shopping Cart | Contact us | Partners | Customers

Crystal FLOW
Crystal REVS
Why Crystal REVS
Screen Shots
System Requirements
Dynamic Token Panels
Interactive Flowcharts
MISRA C Static Checking
HTML Documentation
Comment Generator & Editor
Call/ Callers/File Trees
Auto Formatting
Premium Editing
Code Navigation
Premium Browsing
What's New

Understand code in less time with Crystal C/C++
View Demo
Crystal FLOW for C
Crystal FLOW for C++
Crystal REVS for C
Crystal REVS for C++

Auto Formatting

Home Products Crystal REVS Auto Formatting Try Now

Feature: Auto Formatting - PDF

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

if ( *cp == 0 && ( oldIndex < ( JSVAL_INT_MAX / 10 ) || ( oldIndex == (
          JSVAL_INT_MAX / 10 ) && c < 10 ) ) )

  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

Customization as per your preference

  Use K & R style of braces
  Set Code-field width and Comment-field width
  Number of spaces per indent
  Replace tabs with spaces
  Customize spaces between various lexical unit
  Partial/Full formatting
  Font Selection and more…
  © Copyright 2017, SGV Sarc, All Rights Reserved. | Privacy Policy | Disclaimer | Sitemap