Unofficial VS Code extension for OpenFAST, ROSCO, and TurbSim input and output files.
- Syntax highlighting for OpenFAST-style text input files such as
.fst,.dat,.in,.inp,.out,.ipt,.ech,.wnd,.sum,.bmi, and.lin - Support for common OpenFAST module files including AeroDyn, ElastoDyn, HydroDyn, InflowWind, MoorDyn, ServoDyn, SeaState, and related driver files
- Support for ROSCO-style
DISCON.incontroller files - Support for TurbSim input files (
.inp, and.in) - Highlighting for:
- section banners and
ENDmarkers - booleans and special values like
default,unused, andnone - quoted strings and file paths
- integers, decimals, and scientific notation
- parameter names in the common
value parameter - descriptionlayout !comments and trailing inline descriptions
- section banners and
From the VS Code Marketplace (recommended):
- Open VS Code.
- Go to the Extensions view (
Ctrl+Shift+X). - Search for OpenFAST ROSCO Syntax Highlighting.
- Click Install.
From a .vsix file:
- Download the
.vsixfile from the Releases page. - Open VS Code and go to the Extensions view (
Ctrl+Shift+X). - Click the
...menu at the top right and select Install from VSIX.... - Select the downloaded file.
Once installed, any file with a supported extension (.fst, .dat, .in, .inp, etc.) will be highlighted automatically.
The grammar is built from real OpenFAST, ROSCO, and TurbSim sample files, not from a generic INI or config grammar.
It is designed to make engineering input decks easier to read without trying to fully parse every module format.
syntaxes/openfast.tmLanguage.jsonlanguage-configuration.jsonmedia/icon.png
- Install dependencies with
npm install. - Run
npm run test:grammarto check the TextMate grammar against representative sample lines. - Open this folder in Visual Studio Code.
- Press
F5to launch an Extension Development Host. - Open an OpenFAST or ROSCO input file in the new window and verify highlighting.
The project includes a minimal grammar regression script in scripts/test-grammar.mjs.
- Test cases live in
tests/grammar-cases.json - Each case checks that a representative line tokenizes with the expected TextMate scope
- Add a new case whenever you fix a highlighting bug or add support for a new OpenFAST-family pattern
Run the checks with:
npm run test:grammarTo package for sharing or publication:
- Install dependencies with
npm install - Run the grammar checks with
npm run test:grammar - Run
npm run package:vsix
Generated .vsix files are local build artifacts and should not be committed.
- Because
.datand.inare generic extensions, this extension may also match non-OpenFAST files if enabled globally. - ROSCO YAML files are intentionally not claimed by this extension because standard YAML support in VS Code is usually the better default.