und is the command-line interface to Understand — script project creation, analysis, CodeCheck, metrics, and reports, locally or in CI.
Run Understand from the command line · Headless workflow: create, analyze, check, report
und Settings Reference
Every project setting and its options, across all languages. Apply them with the settings command (or at create time); view a project's current values with und list -all settings <project>. See also Settings Examples.
--------------------------General Settings-------------------------
Option Current Setting Available Settings
History Options:
ComparisonProjectPath None
GitRepositoryDirectory None
Dependency Options:
DependencyExcludeStandard On On/Off
DependencyUseIncludes On On/Off
DependencyMode Link Compile/Link
File Options:
OpenFilesAsReadOnly Off On/Off
EnforcePortability Off On/Off
MaxFileSizeParsed 10 MB 2-150 MB
FileEncoding UTF-8 UTF-8
Other Possible File Encodings are:
(platform dependent; run `und list settings` to see this machine's list)
Languages (+ if in project):
+ Ada + Assembly
+ Basic + C++
+ C# + Fortran
+ Java + Jovial
+ Pascal + Python
+ Rust + VHDL
+ Web
FileTypes:
Extension Language Extension Language Extension Language
.C C++ .F Fortran .F90 Fortran
.H C++ .TXT Text .a Ada
.ada Ada .adb Ada .ads Ada
.asm Assembly .bat MSDos Batch .c C
.cbl COBOL .cc C++ .cgi Perl
.cjs Javascript .cob COBOL .cpl Jovial
.cpp C++ .cpy COBOL .cs C#
.css CSS .cts TypeScript .cu CUDA
.cuh CUDA .cxx C++ .dart Dart
.dfm Delphi .dpr Delphi .f Fortran
.f03 Fortran .f77 Fortran .f90 Fortran
.f95 Fortran .fmx Delphi .for Fortran
.ftn Fortran .go Go .gpr Ada
.h C++ .hh C++ .hpp C++
.htm Html .html Html .hxx C++
.inl C++ .java Java .jov Jovial
.js Javascript .m Objective-C .mjs Javascript
.mm Objective-C++ .mts TypeScript .pas Pascal
.php Php .pl Perl .plm Plm
.pm Perl .py Python .rs Rust
.s Assembly .sp Pascal .sql Sql
.tcl Tcl .ts TypeScript .tsx TypeScript
.txt Text .upy Python .v Verilog
.vb Basic .vh Verilog .vhd VHDL
.vhdl VHDL .xml Xml
--------------------------Metric Settings--------------------------
Option Current Setting Available Settings
WriteColumnTitles On On/Off
AddUniqueNameColumn Off On/Off
ShowFunctionParameterTypes Off On/Off
ShowDeclaredInFile Off On/Off
DeclaredInFileDisplayMode N/A NoPath/FullPath/RelativePath
FileNameDisplayMode NoPath NoPath/FullPath/RelativePath
OutputFile <path>
ShowLineCountMetrics On On/Off
InactiveLines Exclude Exclude/Include/Both
ShowStatementCountMetrics On On/Off
BreakdownCountsByWebLanguage Off On/Off
Cyclomatic Normal All/Normal/Strict/Modified/StrictModified
ShowMaximumNesting On On/Off
ShowPaths Off On/Off
ShowKnots Off On/Off
ShowEssential Off On/Off
ShowInheritanceMetrics On On/Off
ShowMethodAndVariableCountMetrics
On On/Off
ShowCouplingAndCohesionMetrics On On/Off
ShowDefaultSummaryMetrics On On/Off
ShowAggregatedFileMetrics On On/Off
ShowAggregatedFunctionMetrics Off On/Off
ShowAggregatedClassMetrics Off On/Off
Metrics (+ if selected):
AltAvgLineBlank AltAvgLineCode
AltAvgLineComment AltCountLineBlank
AltCountLineCode AltCountLineComment
ArchCurDepth ArchMaxChildDepth
AvgCountLine AvgCountLineBlank
AvgCountLineBlankWithInactive AvgCountLineCode
AvgCountLineCodeWithInactive AvgCountLineComment
AvgCountLineCommentWithInactive AvgCyclomatic
AvgCyclomaticModified AvgCyclomaticStrict
AvgCyclomaticStrictModified AvgEssential
AvgEssentialStrictModified AvgLine
AvgLineBlank AvgLineCode
AvgLineComment BidirectionalDepsFound
BidirectionalDepsPercent CBRIMaxCBO
CBRIMaxRFC CBRIMaxWMC
CBRIMaxWMCM CBRIOverlyComplexFiles
CBRIOverlyComplexFilesPercent CBRIThresholdViolations
CBRIUsefulCommentToCodeRatio CBRIUsefulComments
CBRIUsefulLOC CCViolDensityCode
CCViolDensityLine CallByCountLineCode
CallByDepth CallByNodes
CallBySumCyclomatic CallCountLineCode
CallNodes CallSumCyclomatic
CognitiveComplexity ComponentReuse
CorePercentage CoreSize
CountAnalysisError CountAnalysisWarning
CountArchChildren CountArchChildrenRecursive
CountArchEnts CountArchEntsRecursive
CountCCViol CountCCViolType
CountCFileExternalFunctionsUsed CountCFileExternalMacrosUsed
CountCFileExternalTypesUsed CountCFileExternalVariablesUsed
CountCFileGlobalConstants CountCFileGlobalFunctions
CountCFileGlobalMacros CountCFileGlobalTypes
CountCFileGlobalVariables CountCFileLocalConstants
CountCFileLocalFunctionStaticVariables CountCFileLocalFunctions
CountCFileLocalMacros CountCFileLocalTypes
CountCFileLocalVariables CountCFileMemberFunctions
CountCFileMemberTypes CountCFileMemberVariables
CountCallby CountCallbyUnique
CountCalls CountCallsUnique
CountClassBase CountClassCoupled
CountClassCoupledBatch CountClassCoupledModified
CountClassDerived CountDeclClass
CountDeclClassMethod CountDeclClassVariable
CountDeclExecutableUnit CountDeclFile
CountDeclFileCode CountDeclFileHeader
CountDeclFunction CountDeclInstanceMethod
CountDeclInstanceVariable CountDeclInstanceVariableInternal
CountDeclInstanceVariablePrivate CountDeclInstanceVariableProtected
CountDeclInstanceVariableProtectedInternal CountDeclInstanceVariablePublic
CountDeclMethod CountDeclMethodAll
CountDeclMethodConst CountDeclMethodDefault
CountDeclMethodFriend CountDeclMethodInternal
CountDeclMethodPrivate CountDeclMethodProtected
CountDeclMethodProtectedInternal CountDeclMethodPublic
CountDeclMethodStrictPrivate CountDeclMethodStrictPublished
CountDeclModule CountDeclProgUnit
CountDeclProgunit CountDeclProperty
CountDeclPropertyAuto CountDeclSubprogram
CountDepRefsIn CountDepRefsOut
CountDepsIn CountDepsOut
CountDirectDepRefsIn CountDirectDepRefsOut
CountDirectDepsIn CountDirectDepsOut
CountEarlyExit CountExit
CountGlobalsModified CountGlobalsModifiedUnique
CountGlobalsSet CountGlobalsSetUnique
CountGlobalsUsed CountGlobalsUsedSetModified
CountGlobalsUsedSetModifiedUnique CountGlobalsUsedUnique
CountGoTo CountIncludeBy
CountIncludes CountInput
CountLine CountLineBlank
CountLineBlankHtml CountLineBlankJavascript
CountLineBlankPhp CountLineBlankWithInactive
CountLineBlank_Html CountLineBlank_Javascript
CountLineBlank_Php CountLineCode
CountLineCodeDecl CountLineCodeExe
CountLineCodeJavascript CountLineCodePhp
CountLineCodeWithInactive CountLineCode_Javascript
CountLineCode_Php CountLineComment
CountLineCommentHtml CountLineCommentJavascript
CountLineCommentPhp CountLineCommentWithBefore
CountLineCommentWithInactive CountLineComment_Html
CountLineComment_Javascript CountLineComment_Php
CountLineHtml CountLineInactive
CountLineJavascript CountLinePhp
CountLinePreprocessor CountLine_Html
CountLine_Javascript CountLine_Php
CountMajorDepsIn CountMajorDepsOut
CountModifies CountModifiesUnique
CountObjectsModified CountObjectsModifiedUnique
CountObjectsSet CountObjectsSetUnique
CountObjectsUsed CountObjectsUsedSetModified
CountObjectsUsedSetModifiedUnique CountObjectsUsedUnique
CountOutput CountPackageCoupled
CountParams CountPath
CountPathLog CountSemicolon
CountSets CountSetsUnique
CountStmt CountStmtDecl
CountStmtDeclJavascript CountStmtDeclPhp
CountStmtDecl_Javascript CountStmtDecl_Php
CountStmtEmpty CountStmtExe
CountStmtExeJavascript CountStmtExePhp
CountStmtExe_Javascript CountStmtExe_Php
CountUseSetModify CountUseSetModifyUnique
CountUses CountUsesUnique
CoverageFunctionsFound CoverageFunctionsHit
CoverageFunctionsPercent CoverageHits
CoverageLinesFound CoverageLinesHit
CoverageLinesPercent Cyclomatic
CyclomaticModified CyclomaticStrict
CyclomaticStrictModified DirPropagationCost
DirectFanIn DirectFanInNoCache
DirectFanOut DirectFanOutNoCache
DuplicateLinesOfCode DuplicateLinesOfCodePercent
Essential EssentialStrictModified
GitAuthors GitAvgCoupling
GitCohesion GitCommits
GitCoupledFiles GitDaysSinceCreated
GitDaysSinceLastModified GitMajorContributors
GitMaxCoupling GitMinorContributors
GitOwnership GitStrongCoupledFiles
HISNOMV HalsteadDifficulty
HalsteadDistinctOperands HalsteadDistinctOperators
HalsteadEffort HalsteadLength
HalsteadMaintainIdx HalsteadTotalOperands
HalsteadTotalOperators HalsteadVocabulary
HalsteadVol IncludeByCountLineCode
IncludeByDepth IncludeByNodes
IncludeBySumCyclomatic IncludeCountLineCode
IncludeDepth IncludeNodes
IncludeSumCyclomatic IsRecursive
IsRecursiveUsePtr Knots
LCOM4 LanguageScope
MaxCallDepth MaxCyclomatic
MaxCyclomaticModified MaxCyclomaticStrict
MaxCyclomaticStrictModified MaxEssential
MaxEssentialKnots MaxEssentialStrictModified
MaxInheritanceTree MaxNesting
MinEssentialKnots MinRecursiveDepth
NestedComplexity PercentLackOfCohesion
PercentLackOfCohesionModified PercentOfParentCodeLines
PercentOfParentEntities PercentOfRootCodeLines
PercentOfRootEntities PropagationCost
RatioCommentToCode RatioCommentsWithBeforeToCode
RatioSetModifyToUse RatioUseToSetModify
SecondCoreSize StabilityIndex
SumCyclomatic SumCyclomaticModified
SumCyclomaticStrict SumCyclomaticStrictModified
SumEssential SumEssentialStrictModified
VisibleFanIn VisibleFanInNoCache
VisibleFanOut VisibleFanOutNoCache
--------------------------Report Settings--------------------------
Option Current Setting Available Settings
DisplayCreationDate Off On/Off
DisplayParameters Off On/Off
IndexByMethod Off On/Off
GroupByDirectory Off On/Off
DisplayHeaderText Off On/Off
DisplayUserHeaderText Off On/Off
UserHeaderText
FileNameDisplayMode Short Full/Short
GenerateHTMLReport On On/Off
NumberofPages Alphabetic Single/Alphabetic/NEntity
OutputDirectory <path>
HTMLClearDirectory Off On/Off
CustomHTMLTitlePage No Custom Title Page
GenerateTextReport On On/Off
NumberOfFiles Single Single/Separate (per Report)
OutputFileSingle <path>
TextClearDirectory N/A
OutputDirectorySeparate N/A
Reports (+ if selected):
+ Data Dictionary + File Contents
+ Program Unit Cross Reference + Object Cross Reference
+ Type Cross Reference + Macro Cross Reference
+ Include File Cross Reference + Declaration Tree
Extend Tree Invocation Tree
+ Simple Invocation Tree + Imports
+ With Tree + Simple With Tree
+ Generic Instantiation + Exception Cross Reference
+ Renames + Program Unit Complexity
+ Project Metrics + Program Unit Metrics
+ File Metrics + File Average Metrics
+ Fortran Extension Usage + Class Metrics
+ Class OO Metrics + Implicitly Declared Objects
+ Uninitialized Items + Unused Objects and Functions
+ Unused Objects + Unused Types
+ Unused Program Units + Uses Not Needed
+ Withs Not Needed
--------------------------Import Settings--------------------------
File Configuration Noncode files Exclude Filter
---------------------------Ada Settings----------------------------
Option Current Setting Available Settings
Display Original Original/Upper/Lower/First/Mixed
LinkageCase Lowercase Lowercase/Uppercase
Metrics
CountAndOrOperators Off On/Off
CountExceptionsHandlers On On/Off
CountForLoops On On/Off
Optimize
CreateRecordObjectComponents Off On/Off
CreateRelationsBetweenFormalAndActualParameters
Off On/Off
OptimizeForLessMemory Off On/Off
SaveCommentsWithEntities On On/Off
PromptOnParseError On On/Off
Version Ada12 Ada83/Ada95/Ada05/Ada12
Preprocessor None None/C/Gnatprep/GreenHills/Verdix
Standard <path>
Main Subprograms:
None
Library Directories:
None
Macros:
None
-------------------------Assembly Settings-------------------------
Option Current Setting Available Settings
SystemIncludePath None
Includes:
None
Assembler: Coldfire 68K/IBM
--------------------------Basic Settings---------------------------
Option Current Setting Available Settings
Analyze Reference DLLs On On/Off
Root Namespace None
Namespaces
None
References
None
--------------------------C/C++ Settings---------------------------
Option Current Setting Available Settings
UseStrict On On/Off
C Language Standard gnu17
C++ Language Standard gnu++17
CreateUniqueEntitiesForObjectDataMembers
Off On/Off
CreateUniqueEntitiesForObjectFunctionMembers
Off On/Off
CreateReferencesInInactiveCode
On On/Off
SaveCommentsWithEntities On On/Off
SaveMacroExpansionText Off On/Off
SimplifyMacroExpansion Off On/Off
StartWorkerProcessesSerially Off On/Off
Sysroot <platform default>
MacOS Version 10.7
IOS Version 5.0
KillWorkerProcessAfter 2 Minutes (1-99)
BracketDepth 256
Compiler <platform default> (Available listed below)
Target "ARCH-VENDOR-OS-ENV"
Delay Template Parsing (win32) Off On/Off
MSC Version None
Include Options (Current Includes listed below)
AddFoundFilesToProject Off On/Off
AddFoundSystemFiles Off On/Off
SearchForIncludesInProject On On/Off
IgnoreDirectory Off On/Off
AnalyzeHeadersInIsolation On On/Off
DisableSystemIncludes Off On/Off
DisableCxxStdLibIncludes Off On/Off
Fuzzy-only Options (used when UseStrict is Off)
IncludePath None
AllowNestedComments Off On/Off
IgnorePreprocessorConditionals Off On/Off
TreatSystemIncludesAsUser On On/Off
AppendText None
PrependText None
CreateImplicitSpecialMemberFunctions
Off On/Off
CreateReferencesInAssembly On On/Off
CreateReferencesToLocalObjects
On On/Off
CreateReferencesToMacrosDuringMacroExpansion
Off On/Off
CreateReferencesToParameter On On/Off
SaveDuplicateReferences Off On/Off
MacroExpansionTruncation 0
UseIncludeCache On On/Off
Available Compilers:
Clang GCC
MSVC
------------------------------------------------------------
Analog Devices DSP CodeVision AVR
Cosmic 68HC11 Diab
Franklin 8051 Green Hills ARM
Green Hills PowerPC Green Hills V850
IAR 8051 IAR ARM
IAR AVR IAR EWRX
IAR RL78 IAR TI MSP430
Keil arm LAPIS CCU8
MPLAB C18 MPLAB XC16
MPLAB XC32 MPLAB XC8
National Instruments LabWindows/CVI Oracle
Renesas CC-RH Renesas H8
Renesas RL78 Renesas RX
Renesas SuperH SDCC
TI ARM TI TMS320C28x
Tasking 8051 Tasking MCS
Tasking TriCore
Includes:
None
System:
None
Auto:
None
Frameworks (strict only):
None
Ignore (fuzzy only):
None
Replacements (fuzzy only):
None
Macros:
None
Undefined:
None
----------------------------C# Settings----------------------------
Option Current Setting Available Settings
AnalyzeReferenceDLLs Off On/Off
SaveCommentsWithEntities On On/Off
Reference File / Alias List:
None
Preprocessor Symbols:
None
-------------------------Fortran Settings--------------------------
Option Current Setting Available Settings
Display Original Original/Upper/Lower/First/Mixed
Compiler Options
AllowCStyleComments Off On/Off
AllowSemicolonStarComments Off On/Off
AllowColonsInNames Off On/Off
AllowFunctionDeclarationWithoutParentheses
Off On/Off
AllowParameterDeclarationWithoutParentheses
Off On/Off
AllowQuoteInOctalConstants Off On/Off
CaseSensitiveIdentifiers Off On/Off
UsePreprocessor On On/Off
Format Auto Auto/Free/Fixed
FreeFormatFilter None
Linkage
Case Lowercase Lowercase/Uppercase/Preserve
AppendText None
PrependText None
PromptOnParseError On On/Off
SaveComments with Entities On On/Off
Truncate Auto Auto/None/72/132/Custom
Version Fortran18 Fortran77/Fortran90/Fortran95/Fortran03/Fortran08/Fortran18
IntrinsicsFile <path>
Includes:
None
Replacements:
None
Macros:
None
---------------------------Java Settings---------------------------
Option Current Setting Available Settings
Linkage
PrependText Java_
IncludePackageName On On/Off
Optimize
SaveComments with Entities On On/Off
Version 10-21 1.3/1.4/5/6/7/8/9/10-21
ClassPaths:
<platform default>
--------------------------Jovial Settings--------------------------
Option Current Setting Available Settings
ExpandCopyFileReferences Off On/Off
Display Original Original/Upper/Lower/First/Mixed
BitsInByte 8
BitsInPointer 16
BitsInWord 16
FixedPrecision 15
FloatExpBits 8
FloatPrecision 23
IntPrecision 15
Linkage
Case Lowercase Lowercase/Uppercase/Preserve
Truncate None Custom/None/72
SaveComments with Entities On On/Off
Version Jovial73 Jovial3/Jovial73
AutomaticCompoolFile None
Copy Directories:
None
--------------------------Pascal Settings--------------------------
Option Current Setting Available Settings
AllowEmbeddedSQL On On/Off
DFMConverterExe None
Display Original Original/Upper/Lower/First/Mixed
Linkage
Case Lowercase Lowercase/Preserve/Uppercase
Version Delphi Delphi/Compaq/DEC/HP/Pascal86/Turbo/VSI
PredeclaredEntitiesFile <path>
Namespaces:
None
StandardLibraryPaths:
None
Includes:
None
Macros:
None
--------------------------Python Settings--------------------------
Option Current Setting Available Settings
UseBuiltinStandard On On/Off
UseInstalledStandard On On/Off
PythonSetVersion Python2 Python2/Python3
PythonExe <platform default>
SaveComments with Entities On On/Off
AssumeNearestMatches Off On/Off
IgnoreImportErrorsInTryBlocks Off On/Off
ImportPaths:
None
---------------------------Rust Settings---------------------------
Option Current Setting Available Settings
Release Profile Off On/Off
Target Directory None
---------------------------VHDL Settings---------------------------
Option Current Setting Available Settings
Library work
----------------------------Web Settings---------------------------
Option Current Setting Available Settings
AddFoundImportedJSFiles On On/Off
AllowAspStylePhpTags Off On/Off
AllowShortPhpTags On On/Off
PhpVersion 8.3 5.3/5.4/5.5/5.6/7.0/7.1/7.2/7.3/7.4/8.0/8.1/8.2/8.3
AllowJQuery Off On/Off
AllowNodeJS Off On/Off
NodeJSSearchPath None
NodeJSPredefined <path>
SearchStringsForEntityNames Off On/Off
ModuleSearchPath None
-------------------------Override Settings-------------------------
Overrides are file/directory specific. No file/directory given for listing overrides.
Possible Override Options are:
File Type(s)
File Encoding
Ada Macros
Ada Ignore Parent Macros
C++ Auto Includes
C++ Ignore Parent Auto Includes
C++ Frameworks
C++ Ignore Parent Frameworks
C++ Includes
C++ Ignore Parent Includes
C++ Macros
C++ Ignore Parent Macros
C++ Sysroot
C++ Ignore Parent Sysroot
C++ System Includes
C++ Ignore Parent System Includes
C# References
C# Ignore Parent References
Fortran Includes
Fortran Ignore Parent Includes
Fortran Ignore Parent Macros
Fortran Macros
Java Prepend Text
Java Ignore Parent Prepend Text
Pascal Includes
Pascal Ignore Parent Includes
Pascal Macros
Pascal Ignore Parent Macros
VHDL Library
VHDL Ignore Parent Library