Preferences Keys

Formatting preferences are serialized as key-value pairs, by default under $DVT_USER_SETTINGS/preferences.ini.

The Settings Management mechanism allows you to reuse such preferences across your group, team, company.

Furthermore, an input file with the same format is used to configure Verissimo formatting rules, such as SVTB1.0.

Preference Name

Details

Preference Key

Default Value

Whitespace

Add whitespace after

Space separated list of tokens to add whitespace after.

ro.amiq.vlogdt/format.whitespace.add_after

Add whitespace before

Space separated list of tokens to add whitespace before.

ro.amiq.vlogdt/format.whitespace.add_before

Compact whitespace groups

When enabled, consecutive whitespace characters are trimmed to a single space character.

ro.amiq.vlogdt/format.whitespace.compact

false

Compact consecutive empty lines

Controls whether to compact consecutive empty lines.

ro.amiq.vlogdt/format.whitespace.compact_consecutive_empty_lines

false

Maximum number of consecutive empty lines

Maximum number of consecutive empty lines that can appear in a file.

ro.amiq.vlogdt/format.whitespace.maximum_nof_consecutive_empty_lines

1

Insert spaces for tabs

When enabled, indentation will use space characters, otherwise tabs will be used.

org.eclipse.ui.editors/spacesForTabs

false

Remove new line after

Space separated list of tokens to remove new lines after.

ro.amiq.vlogdt/format.whitespace.remove_nl_after

Remove new line before

Space separated list of tokens to remove new lines before.

ro.amiq.vlogdt/format.whitespace.remove_nl_before

Tab width

Controls the size of a tab in spaces.

org.eclipse.ui.editors/tabWidth

4

Trim end of line whitespace

When enabled, end of line whitespace is deleted.

ro.amiq.vlogdt/format.whitespace.trim_end_of_line

true

Trim whitespace lines

When enabled, whitespace line are deleted.

ro.amiq.vlogdt/format.whitespace.trim_whitespace_line

true

Indentation

Add new line after “begin” and before “end”

Controls whether to add a new line after begin and before end.

ro.amiq.vlogdt/format.indent.add_new_line_after_begin_and_before_end

false

Add new line after “end”

Controls whether to add a new line after end.

ro.amiq.vlogdt/format.indent.add_new_line_after_end

false

Close scope macros

A close scope macro decreases the indentation level. Open/close scope macros are paired, for example: `TEST and `ENDTEST.

ro.amiq.vlogdt/format.indent.close_scope_macros

Do not indent multi-line content of assigns

When enabled, the assign lines are not indented such as to preserve an alignment.

ro.amiq.vlogdt/format.indent.skip_assigns

false

Do not indent multi-line macro definitions

When enabled, multi-line macro definitions are not indented such as to preserve an alignment.
This option is available only when the Preprocessing preference is set to Indent, Indent and increase indentation level, Indent and increase indentation level except first or Move at first column.

ro.amiq.vlogdt/format.indent.skip.ml.macro.definitions

false

Don’t increase the indent level on

This option allows you to control which language constructs should increase indentation.

ro.amiq.vlogdt/format.indent.no_indent_keywords

Don’t indent single line comments at first column

When enabled, single line comments that start at column zero are not indented.

ro.amiq.vlogdt/format.indent.preserve_sl_comment_column_zero

true

“else”

Affects “else” placement:

  1. Leave as is

  2. On a new line (2)

  3. On the same line (3)

ro.amiq.vlogdt/format.indent.else

1 (“Leave as is”)

Ignore lines starting with

Space separated list of line prefixes. A line starting with one of the prefixes is completely ignored, that is it is not indented, nor it contributes to indentation.

ro.amiq.vlogdt/format.indent.ignore_lines

Implicit semi macros

The code formatting engine depends on detecting some delimiters for properly identifying the proper indentation scope. Semicolon or end is such a delimiter and sometimes it may be encapsulated inside a macro. This option allows you to explicitly list such macros for proper code formatting.

ro.amiq.vlogdt/format.indent.implicit_semi_macros

ovm_info(), ovm_warning(), ovm_error(), ovm_fatal(), ovm_create(), ovm_create_on(), ovm_do(), ovm_do_pri(), ovm_do_with(), ovm_do_pri_with(), ovm_do_on(), ovm_do_on_pri(), ovm_do_on_with(), ovm_do_on_pri_with(), ovm_do_seq(), ovm_do_seq_with(), ovm_send(), ovm_send_pri(), ovm_rand_send(), ovm_rand_send_pri(), ovm_rand_send_with(), ovm_rand_send_pri_with(), ovm_do_callbacks(), ovm_do_obj_callbacks(), ovm_do_task_callbacks(), ovm_do_callbacks_exit_on(), ovm_do_obj_callbacks_exit_on(), ovm_cb_trace(), ovm_cb_trace_noobj(), uvm_info(), uvm_warning(), uvm_error(), uvm_fatal(), uvm_create(), uvm_create_on(), uvm_create_seq(), uvm_do(), uvm_do_pri(), uvm_do_with(), uvm_do_pri_with(), uvm_do_on(), uvm_do_on_pri(), uvm_do_on_with(), uvm_do_on_pri_with(), uvm_do_seq(), uvm_do_seq_with(), uvm_send(), uvm_send_pri(), uvm_rand_send(), uvm_rand_send_pri(), uvm_rand_send_with(), uvm_rand_send_pri_with(), uvm_register_cb(), uvm_set_super_type(), uvm_do_callbacks(), uvm_do_obj_callbacks(), uvm_do_callbacks_exit_on(), uvm_do_obj_callbacks_exit_on(), uvm_cb_trace(), uvm_cb_trace_noobj()

