microsoft / microsoft/language-server-protocol
Improve CodeDescription or add the ability to provide text documents or handle URIs
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 13k
- Forks
- 1k
- Avg merge
- 6d 1h
- Merged PRs (30d)
- 10
Description
The CodeDescription type is a dead end if the text isn't a website or file. When this server-defined URI is produced, one would assume that the server could resolve the URI as well. However, this is unfortunately an implementation detail in the clients. For example, VS Code has UriHandler and TextDocumentContentProvider.
Different ideas for improvement:
- Allow servers to provide CodeDescription text
- Add a client-to-server request
codeDescription/resolvethat is given a URI responds with something like a TextDocumentItem - Add a field
codeDescriptionProviderto ServerCapabilities
- Add a client-to-server request
- Allow servers to provide text documents
- Add a client-to-server request
textDocument/resolvethat responds with something like a TextDocumentItem - Add a field
textDocumentProviderto ServerCapabilities
- Add a client-to-server request
- Allow servers to perform arbitrary actions with a given URI
- Add a client-to-server notification
workspace/openUrithat can do anything such as open a graphical application to display the content of a URI - Add a field
uriProviderto ServerCapabilities
- Add a client-to-server notification
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the LSP 3.17 definitions for CodeDescription, ServerCapabilities, and TextDocumentItem, then compare the three proposed request or notification designs. Done means selecting and specifying one approach, including its capability field and response or notification behavior, in the protocol specification.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100