From e2299d9e9fc49bf0e790ffad4354644521b78529 Mon Sep 17 00:00:00 2001 From: Alex Carney Date: Fri, 6 Oct 2023 22:50:28 +0100 Subject: [PATCH] Update README.md --- lib/lsp-devtools/README.md | 40 +++++++++++++------------------------- 1 file changed, 14 insertions(+), 26 deletions(-) diff --git a/lib/lsp-devtools/README.md b/lib/lsp-devtools/README.md index bf1cbf5..a2af2a5 100644 --- a/lib/lsp-devtools/README.md +++ b/lib/lsp-devtools/README.md @@ -1,35 +1,23 @@ -# lsp-devtools: Developer tooling for language servers/clients +# lsp-devtools: Developer tooling for language servers -**This is in very early development.** +This package provides a collection of cli utilities to support the development of language servers. +While this is a Python package, it can be used with language servers written in any langauge. -There are a few cli commands already +![lsp-devtools client](https://user-images.githubusercontent.com/2675694/273293510-e43fdc92-03dd-40c9-aaca-ddb5e526031a.png) -``` -usage: lsp-devtools [-h] {capabilities,record} ... - -Development tooling for language servers +Available commands: -options: - -h, --help show this help message and exit +- `agent`: Wraps a language server, allows the other commands to access the messages sent between client and server. +- `client`: **Experimental** a language client with an embedded inspector. Powered by [textual](https://textual.textualize.io/) +- `record`: Connects to an agent and record traffic to file, sqlite db or console. Supports filtering and formatting the output +- `inspect`: A text user interface to visualise and inspect LSP traffic. Powered by [textual](https://textual.textualize.io/) -commands: - {capabilities,record} - capabilities dummy lsp server for recording a client's capabilities. - record record an LSP session. -``` +See the [documentation](https://lsp-devtools.readthedocs.io/en/latest/) for more information -``` -usage: lsp-devtools record [-h] [-f FILE] [-r] [--format FORMAT] -- +## Installation -This command runs the given language server command as a subprocess and records all messages sent between client and server. +Install using [pipx](https://pypa.github.io/pipx/) -options: - -h, --help show this help message and exit - -f FILE, --file FILE save the log to a text file with the given filename - -file options: - these options only apply when --file is used - - -r, --raw record all data, not just parsed messages - --format FORMAT format string to use with the log messages +``` +pipx install lsp-devtools ```