Indent multi-line comments

When enabled, multi-line comments are indented.

ro.amiq.vlogdt/format.indent.multiline_comments

true

Open scope macros

An open scope macro increases the indentation level of subsequent code to visualize scoping. Open/close scope macros are paired, for example: `TEST and `ENDTEST.

ro.amiq.vlogdt/format.indent.open_scope_macros

Optional “begin”

Affects the optional “begin” blocks:

  1. Leave as is

  2. On a new line

  3. On the same line

  4. On a new line and indent

ro.amiq.vlogdt/format.indent.begin

1 (“Leave as is”)

Parameters

Affects module ports and parameters, function and task arguments, class parameters:

  1. Leave as is

  2. One per line (open parenthesis on the same line)

  3. One per line (open parenthesis on the next line)

  4. More per line

ro.amiq.vlogdt/format.indent.params

1 (“Leave as is”)

More per line if less than

Controls whether to place parameters on the same line when their number does not exceed a certain value and the Parameters preference is set to One per line (open parenthesis on the same line) or One per line (open parenthesis on the next line).

ro.amiq.vlogdt/format.indent.more_per_line_if_less_than_enable

false

More per line if less than threshold

Maximum number of parameters that can appear on a line when More per line if less than is enabled.

ro.amiq.vlogdt/format.indent.more_per_line_if_less_than_threshold

5

Preprocessing

Affects `ifdef blocks:

  1. Leave as is

  2. Indent

  3. Indent and increase indentation level

  4. Move at first column

  5. Indent and increase indentation level except first

ro.amiq.vlogdt/format.indent.preproc

1 (“Leave as is”)

Vertical Alignment

Compact whitespace for vertical align patterns

When enabled, consecutive whitespace characters are trimmed to a single space character for vertical align patterns.

ro.amiq.vlogdt/format.vertical.align.vregex.compact.whitespace

false

Enable vertical align

When enabled, this option performs vertical alignment.

ro.amiq.vlogdt/format.vertical_align

false

Independent `ifdefs

When enabled, `ifdefs are considered independent alignment scopes,

ro.amiq.vlogdt/format.vertical_align.independent_ifdefs

false

Only consecutive lines

When enabled, only consecutive lines (lines that follow each other or are separated by comment lines) are vertically aligned.

ro.amiq.vlogdt/format.vertical_align.consecutive_lines

false

Vertical align patterns

Vertically align code using patterns: By Name Port Connections, Class Declarations, Class Declarations (split dimensions), Class Variable Declarations, Class Variable Declarations (split dimensions), `defines, Function Declarations, Function Declarations (split dimensions), Function Variable Declarations, Function Variable Declarations (split dimensions), Interface Port Declarations, Interface Port Declarations (split dimensions), Interface Signal Declarations, Interface Signal Declarations (split dimensions), Module Port Declarations, Module Port Declarations (split dimensions), Module Signal Declarations, Module Signal Declarations (split dimensions), `xvm_field macros.

ro.amiq.vlogdt/format.vertical_align.vregex

Vertical align single line comments

When enabled, single line comments are aligned.

ro.amiq.vlogdt/format.vertical_align.sl_comments

false

Vertical align to open curly

When enabled, vertical align to open curly.

ro.amiq.vlogdt/format.vertical_align.curly

false

Vertical align to open parenthesis

When enabled, vertical align to open parenthesis.

ro.amiq.vlogdt/format.vertical_align.paren

false

Vertical align tokens

The lines of code inside the same scope are aligned by the specified comma separated list of vertical alignment tokens.

ro.amiq.vlogdt/format.vertical_align.tokens

\=,<\=

Line Wrapping

Enable line wrapping

When enabled, this option splits the lines of code that exceed the specified number of characters.

ro.amiq.vlogdt/format.line_wrap

false

Line width

Number of characters on a line after wrapping the line.

ro.amiq.vlogdt/format.line_wrap.threshold

80

Wrap multi line comments

Controls whether multi-line comments are wrapped.

ro.amiq.vlogdt/format.line_wrap.ml_comments

false

Wrap single line comments and move above when needed

Controls whether single line comments are wrapped and moved above the code.

ro.amiq.vlogdt/format.line_wrap.sl_comments

false

External

Format code using external program

When enabled, all other code formatting options are disabled and code formatting is performed using the given command.

ro.amiq.vlogdt/format.external

false

Format command

The command used to perform code formatting when Format code using external program is enabled.

ro.amiq.vlogdt/format.external.command

format_code %f

Post-format code using external program

When enabled, the code is post-formatted using the given command.

ro.amiq.vlogdt/format.post_external

false

Post-format command

The command used to perform code post-formatting when Post-format code using external program is enabled.

ro.amiq.vlogdt/format.post_external.command

post_format_code %f

Pre-format code using external program

When enabled, the code is pre-formatted using the given command.

ro.amiq.vlogdt/format.pre_external

false

Pre-format command

The command used to perform code pre-formatting when Pre-format code using external program is enabled.

ro.amiq.vlogdt/format.pre_external.command

pre_format_code %f