This grammar allows you to filter, group and color your BlockDiagrams and StateMachines in Sigasi Studio.

Grammar

DiagramConfiguration
Header { { GraphicsRestriction } { GraphicsDeclaration } { ConfigurationBlock } }
Header
BlockDiagramHeader
| StateMachineHeader
BlockDiagramHeader
diagram FullyQualifiedName
StateMachineHeader
statemachine FullyQualifiedName : hdl_ID
FullyQualifiedName
QualifiedNamePart { . QualifiedNamePart }
QualifiedNamePart
graphics_ID
| hdl_ID
Regex
regex STRING
GraphicsRestriction
BlockVisibilityRestriction
BlockVisibilityRestriction
show : BlockVisibilityRestrictionType
BlockVisibilityRestrictionType
instantiations
GraphicsDeclaration
GroupDeclaration
ConfigurationBlock
Type Identifiers { { Configuration
| ConfigurationBlock } }
Configuration
hide
| collapse
| color GraphicsColor
GroupDeclaration
def Type group ID ( Identifiers )
Identifiers
Identifier { , Identifier }
Identifier
DeclaredIdentifier
| RegexIdentifier
DeclaredIdentifier
FullyQualifiedName
RegexIdentifier
Regex
GraphicsColor
red
| green
| blue
| aqua
| purple
| yellow
| orange
| gray
| white
Type
block
| port
| wire
| state
ID
[ ^ ] a-zA-Z_ { a-zA-Z0-9_ }
STRING
DQ_STRING
| SQ_STRING
DQ_STRING
" { \ char
| not (\ | ") } "
SQ_STRING
' { \ char
| not (\ | ') } '