aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* vim-patch:9.1.0440: function get_lval() is too long (#28963)zeertzjq2024-05-24
| | | | | | | | | | | Problem: function get_lval() is too long Solution: factor out the get_lval_subscript() function (Yegappan Lakshmanan) closes: vim/vim#14839 https://github.com/vim/vim/commit/44cadaa18c1816f7a576f1870790ee01a23c1071 Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* vim-patch:8.2.3158: strange error message when using islocked() with a ↵zeertzjq2024-05-24
| | | | | | | | | | | | | number (#28962) Problem: Strange error message when using islocked() with a number. (Yegappan Lakshmanan) Solution: Check that the name is empty. https://github.com/vim/vim/commit/1840a7b4e3577e617f724c9d07ccc78195cc010a Use ll_name_len instead. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* feat(complete): specify reason for CompleteDoneFamiu Haque2024-05-24
| | | | | Problem: `CompleteDone` currently does not specify the reason for why completion was done, which is problematic for completion plugins as they cannot know whether the event was triggered due to the completion being canceled, accepted, or for some other reason. Solution: Add a `reason` key to `v:event`, which is set by `CompleteDone` to indicate why completion ended.
* fix: change deprecation presentationdundargoc2024-05-24
| | | | | | | | | | | | | | Deprecation with vim.deprecate is currently too noisy. Show the following warning instead: [function] is deprecated. Run ":checkhealth vim.deprecated" for more information. The important part is that the full message needs to be short enough to fit in one line in order to not trigger the "Press ENTER or type command to continue" prompt. The full information and stack trace for the deprecated functions will be shown in the new healthcheck `vim.deprecated`.
* feat: allow gx to function for markdown linksdundargoc2024-05-24
| | | | | | | In other words, `gx` works regardless of where it was used in `[...](https://...)`. This only works on markdown buffers. Co-authored-by: ribru17 <ribru17@gmail.com>
* docs: extract health to its own filedundargoc2024-05-24
|
* vim-patch:9.1.0439: Cannot filter the history (#28958)zeertzjq2024-05-24
| | | | | | | | | | Problem: Cannot filter the history Solution: Implement :filter :history closes: vim/vim#14835 https://github.com/vim/vim/commit/42a5b5a6d0d05255b9c464abe71f29c7677b5833 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:9.1.0441: getregionpos() can't properly indicate positions beyond ↵zeertzjq2024-05-24
| | | | | | | | | | | | | | | | | | | | eol (#28957) Problem: getregionpos() can't properly indicate positions beyond eol. Solution: Add an "eol" flag that enables handling positions beyond end of line like getpos() does (zeertzjq). Also fix the problem that a position still has the coladd beyond the end of the line when its column has been clamped. In the last test case with TABs at the end of the line the old behavior is obviously wrong. I decided to gate this behind a flag because returning positions that don't correspond to actual characters in the line may lead to mistakes for callers that want to calculate the length of the selected text, so the behavior is only enabled if the caller wants it. closes: vim/vim#14838 https://github.com/vim/vim/commit/2b09de910458247b70751928217422c38fd5abf8
* vim-patch:9.1.0438: Wrong Ex command executed when :g uses '?' as delimiter ↵zeertzjq2024-05-24
| | | | | | | | | | | (#28956) Problem: Wrong Ex command executed when :g uses '?' as delimiter and pattern contains escaped '?'. Solution: Don't use "*newp" when it's not allocated (zeertzjq). closes: vim/vim#14837 https://github.com/vim/vim/commit/3074137542961ce7b3b65c14ebde75f13f5e6147
* vim-patch:22ac941: runtime(i3config/swayconfig): support floating_modifier ↵Christian Clason2024-05-24
| | | | | | | | | | | | | | | | none; revert broken highlighting - fix floating_modifier $mod normal|inverse was being hightlighted as error reverting the floating_modifier change from dd83b63 - will currently allow invalid syntax after floating_modifier fixes: vim/vim#14826 closes: vim/vim#14827 https://github.com/vim/vim/commit/22ac941208fcb2c63ad172c6cf0b39b077b5b682 Co-authored-by: James Eapen <james.eapen@vai.org> Co-authored-by: JosefLitos <litosjos@fit.cvut.cz>
* build: remove nix flakes (#28863)dundargoc2024-05-24
| | | | | | | It does not work and we don't plan on maintaining these anymore. The flake files are being moved to https://github.com/nix-community/neovim-nightly-overlay/pull/516 instead.
* vim-patch:9.1.0436: Crash when using '?' as separator for :s (#28955)zeertzjq2024-05-24
| | | | | | | | | | Problem: Crash when using '?' as separator for :s and pattern contains escaped '?'s (after 9.1.0409). Solution: Always compute startplen. (zeertzjq). related: neovim/neovim#28935 closes: 14832 https://github.com/vim/vim/commit/789679cfc4f39505b135220672b43a260d8ca3b4
* vim-patch:9.1.0435: filetype: cygport files are not recognizedChristian Clason2024-05-23
| | | | | | | | | | | | | | Problem: filetype: cygport files are not recognized Solution: Recognize '*.cygport' files as sh filetype (Ken Takata) https://cygwin.github.io/cygport/cygport_in.html closes: vim/vim#14833 https://github.com/vim/vim/commit/cd79f8fbd34cdb918153d9fa3821eb4092b7b5fc Co-authored-by: K.Takata <kentkt@csc.jp>
* fix(colorscheme): underline StatusLineNC with 'notermguicolors' #28810Evgeni Chasnovski2024-05-23
| | | | | | | | | | | | | Problem: statusline for non-active window can be hard to distinguish from normal text with 'notermguicolors'. It was set to use only bold text to find a balance between being not too similar to active statusline and normal text, and be supported in enough terminal emulators (if it does not support 'termguicolors' there is higher chance that it also does not support underline). Solution: reconsider balance by placing more emphasis on making non-active statusline more distinguishable. This also results into tabline being shown with underline which aligns with "make more distinguishable" shift.
* fix(comment): fall back to using trimmed comment markers (#28938)Evgeni Chasnovski2024-05-23
| | | | | | | | | | | | | Problem: Currently comment detection, addition, and removal are done by matching 'commentstring' exactly. This has the downside when users want to add comment markers with space (like with `-- %s` commentstring) but also be able to uncomment lines that do not contain space (like `--aaa`). Solution: Use the following approach: - Line is commented if it matches 'commentstring' with trimmed parts. - Adding comment is 100% relying on 'commentstring' parts (as is now). - Removing comment is first trying exact 'commentstring' parts with fallback on trying its trimmed parts.
* build(docs): update CSS #28896Saien Govender2024-05-23
| | | | | | | | | | Problem: Not using minified version of bootstrap. Don't need to load normalize with new version of bootstrap. See https://github.com/neovim/neovim.github.io/pull/350 Solution: Update link to bootstrap file. Remove link to normalize.
* fix(lsp): check if buffer was detached in on_init callback (#28914)Ilia Choly2024-05-23
| | | Co-authored-by: Jongwook Choi <wookayin@gmail.com>
* refactor(lsp): reuse buf_detach_client logic in on_detach (#28939)Mathias Fußenegger2024-05-23
|
* fix(lsp): trigger LspDetach on buffer delete (#28795)Andre Toerien2024-05-23
| | | Co-authored-by: Mathias Fussenegger <f.mathias@zignar.net>
* vim-patch:9.1.0433: Wrong yanking with exclusive selection and ve=all (#28933)zeertzjq2024-05-23
| | | | | | | | | | Problem: Wrong yanking with exclusive selection and virtualedit=all, and integer overflow when using getregion() on it. Solution: Set coladd when decreasing column and 'virtualedit' is active. Add more tests for getregion() with 'virtualedit' (zeertzjq). closes: vim/vim#14830 https://github.com/vim/vim/commit/701ad50a9efcf0adfe6d787b606c4e4dbd31f26d
* fix(shada): restore search pattern length properly (#28929)zeertzjq2024-05-23
|
* vim-patch:9.0.1175: the set_ref_in_item() function is too long (#28926)zeertzjq2024-05-23
| | | | | | | | | Problem: The set_ref_in_item() function is too long. Solution: Use a separate function for more complicated types. (Yegappan Lakshmanan, closes vim/vim#11802) https://github.com/vim/vim/commit/ea125393af01ecaf75cee8e085a57f8143f3ae3e Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* vim-patch:8.2.0703: Vim9: closure cannot store value in outer context (#28925)zeertzjq2024-05-23
| | | | | | | | | | | Problem: Vim9: closure cannot store value in outer context. Solution: Make storing value in outer context work. Make :disassemble accept a function reference. https://github.com/vim/vim/commit/b68b346e6db6d3f848e0a89905fcd7777b73c5d8 Funcstack is Vim9script-only. Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.1.0430: getregionpos() doesn't handle one char selection (#28924)zeertzjq2024-05-23
| | | | | | | | | | Problem: getregionpos() doesn't handle one char selection. Solution: Handle startspaces differently when is_oneChar is set. Also add a test for an exclusive charwise selection with multibyte chars (zeertzjq) closes: vim/vim#14825 https://github.com/vim/vim/commit/52a6f348874778cf315b47d9e8b5f818f4b97277
* vim-patch:802fc04: runtime(rescript): include basic rescript ftplugin file ↵Christian Clason2024-05-22
| | | | | | | | | | (vim/vim#14822) Reference: https://rescript-lang.org/docs/manual/latest/overview#comments https://github.com/vim/vim/commit/802fc04a78a7d98673dc9171d4b89597447a5bda Co-authored-by: Riley Bruins <ribru17@hotmail.com>
* fix: merge all provider healthchecks into a single health.luadundargoc2024-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | This will help manage the overly granular checkhealth completion to go from ``` vim.health vim.lsp vim.provider.clipboard vim.provider.node vim.provider.perl vim.provider.python vim.provider.ruby vim.treesitter ``` to ``` vim.health vim.lsp vim.provider vim.treesitter ```
* docs: move vim.health documentation to lua.txtdundargoc2024-05-22
| | | | | | `vim.health` is not a "plugin" but part of our Lua API and the documentation should reflect that. This also helps make the documentation maintenance easier as it is now generated.
* refactor(lsp): use supports_method where applicableIlia Choly2024-05-22
|
* vim-patch:62ccaa6: runtime(termdebug): check for gdb file/dir before using ↵zeertzjq2024-05-22
| | | | | | | | | | | | as buffer name (#28908) Add test so that this doesn't regress. fixes: vim/vim#12718 closes: vim/vim#14792 https://github.com/vim/vim/commit/62ccaa60d5f7f9a13c758bd5e55b7ca6855a6de9 Co-authored-by: Ubaldo Tiberi <ubaldo.tiberi@volvo.com>
* vim-patch:d1d9316: runtime(zig): refactor zig ftplugin, remove auto format ↵Gregory Anders2024-05-21
| | | | | | | | | | | | | (#28904) Refactored zig ftplugin, removed upstream comment, aucmd and auto formatting support. Updated documentation for zig configuration settings and added new maintainer. closes: vim/vim#13803 https://github.com/vim/vim/commit/d1d9316c6621d275593f58664975faf0fc23985f Co-authored-by: Tiseno <mathias.lindgren@stabelo.se>
* vim-patch:9.1.0427: tests: some issues with termdebug mapping test (#28907)zeertzjq2024-05-22
| | | | | | | | | | | | | Problem: tests: some issues with termdebug mapping test Solution: Use assert_{true,false} if suitable, change order of expected and actual arguments in assert() calls. (Ken Takata) closes: vim/vim#14818 related: 7fbbd7f https://github.com/vim/vim/commit/ffed1540f36eb4a2255d7d824c9466d3d8fd581e Co-authored-by: Ken Takata <kentkt@csc.jp>
* Merge pull request #28905 from zeertzjq/vim-9.1.0426zeertzjq2024-05-22
|\ | | | | vim-patch:9.1.{0426,0428}: too many strlen() calls in search.c
| * vim-patch:9.1.0428: Tag guessing leaves wrong search history with very short ↵zeertzjq2024-05-22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | names Problem: Tag guessing leaves wrong search history with very short names (after 9.1.0426). Solution: Use the correct variable for pattern length (zeertzjq). closes: vim/vim#14817 https://github.com/vim/vim/commit/42cd192daa4b7f29131c7be1beaecb6067e96266 Cherry-pick Test_tagbsearch() changes from patch 9.0.0767.
| * vim-patch:9.1.0426: too many strlen() calls in search.czeertzjq2024-05-22
|/ | | | | | | | | | | | | Problem: too many strlen() calls in search.c Solution: refactor code and remove more strlen() calls, use explicit variable to remember strlen (John Marriott) closes: vim/vim#14796 https://github.com/vim/vim/commit/8c85a2a49acf80e4f53ec51e6ff2a5f3830eeddb Co-authored-by: John Marriott <basilisk@internode.on.net>
* fix(lsp): detach all clients on_reload to force buf_state reload (#28875)Ilia Choly2024-05-21
| | | | | | Problem: The changetracking state can de-sync when reloading a buffer with more than one LSP client attached. Solution: Fully detach all clients from the buffer to force buf_state to be re-created.
* docs: how to get core dump files #28826Jongwook Choi2024-05-21
| | | | | | | | | | | | | Problem: Docs about how to obtain backtraces on Linux is not very beginner-friendly; some users used to have difficulties in getting stacktrace against Nvim crash. For instance, the `core` dump file might not appear in the current directory on Ubuntu systems with apport, and the current docs do not fully cover such cases. Solution: Add more hints about where core dump files can be found. For example, on Ubuntu where apport is managing core dump files, users would want to find them in `/var/lib/apport/coredump`.
* fix(lsp): semantic token functions allow "0" bufnr #28849Riley Bruins2024-05-21
| | | aligns with ":help dev-patterns"
* fix(lsp): hide layout in codelenses in virtual text (#28794) (#28807)Mango The Fourth2024-05-21
| | | | | | | Problem: layout i.e. whitespace that is part of codelenses is currently displayed as weird symbols and large amounts of spaces Solution: replace all consecutive whitespace symbols with a single space character when trying to display codelenses as virtual text
* feat(signs)!: place higher-priority signs from the left #27781Tobias Schmitz2024-05-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Higher-priority signs may be hidden by lower-priority signs. Solution: Place higher-priority signs from the left. Example: nvim_buf_set_extmark(0, ns, 0, -1, {sign_text='H', priority=1}) nvim_buf_set_extmark(0, ns, 0, -1, {sign_text='W', priority=2}) nvim_buf_set_extmark(0, ns, 0, -1, {sign_text='E', priority=3}) Before: | | H | W E | ^ | | Not visible After: | | | E W | H | | ^ Not visible Fixes #16632
* fix(lsp): add textDocument/documentLink to capability map (#28838)Ilia Choly2024-05-21
|
* build(vim-patch.sh): include commit subject #28767Jongwook Choi2024-05-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: vim-patch commits lack an informative title and summary in the very first line of the commit message when the vim-revision is a Git SHA hash, unlike when is a Vim version. This makes it difficult to discern at a glance what changes are introduced by such vim-patch commits (in git log, PR title, changelog generated by git-cliff, etc.). BEFORE: vim-patch:abcdef123456 runtime(vim): improve performance <some details> ... Solution: Repeat the title of the upstream commit message, to improve the clarity and visibility of the commit message. AFTER: vim-patch:abcdef123456: runtime(vim): improve performance <some details> ... Note: the `vim-patch:<hash>` token is still needed by `vim-patch.sh` (but not necessarily in the very first line of the commit message) to determine which vim patches have been applied. `<hash>` is internally normalized to 7 hex digits.
* fix(tui): remove duplicate disabling of synchronized output (#28884)zeertzjq2024-05-21
| | | Synchronized output is enabled and disabled inside flush_buf().
* vim-patch:8cf29e4c4a2aChristian Clason2024-05-21
| | | | | | | | | | runtime(matchit): update matchit plugin to v1.20 fixes: vim/vim#14814 https://github.com/vim/vim/commit/8cf29e4c4a2af75bf31ef16ef108aea61c165af8 Co-authored-by: Christian Brabandt <cb@256bit.org>
* vim-patch:8.2.1520: Vim9: CTRL-] used in :def function does not work (#28880)zeertzjq2024-05-21
| | | | | | | | Problem: Vim9: CTRL-] used in :def function does not work. Solution: Omit count or prepend colon. (closes vim/vim#6769) https://github.com/vim/vim/commit/b3ea36c5bcb88b6a05a66347eedd461e9385103f Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:69dff00dfb37Christian Clason2024-05-20
| | | | | | | | | | runtime(verilog): set commentstring option closes: vim/vim#14810 https://github.com/vim/vim/commit/69dff00dfb37077f4a80fd9635ea963889ad4b49 Co-authored-by: Riley Bruins <ribru17@hotmail.com>
* vim-patch:9.1.0399: block_editing errors out when using del (#28867)zeertzjq2024-05-20
| | | | | | | | | | | | | | | | | | | | | | | | | Problem: block_editing errors out when using del (@Jamarley) Solution: Change ins_len from size_t to int and properly check that it doesn't become negative There is a check in os.c that verifies that `ins_len` does not become negative: ``` if (pre_textlen >= 0 && (ins_len = len - pre_textlen - offset) > 0) ``` However this only works, if ins_len can actually become negative and unfortunately, ins_len has been declared as `size_t` so instead of becoming negative it will wrap around and be very large. So let's define it as integer, after which the condition above properly catches this condition. fixes: vim/vim#14734 closes: vim/vim#14735 https://github.com/vim/vim/commit/d5c8c0920e1eee9ff7a9fa5168d8e85c01670630 Co-authored-by: Christian Brabandt <cb@256bit.org>
* Merge pull request #28854 from zeertzjq/vim-9.1.0394zeertzjq2024-05-20
|\ | | | | vim-patch:9.1.{0394,0395,0423}: getregionpos()
| * vim-patch:9.1.0423: getregionpos() wrong with blockwise mode and multibytezeertzjq2024-05-20
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: getregionpos() wrong with blockwise mode and multibyte. Solution: Use textcol and textlen instead of start_vcol and end_vcol. Handle coladd properly (zeertzjq). Also remove unnecessary buflist_findnr() in add_regionpos_range(), as getregionpos() has already switched buffer. closes: vim/vim#14805 https://github.com/vim/vim/commit/c95e64f41f7f6d1bdc95b047ae9b369743c8637b
| * vim-patch:9.1.0395: getregionpos() may leak memory on errorzeertzjq2024-05-20
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: regionpos may leak memory on error, coverity complains about dereferencing Null pointer Solution: free all list pointers (after v9.1.394), return early if buflist_findnr() returns NULL closes: vim/vim#14731 https://github.com/vim/vim/commit/b8ecedce79149ac6b994177e9a68979f86065cb1 Co-authored-by: Christian Brabandt <cb@256bit.org>
| * vim-patch:9.1.0394: Cannot get a list of positions describing a regionzeertzjq2024-05-20
|/ | | | | | | | | | | | | | | Problem: Cannot get a list of positions describing a region (Justin M. Keyes, after v9.1.0120) Solution: Add the getregionpos() function (Shougo Matsushita) fixes: vim/vim#14609 closes: vim/vim#14617 https://github.com/vim/vim/commit/b4757e627e6c83d1c8e5535d4887a82d6a5efdd0 Co-authored-by: Shougo Matsushita <Shougo.Matsu@gmail.com> Co-authored-by: Justin M. Keyes <justinkz@gmail.com>