aboutsummaryrefslogtreecommitdiff
path: root/runtime/doc/news.txt
blob: bd0d1cfc5b40aa556f56e30414460389444cf2dd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
*news.txt*    Nvim


			    NVIM REFERENCE MANUAL


Notable changes in Nvim 0.9 from 0.8                                     *news*

                                       Type |gO| to see the table of contents.

==============================================================================
BREAKING CHANGES                                                *news-breaking*

The following changes may require adaptations in user config or plugins.

• Cscope support is now removed (see |cscope| and |nvim-features-removed|):
  - Commands removed:
    - `:cscope`
    - `:lcscope`
    - `:scscope`
    - `:cstag`
  - Options removed:
    - `cscopepathcomp`
    - `cscopeprg`
    - `cscopequickfix`
    - `cscoperelative`
    - `cscopetag`
    - `cscopetagorder`
    - `cscopeverbose`
  - Eval functions removed:
    - `cscope_connection()`

  Note: support for |ctags| remains with no plans to remove.

  See https://github.com/neovim/neovim/pull/20545 for more information.

==============================================================================
NEW FEATURES                                                    *news-features*

The following new APIs or features were added.

• Added support for semantic token highlighting to the LSP client. This
  functionality is enabled by default when a client that supports this feature
  is attached to a buffer. Opt-out can be performed by deleting the
  `semanticTokensProvider` from the LSP client's {server_capabilities} in the
  `LspAttach` callback.

  See |lsp-semantic_tokens| for more information.

• |vim.treesitter.show_tree()| opens a split window showing a text
  representation of the nodes in a language tree for the current buffer.

• Added support for the `willSave` and `willSaveWaitUntil` capabilities to the
  LSP client. `willSaveWaitUntil` allows a server to modify a document before it
  gets saved. Example use-cases by language servers include removing unused
  imports, or formatting the file.

• Treesitter syntax highlighting for `help` files now supports highlighted
  code examples. To enable, create a `.config/nvim/ftplugin/help.lua` with
  the contents >lua
    vim.treesitter.start()
<
  Note: Highlighted code examples are only available in the Nvim manual, not
  in help files taken from Vim. The treesitter `help` parser is also work in
  progress and not guaranteed to correctly highlight every help file in the
  wild.

• |vim.secure.trust()|, |:trust| allows the user to manage files in trust
  database.

• |vim.diagnostic.open_float()| (and therefore |vim.diagnostic.config()|) now
  accepts a `suffix` option which, by default, renders LSP error codes.
  Similarly, the `virtual_text` configuration in |vim.diagnostic.config()| now
  has a `suffix` option which does nothing by default.

• |vim.secure.read()| reads a file and prompts the user if it should be
  trusted and, if so, returns the file's contents.

• When using Nvim inside tmux 3.2 or later, the default clipboard provider
  will now copy to the system clipboard. |provider-clipboard|

• 'splitkeep' option to control the scroll behavior of horizontal splits.

• |nvim_select_popupmenu_item()| now supports |cmdline-completion| popup menu.

• |'diffopt'| now includes a `linematch` option to enable a second-stage diff
  on individual hunks to provide much more accurate diffs. This option is also
  available to |vim.diff()|

  See https://github.com/neovim/neovim/pull/14537.

==============================================================================
CHANGED FEATURES                                                 *news-changes*

The following changes to existing APIs or features add new behavior.

• 'exrc' is no longer marked deprecated.

==============================================================================
REMOVED FEATURES                                                 *news-removed*

The following deprecated functions or APIs were removed.

• `filetype.vim` is removed in favor of |lua-filetype|
  (Note that filetype logic and tests still align with Vim, so additions or
  changes need to be contributed there first.)
  See https://github.com/neovim/neovim/pull/20674.

==============================================================================
DEPRECATIONS                                                *news-deprecations*

The following functions are now deprecated and will be removed in the next
release.



 vim:tw=78:ts=8:sw=2:et:ft=help:norl: