Syntax highlighting for .vcomp files — the language used to create and edit
custom components for Visuino, the visual programming
tool for Arduino, ESP32, ESP8266, and many other development boards.
Without this extension, .vcomp files appear as plain text in VS Code. With it,
namespaces, classes, attributes, pins, and values are highlighted with distinct
colors, making it much easier to navigate and edit larger components.
Features
- Namespaces —
Mitov : Namespace - Classes and inheritance (including multiple inheritance) —
+TArduinoFoo : TArduinoBar, TArduinoBaz - Attributes inside brackets, supporting all argument types (strings, numbers, booleans, identifiers) —
[ArduinoInterruptMode( '_Interrupt', True, 'InterruptHandler', Change )] - Pins, properties, and type aliases —
InputPin : TOWArduinoDigitalSinkPin - Property overrides —
Enabled = False - Enums, including the exclusion prefix
-—-RGB555,-JPEG - Pascal-style literals: hexadecimal (
$1D), character codes (#0), and scientific notation (1.131836368e-3) - Line (
//) and block ({ ... }) comments - Strings, numbers, and known types (
TArduino*,Integer,Boolean, etc.)
The grammar was built and tested against hundreds of real .vcomp files from
the Visuino standard library, using the same tokenization engine that VS Code
uses internally—providing complete coverage with no "blind spots" (unhighlighted
sections).
Usage
- Install the extension.
- Open any
.vcompfile—the syntax highlighting is applied automatically, with no additional configuration required.
Requirements
None. This is a syntax-highlighting extension only (it does not require Visuino to be installed, and it performs no validation or compilation—it simply highlights the code).
Customizing Colors
The scope names used (entity.name.class.vcomp, support.type.arduino.vcomp,
keyword.other.namespace.vcomp, etc.) follow the standard TextMate naming
conventions, so they automatically inherit the colors from your current theme.
If you want to customize colors specifically for .vcomp files, add something
like this to your settings.json:
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"scope": "entity.name.class.vcomp",
"settings": { "foreground": "#4EC9B0" }
}
]
}
Issues or Unrecognized Syntax
If any part of a .vcomp file appears as plain text (without highlighting), it
likely means the grammar does not yet support that particular language
construct. Please open an issue or submit an example so the grammar can be
updated.
Unofficial extension, not affiliated with Mitov Software or Visuino.