summaryrefslogtreecommitdiff
path: root/cli/lsp/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'cli/lsp/README.md')
-rw-r--r--cli/lsp/README.md18
1 files changed, 18 insertions, 0 deletions
diff --git a/cli/lsp/README.md b/cli/lsp/README.md
index 87a662fc3..c43590f60 100644
--- a/cli/lsp/README.md
+++ b/cli/lsp/README.md
@@ -14,3 +14,21 @@ integrated into the command line and can be started via the `lsp` sub-command.
When the language server is started, a `LanguageServer` instance is created
which holds all of the state of the language server. It also defines all of the
methods that the client calls via the Language Server RPC protocol.
+
+## Custom requests
+
+The LSP currently supports the following custom requests. A client should
+implement these in order to have a fully functioning client that integrates well
+with Deno:
+
+- `deno/cache` - This command will instruct Deno to attempt to cache a module
+ and all of its dependencies. It expects an argument of
+ `{ textDocument: TextDocumentIdentifier }` to be passed.
+- `deno/performance` - Requests the return of the timing averages for the
+ internal instrumentation of Deno.
+- `deno/virtualTextDocument` - Requests a virtual text document from the LSP,
+ which is a read only document that can be displayed in the client. This allows
+ clients to access documents in the Deno cache, like remote modules and
+ TypeScript library files built into Deno. It also supports a special URL of
+ `deno:/status.md` which provides a markdown formatted text document that
+ contains details about the status of the LSP for display to a user.