CustomMissions2 Lang provides VS Code language support for CustomMissions2 .code files. It adds TextMate syntax highlighting for labels, comments, strings, numbers, keywords, operators, built-in variables, constants, functions, methods, and properties. The extension also loads the generated CustomMissions2 API database to provide function and method completion, enum value suggestions in known string arguments, hover documentation, go to definition, signature help while typing calls, and document symbols for label-based navigation in Outline, breadcrumbs, sticky scroll, and Ctrl+Shift+O.
Features
- Registers the
custommissions2language for.codefiles. - Highlights CustomMissions2 syntax with a bundled TextMate grammar.
- Provides completions for built-in globals, constructors, methods, keywords, constants, variables,
_statekeys, enum values, and labels from the current document. - Shows hover documentation and parameter hints from
data/api.json. - Supports go to definition for labels, thread/listener strings, user thread methods, variables, named parameters,
Global()/Local()variables, and_settingsentries frommeta.json. - Exposes labels as nested document symbols based on indentation.
- Configures
#comments, bracket and quote auto-closing, indentation, and off-side folding.
Requirements
No external runtime dependencies are required after installation.
Release Notes
0.2.0
- Tracks the CustomMissions2 2.2.0 API: adds
Warning,Error,FunctionExists,GetMods,GetModVersion,Translate,TriggerSexOrgasm, andStopAudio; theEventListenerobject andCommon.FunctionExistsmethod; the_eventdata/_eventnamelocals; andAudio.Play's playback-id return value. - Highlights the new built-in functions and variables, and trims oversized documentation blocks out of the generated API database.
0.1.0
- Adds go to definition for project-level labels, nested labels, thread/listener strings, dynamic function and method references, user thread methods, variables, named parameters,
Global()/Local()variables, and_settingsentries frommeta.json. - Resolves same-project
.codefiles, unsaved editor contents, nestedCreateListenerLocalscopes,_thisthread aliases, and block-aware variable initialization.
0.0.2
- Enforces tab-only indentation for CustomMissions2
.codefiles by disabling indentation detection, disabling spaces, and setting tab size to 4. - Adds API-backed completions, hover documentation, signature help, and document symbols.
- Adds the extension icon.
0.0.1
Initial CustomMissions2 language support.