Language Server Protocol
E190930
The Language Server Protocol is an open standard that enables code editors and IDEs to provide language-specific features like autocompletion, go-to-definition, and refactoring through external language servers.
All labels observed (1)
| Label | Occurrences |
|---|---|
| Language Server Protocol canonical | 3 |
Statements (61)
| Predicate | Object |
|---|---|
| instanceOf |
communication protocol
ⓘ
open standard ⓘ |
| abbreviation | LSP ⓘ |
| category | developer tools standard ⓘ |
| defines |
capabilities negotiation between client and server
ⓘ
initialization and shutdown procedures for language servers ⓘ lifecycle of text documents in the editor ⓘ set of JSON-RPC messages between client and server ⓘ |
| designedFor | integrating language-specific tooling into code editors and IDEs ⓘ |
| developedBy |
Eclipse Che
ⓘ
surface form:
Codenvy
Microsoft ⓘ Red Hat ⓘ |
| documentation | https://microsoft.github.io/language-server-protocol ⓘ |
| enablesFeature |
code actions
ⓘ
code completion ⓘ code lens ⓘ diagnostics ⓘ document formatting ⓘ document symbols ⓘ find references ⓘ go to definition ⓘ hover information ⓘ range formatting ⓘ rename refactoring ⓘ semantic tokens ⓘ signature help ⓘ workspace symbols ⓘ |
| firstIntroducedBy |
Visual Studio Code
ⓘ
surface form:
Microsoft Visual Studio Code team
|
| goal |
decouple language-specific tooling from editors and IDEs
ⓘ
reduce duplication of language support implementations across tools ⓘ |
| governingBody | Language Server Index Format and Protocol working group ⓘ |
| hostedAt | GitHub ⓘ |
| license |
Creative Commons license
ⓘ
surface form:
Creative Commons Attribution 4.0 International
|
| relatedTo |
Debug Adapter Protocol
ⓘ
Language Server Index Format ⓘ |
| repository | https://github.com/microsoft/language-server-protocol ⓘ |
| supportsConcept |
language clients
ⓘ
language servers ⓘ |
| supportsLanguage |
C#
ⓘ
C++ ⓘ Go ⓘ Java ⓘ JavaScript ⓘ Python ⓘ Rust ⓘ TypeScript programming language ⓘ
surface form:
TypeScript
many other programming languages ⓘ |
| supportsTransport |
Transmission Control Protocol
ⓘ
surface form:
TCP
WebSockets Standard ⓘ
surface form:
WebSocket
standard input and output ⓘ |
| usedBy |
Atom
ⓘ
Eclipse IDE ⓘ Emacs family of editors ⓘ
surface form:
Emacs
IntelliJ-based IDEs via plugins ⓘ Neovim ⓘ Sublime Text ⓘ Theia ⓘ Vim ⓘ Visual Studio Code ⓘ |
| usesEncoding | UTF-8 ⓘ |
| usesTransport | JSON-RPC ⓘ |
Referenced by (3)
Full triples — surface form annotated when it differs from this entity's canonical label.