mirror of
https://github.com/neovim/neovim.git
synced 2024-12-20 11:15:14 -07:00
e5e0bda41b
`client.messages` could grow unbounded because the default handler only added new messages, never removing them. A user either had to consume the messages by calling `vim.lsp.util.get_progress_messages` or by manually removing them from `client.messages.progress`. If they didn't do that, using LSP effectively leaked memory. To fix this, this deprecates the `messages` property and instead adds a `progress` ring buffer that only keeps at most 50 messages. In addition it deprecates `vim.lsp.util.get_progress_messages` in favour of a new `vim.lsp.status()` and also promotes the `LspProgressUpdate` user autocmd to a regular autocmd to allow users to pattern match on the progress kind. Also closes https://github.com/neovim/neovim/pull/20327
201 lines
8.2 KiB
Plaintext
201 lines
8.2 KiB
Plaintext
*deprecated.txt* Nvim
|
|
|
|
|
|
NVIM REFERENCE MANUAL
|
|
|
|
|
|
Nvim *deprecated*
|
|
|
|
The items listed below are deprecated: they will be removed in the future.
|
|
They should not be used in new scripts, and old scripts should be updated.
|
|
|
|
==============================================================================
|
|
Deprecated features
|
|
|
|
API
|
|
- *nvim_buf_clear_highlight()* Use |nvim_buf_clear_namespace()| instead.
|
|
- *nvim_buf_set_virtual_text()* Use |nvim_buf_set_extmark()| instead.
|
|
- *nvim_command_output()* Use |nvim_exec2()| instead.
|
|
- *nvim_execute_lua()* Use |nvim_exec_lua()| instead.
|
|
- *nvim_get_hl_by_name()* Use |nvim_get_hl()| instead.
|
|
- *nvim_get_hl_by_id()* Use |nvim_get_hl()| instead.
|
|
- *nvim_exec()* Use |nvim_exec2()| instead.
|
|
- *nvim_get_option_info()* Use |nvim_get_option_info2()| instead.
|
|
- *nvim_buf_get_option()* Use |nvim_get_option_value()| instead.
|
|
- *nvim_buf_set_option()* Use |nvim_set_option_value()| instead.
|
|
- *nvim_get_option()* Use |nvim_get_option_value()| instead.
|
|
- *nvim_set_option()* Use |nvim_set_option_value()| instead.
|
|
- *nvim_win_get_option()* Use |nvim_get_option_value()| instead.
|
|
- *nvim_win_set_option()* Use |nvim_set_option_value()| instead.
|
|
|
|
COMMANDS
|
|
- *:rv* *:rviminfo* Deprecated alias to |:rshada| command.
|
|
- *:wv* *:wviminfo* Deprecated alias to |:wshada| command.
|
|
|
|
ENVIRONMENT VARIABLES
|
|
- *$NVIM_LISTEN_ADDRESS*
|
|
- Deprecated way to:
|
|
- set the server name (use |--listen| or |serverstart()| instead)
|
|
- get the server name (use |v:servername| instead)
|
|
- detect a parent Nvim (use |$NVIM| instead)
|
|
- Ignored if --listen is given.
|
|
- Unset by |terminal| and |jobstart()| unless explicitly given by the "env"
|
|
option. Example: >vim
|
|
call jobstart(['foo'], { 'env': { 'NVIM_LISTEN_ADDRESS': v:servername } })
|
|
<
|
|
|
|
EVENTS
|
|
- *BufCreate* Use |BufAdd| instead.
|
|
- *EncodingChanged* Never fired; 'encoding' is always "utf-8".
|
|
- *FileEncoding* Never fired; equivalent to |EncodingChanged|.
|
|
- *GUIEnter* Never fired; use |UIEnter| instead.
|
|
- *GUIFailed* Never fired.
|
|
|
|
KEYCODES
|
|
- *<MouseDown>* Use <ScrollWheelUp> instead.
|
|
- *<MouseUp>* Use <ScrollWheelDown> instead.
|
|
|
|
FUNCTIONS
|
|
- *buffer_exists()* Obsolete name for |bufexists()|.
|
|
- *buffer_name()* Obsolete name for |bufname()|.
|
|
- *buffer_number()* Obsolete name for |bufnr()|.
|
|
- *file_readable()* Obsolete name for |filereadable()|.
|
|
- *health#report_error* *vim.health.report_error()* Use |vim.health.error()| instead.
|
|
- *health#report_info* *vim.health.report_info()* Use |vim.health.info()| instead.
|
|
- *health#report_ok* *vim.health.report_ok()* Use |vim.health.ok()| instead.
|
|
- *health#report_start* *vim.health.report_start()* Use |vim.health.start()| instead.
|
|
- *health#report_warn* *vim.health.report_warn()* Use |vim.health.warn()| instead.
|
|
- *highlight_exists()* Obsolete name for |hlexists()|.
|
|
- *highlightID()* Obsolete name for |hlID()|.
|
|
- *inputdialog()* Use |input()| instead.
|
|
- *jobclose()* Obsolete name for |chanclose()|
|
|
- *jobsend()* Obsolete name for |chansend()|
|
|
- *last_buffer_nr()* Obsolete name for bufnr("$").
|
|
- *rpcstop()* Use |jobstop()| instead to stop any job, or
|
|
`chanclose(id, "rpc")` to close RPC communication
|
|
without stopping the job. Use chanclose(id) to close
|
|
any socket.
|
|
|
|
HIGHLIGHTS
|
|
- *hl-VertSplit* Use |hl-WinSeparator| instead.
|
|
|
|
LSP DIAGNOSTICS
|
|
For each of the functions below, use the corresponding function in
|
|
|vim.diagnostic| instead (unless otherwise noted). For example, use
|
|
|vim.diagnostic.get()| instead of |vim.lsp.diagnostic.get()|.
|
|
|
|
- *vim.lsp.diagnostic.clear()* Use |vim.diagnostic.hide()| instead.
|
|
- *vim.lsp.diagnostic.disable()*
|
|
- *vim.lsp.diagnostic.display()* Use |vim.diagnostic.show()| instead.
|
|
- *vim.lsp.diagnostic.enable()*
|
|
- *vim.lsp.diagnostic.get()*
|
|
- *vim.lsp.diagnostic.get_all()* Use |vim.diagnostic.get()| instead.
|
|
- *vim.lsp.diagnostic.get_count()* Use |vim.diagnostic.get()| instead.
|
|
- *vim.lsp.diagnostic.get_line_diagnostics()* Use |vim.diagnostic.get()| instead.
|
|
- *vim.lsp.diagnostic.get_next()*
|
|
- *vim.lsp.diagnostic.get_next_pos()*
|
|
- *vim.lsp.diagnostic.get_prev()*
|
|
- *vim.lsp.diagnostic.get_prev_pos()*
|
|
- *vim.lsp.diagnostic.get_virtual_text_chunks_for_line()* No replacement. Use
|
|
options provided by |vim.diagnostic.config()| to customize virtual text.
|
|
- *vim.lsp.diagnostic.goto_next()*
|
|
- *vim.lsp.diagnostic.goto_prev()*
|
|
- *vim.lsp.diagnostic.redraw()* Use |vim.diagnostic.show()| instead.
|
|
- *vim.lsp.diagnostic.reset()*
|
|
- *vim.lsp.diagnostic.save()* Use |vim.diagnostic.set()| instead.
|
|
- *vim.lsp.diagnostic.set_loclist()* Use |vim.diagnostic.setloclist()| instead.
|
|
- *vim.lsp.diagnostic.set_qflist()* Use |vim.diagnostic.setqflist()| instead.
|
|
- *vim.lsp.diagnostic.show_line_diagnostics()* Use |vim.diagnostic.open_float()| instead.
|
|
- *vim.lsp.diagnostic.show_position_diagnostics()* Use |vim.diagnostic.open_float()| instead.
|
|
|
|
The following are deprecated without replacement. These functions are moved
|
|
internally and are no longer exposed as part of the API. Instead, use
|
|
|vim.diagnostic.config()| and |vim.diagnostic.show()|.
|
|
|
|
- *vim.lsp.diagnostic.set_signs()*
|
|
- *vim.lsp.diagnostic.set_underline()*
|
|
- *vim.lsp.diagnostic.set_virtual_text()*
|
|
|
|
LSP FUNCTIONS
|
|
- *vim.lsp.buf.range_code_action()* Use |vim.lsp.buf.code_action()| with
|
|
the `range` parameter.
|
|
- *vim.lsp.util.diagnostics_to_items()* Use |vim.diagnostic.toqflist()| instead.
|
|
- *vim.lsp.util.set_qflist()* Use |setqflist()| instead.
|
|
- *vim.lsp.util.set_loclist()* Use |setloclist()| instead.
|
|
- *vim.lsp.buf_get_clients()* Use |vim.lsp.get_active_clients()| with
|
|
{buffer = bufnr} instead.
|
|
- *vim.lsp.buf.formatting()* Use |vim.lsp.buf.format()| with
|
|
{async = true} instead.
|
|
- *vim.lsp.buf.formatting_sync()* Use |vim.lsp.buf.format()| with
|
|
{async = false} instead.
|
|
- *vim.lsp.buf.range_formatting()* Use |vim.lsp.formatexpr()|
|
|
or |vim.lsp.buf.format()| instead.
|
|
- *vim.lsp.util.get_progress_messages()* Use |vim.lsp.status()| or access
|
|
`progress` of |vim.lsp.client|
|
|
|
|
TREESITTER FUNCTIONS
|
|
- *vim.treesitter.language.require_language()* Use |vim.treesitter.language.add()|
|
|
instead.
|
|
- *vim.treesitter.get_node_at_pos()* Use |vim.treesitter.get_node()|
|
|
instead.
|
|
- *vim.treesitter.get_node_at_cursor()* Use |vim.treesitter.get_node()|
|
|
and |TSNode:type()| instead.
|
|
- *vim.treesitter.query.get_query()* Use |vim.treesitter.query.get()|
|
|
instead.
|
|
|
|
LUA
|
|
- vim.register_keystroke_callback() Use |vim.on_key()| instead.
|
|
- *vim.pretty_print()* Use |vim.print()| instead.
|
|
- *vim.loop* Use |vim.uv| instead.
|
|
|
|
NORMAL COMMANDS
|
|
- *]f* *[f* Same as "gf".
|
|
|
|
OPTIONS
|
|
- *cpo-<* *:menu-<special>* *:menu-special* *:map-<special>* *:map-special*
|
|
`<>` notation is always enabled.
|
|
- 'gdefault' Enables the |:substitute| flag 'g' by default.
|
|
- *'fe'* 'fenc'+'enc' before Vim 6.0; no longer used.
|
|
- *'highlight'* *'hl'* Names of builtin |highlight-groups| cannot be changed.
|
|
- *'langnoremap'* Deprecated alias to 'nolangremap'.
|
|
- 'sessionoptions' Flags "unix", "slash" are ignored and always enabled.
|
|
- *'vi'*
|
|
- 'viewoptions' Flags "unix", "slash" are ignored and always enabled.
|
|
- *'viminfo'* Deprecated alias to 'shada' option.
|
|
- *'viminfofile'* Deprecated alias to 'shadafile' option.
|
|
- *'paste'* *'nopaste'* This option is obsolete; |paste| is handled automatically.
|
|
Enables "paste mode":
|
|
- mappings in Insert mode and Command-line mode are
|
|
disabled
|
|
- abbreviations are disabled
|
|
- 'autoindent' is reset
|
|
- 'expandtab' is reset
|
|
- 'formatoptions' is used like it is empty
|
|
- 'revins' is reset
|
|
- 'ruler' is reset
|
|
- 'showmatch' is reset
|
|
- 'smartindent' is reset
|
|
- 'smarttab' is reset
|
|
- 'softtabstop' is set to 0
|
|
- 'textwidth' is set to 0
|
|
- 'wrapmargin' is set to 0
|
|
These options keep their value, but their effect is
|
|
disabled:
|
|
- 'cindent'
|
|
- 'indentexpr'
|
|
- 'lisp'
|
|
|
|
UI EXTENSIONS
|
|
- *ui-wildmenu* Use |ui-cmdline| with |ui-popupmenu| instead. Enabled
|
|
by the `ext_wildmenu` |ui-option|. Emits these events:
|
|
- `["wildmenu_show", items]`
|
|
- `["wildmenu_select", selected]`
|
|
- `["wildmenu_hide"]`
|
|
|
|
VARIABLES
|
|
- *b:terminal_job_pid* PID of the top-level process in a |:terminal|.
|
|
Use `jobpid(&channel)` instead.
|
|
|
|
|
|
vim:noet:tw=78:ts=8:ft=help:norl:
|