neovim/runtime
Yi Ming 629483e24e
feat(lsp): require offset_encoding param #31249
Problem:
Since [version 3.17](https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#textDocuments),
LSP supports specifying the position encoding (aka offset encoding) supported by
the client through `positionEncoding`. Since #31209, Nvim fully supports
`utf-8`, `utf-16`, and `utf-32` encodings.

Previously, nvim assumed all clients for a buffer had the same
`offset_encoding`, so:
* Nvim provides `vim.lsp._get_offset_encoding()` to get `offset_encoding`, but
  this function is incorrect because `offset_encoding` is per-client, not
  per-buffer.
* Based on the strategy of `vim.lsp._get_offset_encoding()`,
  `vim.lsp.util.make_position_params()`, `vim.lsp.util.make_range_params()`, and
  `vim.lsp.util.make_given_range_params()` do not require the caller to pass
  `offset_encoding`, which is invalid.
* https://github.com/neovim/neovim/issues/25272

Solution:
* Mark `vim.lsp._get_offset_encoding()` as `@deprecated`.
* Change the type annotations of `vim.lsp.util.make_position_params()`,
  `vim.lsp.util.make_range_params()`, `vim.lsp.util.make_given_range_params()`
  to require the `offset_encoding` param.
2024-11-20 12:19:07 -08:00
..
autoload vim-patch:460799d: runtime(netrw): small fixes to netrw#BrowseX 2024-11-15 09:32:15 +01:00
colors fix(runtime): clean up one-off scripts 2024-10-15 20:50:21 +02:00
compiler vim-patch:4927dae: runtime(compiler): fix escaping of arguments passed to :CompilerSet 2024-11-20 09:27:36 +01:00
doc feat(lsp): require offset_encoding param #31249 2024-11-20 12:19:07 -08:00
ftplugin vim-patch:9.1.0876: filetype: openCL files are not recognized 2024-11-20 09:31:15 +01:00
indent vim-patch:0acd3ab: runtime(sh): better function support for bash/zsh in indent script 2024-11-15 09:32:15 +01:00
keymap vim-patch:79a14c0: runtime(keymap): include Georgian keymap 2024-06-14 23:58:27 +02:00
lua feat(lsp): require offset_encoding param #31249 2024-11-20 12:19:07 -08:00
pack/dist/opt vim-patch:5e7f43b: runtime(termdebug): allow to use decimal signs (#31149) 2024-11-10 09:24:27 +08:00
plugin vim-patch:59834ba: runtime(matchparen): Add matchparen_disable_cursor_hl config option 2024-11-05 08:31:19 +01:00
queries feat(defaults): pretty :help headings #30544 2024-09-27 08:53:30 -07:00
scripts fix(runtime): clean up one-off scripts 2024-10-15 20:50:21 +02:00
spell feat(runtime): import cleanadd.vim from Vim (#17699) 2022-03-13 04:52:45 +00:00
syntax vim-patch:9.1.0876: filetype: openCL files are not recognized 2024-11-20 09:31:15 +01:00
tutor feat(tutor): give hints to satisfy the line checker #30952 2024-10-27 06:50:17 -07:00
CMakeLists.txt fix(runtime): clean up one-off scripts 2024-10-15 20:50:21 +02:00
delmenu.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
filetype.lua refactor: use vim._with where possible 2024-06-28 19:58:31 +02:00
ftoff.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
ftplugin.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
ftplugof.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
indent.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
indoff.vim vim-patch:e978b4534a5e (#24697) 2023-08-13 13:25:10 +01:00
makemenu.vim vim-patch:9.1.0013: Modula2 filetype support lacking (#27020) 2024-01-16 17:45:57 +00:00
menu.vim vim-patch:a420547: runtime(misc): Use consistent "Vim script" spelling (#30805) 2024-10-14 09:27:29 +08:00
neovim.ico feat(windows): show icon in terminal titlebar, taskbar #20607 2022-10-13 05:48:12 -07:00
nvim.appdata.xml NVIM v0.10.0 2024-05-16 14:34:32 +02:00
nvim.desktop docs: misc (#29719) 2024-08-29 06:11:32 +08:00
nvim.png Dist: make icon a proper square (#9716) 2019-03-11 21:00:12 +01:00
optwin.vim vim-patch:9.1.0864: message history is fixed to 200 (#31215) 2024-11-15 08:04:49 +08:00
synmenu.vim vim-patch:9.1.0013: Modula2 filetype support lacking (#27020) 2024-01-16 17:45:57 +00:00
windows_icon.rc feat(win32): embed executable icon 2024-07-02 13:05:16 +02:00