Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

Tags: kakoune-lsp/kakoune-lsp

Tags

v19.0.1

Toggle v19.0.1's commit message
Fixes:

- (regression from 19.0.0) fix `lsp-find-error` always assuming `--previous`.

v19.0.0

Toggle v19.0.0's commit message
Breaking changes:

- Loading the plugin (`eval %sh{kak-lsp}`) no longer adds to your `modelinefmt` option.
  We recommend adding the following to your config, which restores the old behavior,
  notably adding function names (breadcrumbs) in the modeline:

  ```kakrc
  set-option global modelinefmt "%opt{lsp_modeline} %opt{modelinefmt}"
  ```

- The goto-mode mappings (`gd`, `gr` and `gy`) are no longer added by default. We recommend you add them back with

  ```kakrc
  map global goto d <esc>:lsp-definition<ret> -docstring 'LSP definition'
  map global goto r <esc>:lsp-references<ret> -docstring 'LSP references'
  map global goto y <esc>:lsp-type-definition<ret> -docstring 'LSP type definition'
  ```

Additions:
- Default configuration for FSharp, Odin and Lean.
- `lsp-definition` (and `lsp-type-definition` etc.), `lsp-highlight-references`, `lsp-goto-document-symbol` now place the cursor at the beginning of the target selection instead of at the end (#859).
- Support for fetching Lean goals with `$/lean/plainGoal`.
- Command prompt completion for `lsp-execute-command`.
- `lsp-document-symbol` moves the cursor in the `*goto*` buffer to the symbol that corresponds to the main cursor position.
- `lsp-diagnostics` moves the cursor in the `*diagnostics*` buffer to the diagnostic nearest to the main cursor.
- `lsp-hover` now shows diagnostics before hover info (#819).
- `lsp-diagnostic-object` can now look for `info` and `hint` level diagnostics (#844).
- When multiple servers provide code actions, `lsp-code-actions` will now prefix code action titles with `[$server_name] `, to make it easy to filter.

Fixes:
- Actually use cmake-language-server for `cmake` type files.
- Fixed Python root resolution (removed `requirements.txt`, added `poetry.lock`) (#857).

v18.2.0

Toggle v18.2.0's commit message
Additions:

- For some languages like Rust, symbol kinds as shown by `lsp-document-symbol` or `lsp-workspace-symbol-incr` are now translated to the native keywords (e.g. from `Function` to `fn`).
  This is achieved via a configuration knob `[<server>.symbol_kinds]` in the `lsp_servers` option.
- Breadcrumbs in the modeline now show the symbol kind if `[<server>.symbol_kinds]` is configured.
- The `*diagnostics*` buffer created by `lsp-diagnostics` now shows one
  diagnostic item per line, even when the diagnostic text has multiple lines.
  Use `lsp-hover{,-buffer}` for multiline versions.
- Tweak the default configuration for `jdtls` to support their flavor of `workspace/didChangeConfiguration`.

Fixes:
- Fix crashes when receiving invalid 'lsp_servers' options or invalid text ranges from the language server.

v18.1.3

Toggle v18.1.3's commit message
Fixes:

- Use `dart language-server` instead of dart analysis server.
- Use `rust-analyzer` from path instead of `$(rustup which rust-analyzer)`.
- Fix error when `lsp-rename` is used with `lsp-enable-window`.
- Fix `lsp-object` when multiple language servers are active but some don't support `textDocument/documentSymbol`.
- Fix a regression from 18.0.0 causing crashes on some historical configurations.
- Prior versions would reuse a single language server instance
  across files with different project roots if the server supports
  `workspaceFolders`. This caused problems when using `lua-language-server`
  on multiple projects with different server-specific configuration. The
  `lsp_servers` option has learned a new config option `single_instance`,
  to explicitly control whether the given server is reused across project
  roots, overriding the detection based on `workspaceFolders`.

Additions:
- Add diagnostic code, description, source in `lsp-diagnostics` and `lsp-hover`.

v18.1.2

Toggle v18.1.2's commit message
Fixes:

- Fixed a regression from 18.1.1 causing the wrong language ID to be sent for JSX/TSX files.
- Silence errors in `*debug*` buffer when `lsp-disable` is used with optional hooks such as inlay hints.
- `lsp-disable; lsp-enable` no longer stomps auto hover hooks set by the user.

v18.1.1

Toggle v18.1.1's commit message
Fixes:

- Fixed a regression from 18.1.0 that caused crashes with some legacy configurations.
- Fixed a regression from 18.0.0 that caused crashes when a `*-sync` request was used before `lsp-enable`.
- Fixed a regression from 14.1.0 that caused `lsp-rename` to corrupt files containing multibyte characters.
- Fixed a crash after a server restart when visiting files that don't exist on disk.

v18.1.0

Toggle v18.1.0's commit message
Additions:

- Default configuration for `typst`, using `tinymist`.
- Improve default configuration for HTML/CSS/JSON language servers, fixing `lsp-formatting` and others.
- Further improve performance on systems where `TMPDIR` is not on `tmpfs`.
- Remove shell calls from most request sending, improving performance on some platforms.
- We used to send SIGKILL to language servers that fail to shutdown promptly.
  This code has been removed, giving the servers arbitrary amounts of time to exit.
- Fail properly if a crashed session failed to clean up.

Fixes:
- Fix a race condition that would cause `kak-lsp` to fail to restart.
- Fix potential race conditions where successive LSP requests might redundantly start the `kak-lsp` server.
- Fix `kak-lsp` shutdown due to timeout potentially hanging the Kakoune session.
- Fix a race condition in `lsp-disable; lsp-enable` by making `lsp-disable` wait until the exiting `kak-lsp` server is fully detached from the Kakoune session.

v18.0.3

Toggle v18.0.3's commit message
Yet another release to fix regressions present in the 18.0.* series:

- Stop writing temporary files to `/tmp` on every LSP request since `/tmp` might not be mounted as `tmpfs`.
- Work around a case where an unnecessary `KakEnd` hook in user configuration would cause delay when exiting the editor.
- Fix crash when the `language` table is used in the `kak-lsp.toml` file (both of which are deprecated).
- Fix crashes in `lsp-selection-range` and `lsp-show-message-request-next`.
- Fix default configuration for Julia.

v18.0.2

Toggle v18.0.2's commit message
Breaking changes:

- The `-v` parameter is now ignored because, it pollutes the `*debug*` buffer since version 18.0.0.
  Use the `lsp_debug` option instead. It's only meant to be set temporarily, for debugging.
  For the case where `kak-lsp` is started outside the editor, an equivalent `--debug` command line flag has been added.

Fixes:
- Fix startup error on HTML files.
- Fix a regression in `lsp-workspace-symbol{,-incr}` commands.
- Fix crash due to a regression in `lsp-highlight-references`.
- Demote a number of logs to keep the `*debug*` buffer clean. Only errors, warnings and occasional info logs should be shown.
- The info box shown by `lsp-show-message-{error,warning,info}` is no longer created in the toolsclient but in the most recently used client.
- Fix missing error messages when LSP commands are run from either a scratch buffer or a buffer where the server is not installed.

Additions
- Further reduce the number of shell calls caused by hooks, in addition to the work done on this in version 18.0.0.
- When crashing via a Rust panic, the process is now aborted and creates a coredump.
  Also, crashes are now shown in an info box.

v18.0.1

Toggle v18.0.1's commit message
Fix error parsing a legacy `kak-lsp.toml` that doesn't have a `langua…

…ge_ids` section.