textX language server
NOTE: This project is deprecated. It is superseded by textX-LS.
This is an language server (LS) with textX integration written entirely in python. It implements Language Server Protocol.
Client Extensions
Project Structure
capabilities(implementation of LS features)commands(LS commands which includes calling some textX commands)generators(generating new extensions for our DSLs)infastructure(implementation of LS core)metamodel(textX grammars for various DSLs)
Building and running localy
- Make sure you have python 3.4+ installed on your machine.
- Create and activate virtual environment
- Install server with
pip install textxls - Run server
textxls --tcp
NOTE:
Steps 4. and 5. are required because new version of textX is not yet published on PyPI.
Language server features
Features 3:20 :
- Linting 3:25
- Go To Definition 3:35
- Find All References 3:49
- Code Completion 4:02
- Code Outline 3:20
- Exporting Metamodel dot file 4:11
- Exporting Model dot file 4:25
- Soon :)
Activation events, languages, commands, snippets
Please take a look at package.json
License
This project is licensed under the MIT License - see the LICENSE.md file for details
Acknowledgments
Some reusable parts of LS core are used from https://github.com/palantir/python-language-server.
