Repository navigation
Annotation Syntax
type: component title: Annotation Syntax created: '2026-05-25' updated: '2026-05-25' tags:
- domain/annotation
- domain/core status: mature related:
- 'Feature Model Language'
- 'Feature Metrics View'
- 'Annotation Processing Flow' sources:
- .raw/README.md
- .raw/plugin.xml
HAnS uses lightweight comment markers and mapping files to annotate code with features.
Embedded via CodeAnnotationInjector (multi-host injector) — works in any file type.
| Marker | Usage |
|---|---|
&begin[FeatureName] |
Start of a feature code block |
&end[FeatureName] |
End of a feature code block |
&line[FeatureName] |
Single-line feature annotation |
These are parsed as comments by the host language; the injector treats them as CodeAnnotations language fragments.
| File extension | Alias | Language ID |
|---|---|---|
.feature-to-file |
.feature-file |
FileAnnotation |
.feature-to-folder |
.feature-folder |
FolderAnnotation |
Completion contributors (FileCompletionContributor) active for both FileAnnotation and FolderAnnotation.
CreateNewFileAction ("New EFA File") in the IDE New menu — creates mapping files from a template via EFAFileTemplateManager.
EFA.xml provides quick-insert templates. Available in ANY and COMMENT contexts. See Live Templates.
"Surround with Feature Annotation" in EditorPopupMenu (uses SurroundWithLiveTemplate shortcut).
Modules
Components
- Annotation Syntax
- Feature Model Language
- Feature Model View
- Feature Metrics View
- Traffic Light
- Extension Points
- Syntax Highlighting
- Live Templates
Decisions
Dependencies
Flows