cbush / snooty-vscode

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

LSP Example

Heavily documented sample code for https://code.visualstudio.com/api/language-extensions/language-server-extension-guide

Functionality

This Language Server works for plain text file. It has the following language features:

  • Completions
  • Diagnostics regenerated on each file change or configuration change

It also includes an End-to-End test.

Structure

.
├── client // Language Client
│   ├── src
│   │   ├── test // End to End tests for Language Client / Server
│   │   └── extension.ts // Language Client entry point
└── package.json // The extension manifest.

Running the Sample

  • Run npm install in this folder. This installs all necessary npm modules in the client folder
  • Open VS Code on this folder.
  • Press Ctrl+Shift+B to compile the client.
  • Switch to the Debug viewlet.
  • Select Launch Client from the drop down.
  • Run the launch config.
  • If you want to debug the server as well use the launch configuration Attach to Server
  • In the [Extension Development Host] instance of VSCode, open a document in 'plain text' language mode.
    • Type j or t to see Javascript and TypeScript completion.
    • Enter text content such as AAA aaa BBB. The extension will emit diagnostics for all words in all-uppercase.

About

License:Other


Languages

Language:TypeScript 91.8%Language:JavaScript 3.3%Language:Python 3.1%Language:Makefile 1.4%Language:Shell 0.4%