Chris Kipp
Tomasz
Godzik
Ólafur Geirsson
Gabriele Petronella
Â
Â
Â
Â
Features
Editor
Client
Server
Editor
Features
Â
Â
Features
Editor
Server
Client
Â
Â
The idea behind the Language Server Protocol (LSP) is to standardize the protocol for how tools and servers communicate, so a single Language Server can be re-used in multiple development tools, and tools can support languages with minimal effort.
Â
https://microsoft.github.io/language-server-protocol/overview
Â
Â
https://microsoft.github.io/language-server-protocol/overview
Â
[Trace - 11:53:10 AM] Sending notification 'window/showMessage'
Params: {
"type": 4,
"message": "Compiling root 2s"
}
[Trace - 11:53:10 AM] Sending notification 'textDocument/publishDiagnostics'
Params: {
"uri": "file:///.../test-project/src/main/scala/example/Other.scala",
"diagnostics": []
}
[Trace - 11:53:10 AM] Sending notification 'window/logMessage'
Params: {
"type": 4,
"message": "INFO time: compiled root in 2.67s"
}
Â
Â
Â
Â
Â
Â
Â
Â
LSP
BSP
https://vimeo.com/369272491
Â
Developer tooling for Scala
Â
Â
SemanticDB is a data model for semantic information such as symbols and types about programs in Scala and other languages."
https://scalameta.org/docs/semanticdb/guide.html
Â
Â
Â
Â
Â
Metals rich code editing for Scala in VS Code Vim Emacs - Ólafur Páll Geirsson
SBTB 2019: Ólafur Geirsson, Metals - building rich IDE features beyond the Language Server Protocol
Scala Italy 2019 - Gabriele Petronella - Casting Metals, a brief history of Metals
https://get-coursier.io/