@ul ul released this Jun 30, 2018 · 119 commits to master since this release

Assets 5

BREAKING changes:

  • no need to execute lsp-start in kakrc because making request will spin up server if it was down
  • editor.hover option was removed and auto-hover is now disabled by default. To enable it back put lsp-auto-hover-enable to kakrc after kak-lsp --kakoune invocation
  • editor.zero_char_completion option was removed and completion trigger is now configurable. Set lsp_completion_trigger option to be any command which would fail when completions request is not needed. Default is to fail when preceding character is a whitespace
  • inline diagnostics now use DiagnosticWarning and DiagnosticError faces instead of Information and Error. By default DiagnosticWarning is set to yellow foreground and DiagnosticError is set to red foreground
  • request to stop associated kak-lsp session is sent on end of Kakoune session by default. To keep kak-lsp session on Kakoune session end add lsp-stop-on-exit-disable to kakrc after kak-lsp --kakoune invocation

Other improvements:

  • set global lsp_hover_anchor true makes hover info to be displayed anchored to hovered position
  • added docstrings for commands
  • added lsp-capabilities command to show which commands are backed by language capabilities of the current buffer filetype
  • language server errors are now reported back to editor both in *debug* buffer and info box
  • info is shown if language server was not initialized yet
  • added lsp-inline-diagnostics-{enable,disable} commands to toggle inline diagnostics
  • added lsp-stop command to shutdown associated kak-lsp session from within Kakoune
  • lsp-auto-hover-insert-mode-enable command allows to have hover info in insert mode. It relies on lsp_hover_insert_mode_trigger option which contains command which should move draft cursor to the position where hover is to be requested. By default it tries to retrieve current function signature by looking for opening parenthesis and fails if any closing parenthesis is between opening one and cursor
  • rendering most of the information back to editor is now abstracted with Kakoune commands, which makes them ultimately customizable (see lsp-show-... commands in rc/lsp.kak for the reference)
  • added lsp-signature-help command to request signature help from language server
  • added lsp-document-symbol command to display buffer with current buffer's symbols
  • references are now collected in more efficient manner (shout out to @Pantoofle)
  • when config is not found, no warning is issued about loading default config anymore (this message was breaking integration with Kakoune)
  • $ is no longer escaped in completions (thanks @JJK96)
  • individual hover entries start with bullets
  • publish *diagnostics* as a filetype=make buffer
  • initialize request sets documentationFormat = plaintext client capability to ask server for plaintext documentation for completion items