Provides the bridge between the Inmanta compiler and Visual Studio Code IDE, by implementing a Language Server.
For recent versions of inmanta-core
(>=6
), the server takes ownership of the Python environment it runs in and installs any
modules and module dependencies in that environment. For older versions of inmanta-core
, a separate compiler venv is used,
which can be configured with the compilerVenv
option.
This is alpha software, it may or may not work
-
mkvirtualenv -p python3 lstesting
-
pip install inmantals
-
install the inmanta extension via marketplace
-
change config for the extension (ctrl+,)
- set
inmanta.pythonPath
to the virtual env you just created~/.virtualenvs/lstesting/bin/python3
- set
inmanta.ls.enabled
totrue
- set
- navigate-to-definition on types
- docstring display on hover
- find references to a symbol (e.g. right-click > Find All References)
- supports working on an Inmanta project or an Inmanta module
- work with incorrect models (needs to compile, all or nothing)
If compilation fails with the message "no module named x" where x is a Python module, you might need to clean up the virtual environments used by the compiler. This issue can be caused by running the compiler from multiple different environments. To clean up the virtual environment, remove the .env directory in the Inmanta project directory as well as the compiler venv specified by the client, if it exists.
https://microsoft.github.io/language-server-protocol/specification