On 16.12.2019 17.39, Ulf Hermann wrote: > Hi, > > I would like to request a new module and repository for an > implementation of the JSON RPC and Language Server protocols: > > Name of the repository: qt/qtlanguageserver.git > Description: An implementation of the language server protocol > Responsible person: Ulf Hermann > Gerrit user/email: ulf.herm...@qt.io > > You can see my previous work on this in the context of the QML language > server here: > > https://codereview.qt-project.org/c/qt/qtdeclarative/+/243394 > https://codereview.qt-project.org/c/qt/qtdeclarative/+/233778 > > The relevant specifications can be found at: > > https://www.jsonrpc.org/specification > https://microsoft.github.io/language-server-protocol/specifications/specification-3-14/ > > The JSON RPC implementation might be moved to QtNetwork, instead. I'm > eager to hear opinions on this. Mind that the JSON RPC protocol > implementation doesn't depend on any network classes, but only on > QIODevice. Indeed you can run many existing language servers over stdio. > > Mind also that the language server _protocol_ implementation shown in > above changes can be used to build both language servers _and_ clients > for language servers. The basic primitives are automatically generated > from the specification itself. > > There currently is no good place for the language server code in any > existing modules. We should not commit it to qtdeclarative, as it would > be useful for a number of other applications, too: > > It turned out that we need a language server protocol implementation not > only for the QML language server, but also for the language client in Qt > Creator. Qt Creator is using its own, manually written, client-only, > implementation right now. We should strive to maintain only one Qt-based > language server protocol implementation. > > Another idea is to add rich support for CSS in the style editor of the > designer by using some existing CSS language server. More generally, we > could make the integration of existing Qt text editing facilities with > language support (auto-completion, diagnostics, etc) easier by providing > a generic language server API.
The repository qt/qtlanguageserver has been created. -- Kari _______________________________________________ Development mailing list Development@qt-project.org https://lists.qt-project.org/listinfo/development