Thanks to visit codestin.com
Credit goes to github.com

Skip to content

AirmiX/textX-LS

 
 

Repository files navigation

textX-LS

Build Status MIT licensed

textX-LS is a language server that provides smartness for all domain specific languages based on textX.

This repository consists of two python packages:

and a Visual Studio Code extension:

⚠️ This project is not being maintained

The former maintainers no longer have the time and/or resources to work on this project. This means that bugs will not be fixed and features will not be added unless someone else does so

If you're interested in developing textX-LS, please reply to this GitHub issue (#63).​

Required textX Generator Plugins

Building a custom VS Code extension for newly registered language is delegated to the textx-vscode generator which uses textx-coloring to produce a syntax highlighting Textmate file.

Features

  • language project registration/unregistration (editable mode is supported)
  • languages and generators preview
  • language VS Code extension generation and installation
  • model and meta-model validations
  • default syntax highlighting
  • live-reload on grammar changes (editable mode)
  • configure and run generators
  • language project scaffolding
  • optional environment configuration
  • code completion
  • jump to definition
  • find all references
  • configurable syntax highlighting
  • code folding
  • symbols tree view
  • viewX integration

Development Setup

This project requires python 3.6 and node v10.16 for development.

Installation steps:

  1. python -m venv env && source env/bin/activate
  2. pip install -r requirements.txt
  3. cd client && npm i

To register pre-commit hooks, run: pre-commit install To run pre-commit hooks manually: pre-commit run --all-files

Running the extension in VS Code:

In order to run the extension, client directory must be added as a workspace folder or opened as a root project.

Now, switch to debug view, choose Server + Client option and press F5.

A new VS Code window should be opened in examples directory.

CI/CD and Artifacts

Take a look at build process.

License

MIT

Legend

  • textX language project is a python package that registers one or more languages using a textX registration API

  • textX generator project is a python package that registers one or more generators using a textX registration API

About

Language server for domain specific languages based on textX

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 49.1%
  • Python 48.4%
  • JavaScript 1.9%
  • Shell 0.6%