This extension adds support for the Modelica, Optimica, MetaModelica and Susan languages to Visual Studio Code. This extension is meant to use for developers of OpenModelica. If you want Modelica support use the great extension Modelica by SimplyDanny which is the base for this extensions.
- Download the VS Code extension file.
- Open the command palette using
Ctrl+Shift+P
orF1
. - Type
extensions: Install from VSIX...
in the command palette. - Browse to downloaded *.vsix file.
- On the bottom-right corner, click on the select language mode button, if you have created a new file it should display Plain Text.
- Select MetaModelica or Susan or Modelica in the list of languages.
Alternatively, saving the file with a .mo
extension will allow VS Code to
understand that it is a MetaModelica file and automatically select the language.
If it is a Modelica file one has to manually change the language mode to
Modelica. The .mop
extension will be associated with the Optimica language
respectively. The .tpl
extension will be associated with Susan Template
language. Additional extensions can be connected to the languages in any
settings.json
file using the "files.associations"
setting.
Just start to type and choose a snippet that may be proposed. Alternatively, use
Ctrl+Shift+P
to open the command palette and type Insert Snippet
to see a
list of all possible snippets to choose from.
There is a dev container available to build and publish the extension. See https://code.visualstudio.com/api/working-with-extensions/publishing-extension#installation for more details on the publishing process.
- Node.js
- VSCode
- sh (or translate yaml2json.sh to your shell equivalent)
npm install
Translate the *.tmGrammar.yaml
files to *.tmGrammar.json
JSON files.
Start build task (Ctrl+Shift+B)
npm run prebuild
Run the tmGrammer tests
task:
- Open Command Palette (Ctrl+Shift+P)
- Type
tasks: Run task
- Choose
tmGrammer tests
or run it manually:
npm run test
Generate .vsix package file:
npm run build
Visual Studio Marketplace
npx vsce login <publisher name>
npx vsce publish
Open VSX
npx ovsx publish metamodelica-<version>.vsix -p <token>
This extension is based on the Modelica extension SimplyDanny/modelica-language-vscode.