R:Style Featured Highlights:
•Checks illegal or ambiguous commands
•Checks missing, unmatched, or incorrect quotes
•Checks unmatched parenthesis
•Finds missing RETURNs & ENDs, adds them
•Finds missing or out of place structures, IF, THEN, ELSE, ENDIF, SWITCH, ENDSW, WHILE, THEN, ENDWHILE, BREAK
•Duplicate block names in APP files
•Checks illegal use of command words in code or block names
•Detects duplicate LABEL names
•Checks ill advised RETURN from within WHILE or SWITCH
•Checks illegal dotted variables
•Checks dash comments extending beyond column 79 (breaks codelock)
•Support for finding misspelled or illegal words
•Integration of RStyle* .PRE, .EXP, .CAS, .VAR, .NEW keyword formatting files into a built-in control panel
•Misterminated lines (= instead of +)
•Local or global configurations
•NO file size limitation
•Improved syntax checking for the SELECT command
•Saves user preferences
•Added compatibility for comments using left and right brace characters. {}
•Fail-safe R:Style configuration file lookup
•Read-only mode available for those situations where you are especially paranoid!
•Cleans up excess EOF markers created by some editors
Optional Error Checking:
•Optional automatic (and configurable) indenting of structures:
IF
statements...
ELSE
statements...
ENDIF
WHILE
statements...
ENDWHILE
SWITCH
CASE -- optional switch to line up CASE with SWITCH
statements...
BREAK
DEFAULT
statements...
ENDSW
Many other styles supported.
•Labels can be made flush left, or outdented one level from the surrounding code. When either of these options are in effect, the rest of the code is indented one level to make room for the LABEL outdenting. Lines that begin with either kind of comment are not moved.
•Many different styles of indenting of structures and continued lines are available, including a very elaborate mixed indenting style which makes complex SQL commands more readable.
•Additional control of indenting and outdenting with --INDENT and --OUTDENT comments. Useful for making GOTO loops clearer.
•Lines starting with 3 dashes will be forced flush-left. This is an extension of the R:BASE -- comment.
•Smart line wrapping option. Finds words broken across lines and automatically fixes them if the wrapping option is turned on. Dual column wrapping where code wraps wide when not followed by dash comment and wraps short when followed by dash comment. Dash comments following code move to designated column. Wrap columns are user-defined. Lines not to be wrapped can be flagged by appending a semicolon before the dash comment.
•Optional unwrapping
•Optional keyword casing: upper case, lower case
•Optional keyword expansion
•Optional Non-keywords casing: upper case, lower case
•Optional custom mixed casing for non-keywords
•Optional custom mixed casing for variables
•Optional custom word expansions
•Can substitute <= for LE, <> for NE, etc
•Specify files to process with wildcards
•Exclude files to process with wildcards
•Quote: single or double. SET QUOTES tracked to process files correctly
•BLANK, DELIMIT and SEMI can be defined and tracked. These settings are recognized and used by all features.
•Support for SET SEMI ON
•Option to split a SET VAR statement with multiple parts into many separate commands which are easier to debug with TRACE