aboutsummaryrefslogtreecommitdiff
path: root/runtime
Commit message (Collapse)AuthorAge
* feat: cmdline funcs (#18284)Shougo2022-05-09
| | | | | | | | | | | | | | vim-patch:8.2.4903: cannot get the current cmdline completion type and position Problem: Cannot get the current cmdline completion type and position. Solution: Add getcmdcompltype() and getcmdscreenpos(). (Shougo Matsushita, closes vim/vim#10344) https://github.com/vim/vim/commit/79d599b8772022af1d657f368c2fc97aa342c0da vim-patch:8.2.4910: imperfect coding Problem: Imperfect coding. Solution: Make code nicer. https://github.com/vim/vim/commit/9ff7d717aa3176de5c61de340deb93f41c7780fc
* fix(lsp): detach spawned LSP server processes (#18477)Gregory Anders2022-05-08
| | | | | | | | LSP servers should be daemonized (detached) so that they run in a separate process group from Neovim's. Among other things, this ensures the process does not inherit Neovim's TTY (#18475). Make this configurable so that clients can explicitly opt-out of detaching from Nvim.
* vim-patch:partial:d899e5112079 (#18474)Sean Dewar2022-05-08
| | | | | | | | | | | | Update runtime files https://github.com/vim/vim/commit/d899e51120798d3fb5420abb1f19dddf3f014d05 - Skip vimhelp.vim stuff (syntax/help.vim, syntax.txt; v8.2.4891). - Skip :let heredoc eval stuff (eval.txt; v8.2.4770). - Skip uk.cp1251.po. - Skip `*hl-CurSearch*` change (syntax.txt): - Vim's CurSearch works differently (Nvim's uses current cursor pos). Dunno know how applicable the redrawing comment is to Nvim... - Might be preferred to move it under `*hl-Search*` like Vim?
* vim-patch:8.2.4907: some users do not want a line comment always inserted ↵Christian Clason2022-05-07
| | | | | | | | (#18463) Problem: Some users do not want a line comment always inserted. Solution: Add the '/' flag to 'formatoptions' to not repeat the comment leader after a statement when using "o". https://github.com/vim/vim/commit/2bf875f881f7c6f6900bc0eb2a93a552db894109
* docs: change wrap_at type to number (#18456)Noval Maulana2022-05-07
|
* fix(api): make `nvim_parse_cmd` work correctly with both range and countFamiu Haque2022-05-07
| | | | | | | | It seems range and count can be used together in commands. This PR fixes the behavior of `nvim_parse_cmd` for those cases by removing the mutual exclusivity of "range" and "count". It also removes range line number validation for `nvim_parse_cmd` as it's not its job to validate the command.
* fix(lsp): skip clients without rename capability (#18449)Mathias Fußenegger2022-05-06
| | | | | Follow up to https://github.com/neovim/neovim/pull/18441 This way rename should "just work" in most cases without having to manually filter the client
* vim-patch:8.2.4881: "P" in Visual mode still changes some registers (#18445)zeertzjq2022-05-06
| | | | | | Problem: "P" in Visual mode still changes some registers. Solution: Make "P" in Visual mode not change any register. (Shougo Matsushita, closes vim/vim#10349) https://github.com/vim/vim/commit/509142ab7a9db32114b6d0949722b9133c9c22f2
* fix(lsp): fix rename capability checks and multi client support (#18441)Mathias Fußenegger2022-05-05
| | | | | | | | Adds filter and id options to filter the client to use for rename. Similar to the recently added `format` function. rename will use all matching clients one after another and can handle a mix of prepareRename/rename support. Also ensures the right `offset_encoding` is used for the `make_position_params` calls
* Merge pull request #18431 from famiu/feat/api/nvim_get_autocmds/group_namebfredl2022-05-05
|\ | | | | feat(api): add `group_name` to `nvim_get_autocmds`
| * feat(api): add `group_name` to `nvim_get_autocmds`Famiu Haque2022-05-05
| |
* | fix(lsp): make sure to always reset active codelens refreshes (#18331)William Boman2022-05-05
| | | | | | | | | | | | | | | | | | | | | | This fixes issues where subsequent calls to vim.lsp.codelens.refresh() would have no effect due to the buffer not getting cleared from the active_refresh table. Examples of how such scenarios would occur are: - A textDocument/codeLens result yielded an error. - The 'textDocument/codeLens' handler was overriden in such a way that it no longer called vim.lsp.codelens.on_codelens().
* | refactor(api): make `range` in `nvim_parse_cmd` an arrayFamiu Haque2022-05-05
|/ | | | | | | | Changes the `range` value in `nvim_parse_cmd` into an array to describe range information more concisely. Also makes `range` and `count` be mutually exclusive by making count `-1` when command takes a range instead of a count. Additionally corrects the behavior of `count` for built-in commands by making the default count `0`.
* refactor: replace char_u variables and functions with charDundar Goc2022-05-04
| | | | Work on https://github.com/neovim/neovim/issues/459
* feat(nvim_parse_cmd): add range, count, reg #18383Famiu Haque2022-05-04
| | | | | Adds range, count and reg to the return values of nvim_parse_cmd. Also makes line1 and line2 be -1 if the command does not take a range. Also moves nvim_parse_cmd to vimscript.c because it fits better there.
* refactor(lua): replace hard-coded gsub with vim.pesc() (#18407)James McCoy2022-05-04
|
* fix(filetype): fixup scd filetype detection (#18403)Gregory Anders2022-05-03
|
* refactor(runtime): convert dist#ft functions to lua (#18247)Jonas Strittmatter2022-05-03
| | | Co-authored-by: Christian Clason <christian.clason@uni-due.de>
* Merge pull request #15674 from yatli/ui_event_extmarkbfredl2022-05-03
|\ | | | | API/UI: ui_event_extmark
| * feat(api/ui): win_extmarksYatao Li2022-05-03
| |
* | feat(lsp): add logging level "OFF" (#18379)ii142022-05-03
| |
* | feat(lua): vim.deprecate() #18320dundargoc2022-05-03
| | | | | | | | | | | | This is primarily intended to act as documentation for the developer so they know exactly when and what to remove. This will help prevent the situation of deprecated code lingering for far too long as developers don't have to worry if a function is safe to remove.
* | feat(server): set $NVIM, unset $NVIM_LISTEN_ADDRESS #11009Justin M. Keyes2022-05-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PROBLEM ------------------------------------------------------------------------ $NVIM_LISTEN_ADDRESS has conflicting purposes as both a parameter ("the current process should listen on this address") and a descriptor ("the current process is a child of this address"). This contradiction means the presence of NVIM_LISTEN_ADDRESS is ambiguous, so child Nvim always tries to listen on its _parent's_ socket. This is the cause of lots of "Failed to start server" spam in our test/CI logs: WARN 2022-04-30… server_start:154: Failed to start server: address already in use: \\.\pipe\nvim-4480-0 WARN 2022-04-30… server_start:154: Failed to start server: address already in use: \\.\pipe\nvim-2168-0 SOLUTION ------------------------------------------------------------------------ 1. Set $NVIM to the parent v:servername, *only* in child processes. - Now the correct way to detect a "parent" Nvim is to check for $NVIM. 2. Do NOT set $NVIM_LISTEN_ADDRESS in child processes. 3. On startup if $NVIM_LISTEN_ADDRESS exists, unset it immediately after server init. 4. Open a channel to parent automatically, expose it as v:parent. Fixes #3118 Fixes #6764 Fixes #9336 Ref https://github.com/neovim/neovim/pull/8247#issuecomment-380275696 Ref #8696
* | fix(lsp): add missing bufnr argument (#18382)Jose Alvarez2022-05-03
|/
* vim-patch:8.2.4859: wget2 files are not recognized (#18385)Christian Clason2022-05-03
| | | | | Problem: wget2 files are not recognized. Solution: Add patterns to recognize wget2. (Doug Kearns) https://github.com/vim/vim/commit/3a974a89331182139e12386275f052a50c247ecb
* Merge pull request #18357 from bfredl/ui_stdinbfredl2022-05-02
|\ | | | | feat(ui): allow embedder to emulate "cat data | nvim -" behaviour
| * refactor(ui): simplify stdin handlingbfredl2022-05-02
| |
* | Merge pull request #18353 from jamessan/ft-match-fixJames McCoy2022-05-02
|\ \ | |/ |/|
| * fix(filetype.lua): escape expansion of ~ when used as a patternJames McCoy2022-05-02
| |
* | vim-patch:8.2.4857: Yaml indent for multiline is wrong (#18365)Christian Clason2022-05-02
| | | | | | | | | | Problem: Yaml indent for multiline is wrong. Solution: Adjust patterns. (closes vim/vim#10328, closes vim/vim#8740) https://github.com/vim/vim/commit/f4f579b46b27f5e1689912a3e84c6a2a96efd143
* | vim-patch:8.2.4855: robot files are not recognized (#18364)Christian Clason2022-05-02
|/ | | | | Problem: Robot files are not recognized. Solution: Add patterns for robot files. (Zoe Roux, closes vim/vim#10339) https://github.com/vim/vim/commit/2096a5f128029b1156a035a27c988995db240cea
* fix(shared): avoid indexing unindexable values in vim.tbl_get() (#18337)William Boman2022-05-01
|
* docs: syntax is enabled by default (#17637)Christian Clason2022-05-01
| | | `:syntax enable` is no longer necessary (and may even be harmful). Do not recommend it in `usr_05.txt` and `usr_06.txt`, and mention the new default in `syntax.txt`.
* docs(api): more API attributes #18336ii142022-04-30
|
* docs: move "hl-VertSplit" to deprecated.txt #18328Famiu Haque2022-04-30
|
* fix(lsp): fix infinite loop in resolved_capabilities deprecation message ↵ii142022-04-30
| | | | | (#18333) Co-authored-by: ii14 <ii14@users.noreply.github.com>
* fix(lsp): handle textDocumentSync.save bool capability (#18332)Mathias Fußenegger2022-04-30
| | | Follow up to https://github.com/neovim/neovim/pull/17814
* Merge pull request #18231 from famiu/feat/api/parse_cmdlinebfredl2022-04-30
|\ | | | | feat(api): `nvim_parse_cmd`
| * feat(api): add `nvim_parse_cmdline`Famiu Haque2022-04-30
| | | | | | | | Adds an API function to parse a command line string and get command information from it.
* | vim-patch:8.2.4849: Gleam filetype not detected (#18326)Christian Clason2022-04-30
| | | | | | | | | | | | Problem: Gleam filetype not detected. Solution: Add a pattern for Gleam files. (Mathias Jean Johansen, closes vim/vim#10326) https://github.com/vim/vim/commit/917c32c4f75351061a773cd5bc5b6f42c7d10e62
* | feat(lsp): add async option to vim.lsp.buf.format (#18322)Mathias Fußenegger2022-04-30
|/ | | | | | | | Deprecates the existing `vim.lsp.buf.formatting` function. With this, `vim.lsp.buf.format` will replace all three: - vim.lsp.buf.formatting - vim.lsp.buf.formatting_sync - vim.lsp.buf.formatting_seq_sync
* feat(lsp): add vim.lsp.buf.format (#18193)Michael Lingelbach2022-04-30
|
* fix(handlers): more specific error messages (#16772)kylo2522022-04-30
| | | | Specify which message, or request, was last received in case of an error instead of the same generic message
* chore(lsp): remove capabilities sanitization (#17814)Michael Lingelbach2022-04-30
| | | | | | | | | | | | | | | | * feat(lsp)!: remove capabilities sanitization Users must now access client.server_capabilities which matches the same structure as the protocol. https://microsoft.github.io/language-server-protocol/specification client.resolved_capabilities is no longer used to gate capabilities, and will be removed in a future release. BREAKING CHANGE Co-authored-by: Mathias Fussenegger <f.mathias@zignar.net>
* feat(lsp): options to filter and auto-apply code actions (#18221)Fredrik Ekre2022-04-30
| | | | | | | | | | | | | | | | | | | Implement two new options to vim.lsp.buf.code_action(): - filter (function): predicate taking an Action as input, and returning a boolean. - apply (boolean): when set to true, and there is just one remaining action (after filtering), the action is applied without user query. These options can, for example, be used to filter out, and automatically apply, the action indicated by the server to be preferred: vim.lsp.buf.code_action({ filter = function(action) return action.isPreferred end, apply = true, }) Fix #17514.
* feat(lsp): show feedback on empty hover response (#18308)Mathias Fußenegger2022-04-29
| | | | Without any feedback it gives the impression that the language server is not working properly, which isn't the case.
* feat(mappings): do not simplify the rhs of a mappingzeertzjq2022-04-29
|
* feat(mappings): do not replace existing mapping for simplified formzeertzjq2022-04-29
|
* test: revert test and doc changes from #6724, add a test for #6716zeertzjq2022-04-29
| | | | Multi-char 'pastetoggle' now works without breaking character-find.
* vim-patch:8.2.0867: using \{xxx} for encoding a modifier is not nicezeertzjq2022-04-29
| | | | | | | | | Problem: Using \{xxx} for encoding a modifier is not nice. Solution: Use \<*xxx> instead, since it's the same as \<xxx> but producing a different code. https://github.com/vim/vim/commit/fccd93f0917234b962ce07d1df3adf9d7105936f Use this notation in langmap_spec.