Formatting Terminal Output¶
VSG supports multiple display output using the -of command line argument.
Option | Description |
---|---|
vsg | Default output format. |
syntastic | Output format following the syntastic standard. Useful for integrating with Vim. |
summary | Output format showing the results at the file level. |
VSG¶
This is the default output format of VSG. It gives analysis statistics along with individual rule violations. This format is the most verbose of all output formats.
Here is a sample output:
================================================================================
File: design_fixed/BufFifo/BUF_FIFO.vhd
================================================================================
Phase 1 of 7... Reporting
Total Rules Checked: 83
Total Violations: 17
Error : 17
Warning : 0
----------------------------+------------+------------+--------------------------------------
Rule | severity | line(s) | Solution
----------------------------+------------+------------+--------------------------------------
port_021 | Error | 45 | Move the ( to the same line as the "port" keyword.
instantiation_034 | Error | 169 | Change to component instantiation
generic_map_003 | Error | 170 | Move the ( to the same line as the "generic map" keyword.
port_map_003 | Error | 175 | Move the ( to the same line as the "port map" keyword.
instantiation_034 | Error | 186 | Change to component instantiation
instantiation_034 | Error | 196 | Change to component instantiation
generic_map_003 | Error | 197 | Move the ( to the same line as the "generic map" keyword.
port_map_003 | Error | 202 | Move the ( to the same line as the "port map" keyword.
instantiation_034 | Error | 213 | Change to component instantiation
generic_map_003 | Error | 214 | Move the ( to the same line as the "generic map" keyword.
port_map_003 | Error | 219 | Move the ( to the same line as the "port map" keyword.
process_012 | Error | 231 | Add *is* keyword
if_002 | Error | 313 | Enclose condition in ()'s.
process_012 | Error | 337 | Add *is* keyword
if_002 | Error | 366 | Enclose condition in ()'s.
process_012 | Error | 376 | Add *is* keyword
if_002 | Error | 455 | Enclose condition in ()'s.
----------------------------+------------+------------+--------------------------------------
NOTE: Refer to online documentation at https://vhdl-style-guide.readthedocs.io/en/latest/index.html for more information.
Synastic¶
Using the syntastic format allows editors with understand that standard to use the output of VSG.
Below is the output format definition:
<status>: <filename>(<line_number>)<rule> -- <solution>
Where:
Item | Description |
---|---|
status | ERROR = Violation. WARNING = Non Violation. |
filename | The file being analyzed. |
line_number | The line number the violation occured. |
rule | The rule id that detected the violation |
solution | A description of how to fix the violation |
Here is a sample output using the syntastic option:
ERROR: design_fixed/mdct/DBUFCTL.VHD(38)entity_017 -- Move : -1 columns
ERROR: design_fixed/mdct/DBUFCTL.VHD(59)process_035 -- Move 13 columns
ERROR: design_fixed/mdct/DCT2D.VHD(329)instantiation_033 -- Add *component* keyword
ERROR: design_fixed/mdct/MDCT.VHD(83)instantiation_034 -- Change to component instantiation
ERROR: design_fixed/mdct/RAM.VHD(36)entity_017 -- Move : -12 columns
Summary¶
Using the summary format will display results at the file level. Individual rule violations will not be displayed.
Below is the output format definition:
File: <filename> <status> (<num_rules> rules checked) [<severity>: <num_severity>] ...
Where:
Item | Description |
---|---|
filename | The file being analyzed. |
status | OK = No violations detected. ERROR = Violations detected. |
num_rules | The number of rules checked before a violation was detected. |
severity | The severity type being reported. |
num_severity | The number of violations of that severity type |
Note
The <severity> and <num_severity> will be repeated for each severity type.
Here is a sample output using the summary option:
File: design/top/JpegEnc.vhd ERROR (83 rules checked) [Error: 23] [Warning: 0]
File: design/BufFifo/SUB_RAMZ.VHD OK (329 rules checked) [Error: 0] [Warning: 0]
File: design/common/RAMZ.VHD OK (329 rules checked) [Error: 0] [Warning: 0]
File: design/mdct/DBUFCTL.VHD OK (329 rules checked) [Error: 0] [Warning: 0]
File: design/mdct/DCT2D.VHD ERROR (83 rules checked) [Error: 1] [Warning: 0]
Any line with an ERROR will be reported to stderr. Any line with an OK will be reported to stdout.