https://github.com/TypeFox/yang-lsp
A Language Server for YANG
https://github.com/TypeFox/yang-lsp
language-server yang
Last synced: 6 months ago
JSON representation
A Language Server for YANG
- Host: GitHub
- URL: https://github.com/TypeFox/yang-lsp
- Owner: TypeFox
- License: apache-2.0
- Created: 2017-05-31T07:15:46.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2024-04-23T18:50:56.000Z (almost 2 years ago)
- Last Synced: 2024-05-01T11:25:49.657Z (almost 2 years ago)
- Topics: language-server, yang
- Language: Xtend
- Homepage: http://www.yang-central.org
- Size: 2.35 MB
- Stars: 49
- Watchers: 6
- Forks: 13
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# yang-lsp
[](https://github.com/TypeFox/yang-lsp/actions/workflows/main.yml)
[](https://ci.appveyor.com/project/kittaakos/yang-lsp/branch/master)
A language server for YANG (see [Language Server Protocol][lsp]).
## Usage
The language server application is available in two distributions:
- `yang-language-server_.zip` (plain language server)
- `yang-language-server_diagram-extension_.zip` (language server with
diagram extension for [sprotty][sprotty])
Both variants include start scripts to launch the background process. Connect
its input/output streams to your host application in order to communicate with
the language server.
The YANG Language Server is currently being used in
- [YANGSTER][yangster] based on [Theia][theia] (incl. diagram extension)
- [YANG VS Code][yang-vscode] available on the [VS Marketplace][yang-vscode-vsm]
- [YANG Eclipse][yang-eclipse]
## Build
```shell
git clone https://github.com/TypeFox/yang-lsp.git
cd yang-lsp/yang-lsp
./gradlew build
```
## Release Engineering
The yang-lsp is the base of multiple binaries
| Repository | Client | Binary | Bin Repo | CI | Trigger |
| -------------------------------------- | -------------- | ---------------- | ------------------- | -------------------------- | ------- |
| [yang-lsp][yang-lsp] | LSP | JAR + script | GH Action Artifacts | [GH Action][yang-lsp-ci] | GH Commit / PR |
| [yangster][yangster] | Theia Browser | Docker image | Docker Hub | [Docker Hub][yangster-ci] | GitHub hook / Jenkins pipeline|
| | Theia | Theia extension | npm | [Jenkins][yangster-ci2] | `yarn run publish` |
| [yangster-electron][yangster-electron] | Theia Electron | executables | ? | ? | ? |
| [yang-eclipse][yang-eclipse] | Eclipse | p2 update site | Eclipse Marketplace | [Jenkins][yang-eclipse-ci] | GitHub hook / Jenkins pipeline |
| [yang-vscode][yang-vscode] | VSCode | VSCode extension | VSCode Marketplace | - | `vsce` |
[lsp]: https://github.com/Microsoft/language-server-protocol
[sprotty]: https://github.com/theia-ide/sprotty
[yang-lsp]: https://github.com/TypeFox/yang-lsp
[yang-lsp-ci]: https://github.com/TypeFox/yang-lsp/actions/workflows/main.yml
[theia]: https://github.com/theia-ide/theia
[yangster]: https://github.com/theia-ide/yangster
[yangster-ci]: https://hub.docker.com/r/typefox/yangster/builds
[yangster-ci2]: http://services.typefox.io/open-source/jenkins/job/yangster/
[yangster-electron]: https://github.com/theia-ide/yangster-electron
[yang-vscode]: https://github.com/TypeFox/yang-vscode
[yang-vscode-vsm]: https://marketplace.visualstudio.com/items?itemName=typefox.yang-vscode
[yang-eclipse]: https://github.com/theia-ide/yang-eclipse
[yang-eclipse-ci]: http://services.typefox.io/open-source/jenkins/job/yang-eclipse/