aboutsummaryrefslogtreecommitdiff
path: root/test
Commit message (Collapse)AuthorAge
* feat(api): support abbreviations in nvim_set_keymapbfredl2023-06-09
| | | | closes #19198
* vim-patch:9.0.1617: charidx() result is not consistent with byteidx() (#23963)zeertzjq2023-06-09
| | | | | | | | | | Problem: charidx() and utf16idx() result is not consistent with byteidx(). Solution: When the index is equal to the length of the text return the lenght of the text instead of -1. (Yegappan Lakshmanan, closes vim/vim#12503) https://github.com/vim/vim/commit/577922b917e48285a7a312daf7b5bbc6e272939c Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
* vim-patch:9.0.1620: Nix files are not recognized from the hashbang line (#23961)Christian Clason2023-06-09
| | | | | | | | Problem: Nix files are not recognized from the hashbang line. Solution: Add a hashbang check. (issue vim/vim#12507) https://github.com/vim/vim/commit/19548c6a742d954ecd0b50b0680c37cc6ced7473 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.0.1618: Trace32 files are not recognized (#23960)Christian Clason2023-06-08
| | | | | | | | Problem: Trace32 files are not recognized. Solution: Add patterns for the t32 filetype. (Christoph Sax, closes vim/vim#12505) https://github.com/vim/vim/commit/7fbcee6f928356f1c205a4dfa67c1d542f743b92 Co-authored-by: Christoph Sax <christoph.sax@mailbox.org>
* feat(lua): add ringbuffer (#22894)Mathias Fußenegger2023-06-08
| | | https://en.wikipedia.org/wiki/Circular_buffer
* vim-patch:9.0.1616: quickfix text field is truncated (#23951)zeertzjq2023-06-08
| | | | | | | | | Problem: Quickfix text field is truncated. Solution: Fix output of text field after pattern field in quickfix buffer. (Shane Harper, closes vim/vim#12498) https://github.com/vim/vim/commit/5bf042810b19a627eda2f170624a0cfd7b4f6ed6 Co-authored-by: Shane Harper <shane@shaneharper.net>
* vim-patch:9.0.1615: URL shortcut files are not recognized (#23950)Christian Clason2023-06-07
| | | | | | | | Problem: URL shortcut files are not recognized. Solution: Add a pattern for URL shortcut files. (closes vim/vim#12474) https://github.com/vim/vim/commit/cdb7b4c50826df254d2e5ba8abd211e49b7a9784 Co-authored-by: ObserverOfTime <chronobserver@disroot.org>
* feat(lua): add `vim.system()`Lewis Russell2023-06-07
| | | | | | | | | | | | | | | feat(lua): add vim.system() Problem: Handling system commands in Lua is tedious and error-prone: - vim.fn.jobstart() is vimscript and comes with all limitations attached to typval. - vim.loop.spawn is too low level Solution: Add vim.system(). Partly inspired by Python's subprocess module Does not expose any libuv objects.
* feat(diff): grouping optimization for linematch algorithmJonathon2023-06-07
|
* fix(events): don't expand non-file as file namezeertzjq2023-06-07
|
* refactor(api): adjust errors for setting options (#23942)zeertzjq2023-06-07
|
* refactor(options): remove `getoption_T` and introduce `OptVal` (#23850)Famiu Haque2023-06-07
| | | | | | | | Removes the `getoption_T` struct and also introduces the `OptVal` struct to unify the methods of getting/setting different option value types. This is the first of many PRs to reduce code duplication in the Vim option code as well as to make options easier to maintain. It also increases the flexibility and extensibility of options. Which opens the door for things like Array and Dictionary options.
* refactor(defaults): do not use C specific default values for options (#22500)Gregory Anders2023-06-06
| | | | | | | | | | The options 'path', 'include', and 'define' all use C-specific default values. This may have made sense a long time ago when Vim was mostly used just for writing C, but this is no longer the case, and we have ample support for filetype specific configuration. Make the default values of these options empty and move the C-specific values into a filetype plugin where they belong. Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* feat(health): fold successful healthchecks #22866Alexandre Teoi2023-06-06
| | | | | | | | Problem: checkhealth can be noisy, but we don't want to omit info. Solution: Fold OK results by default, if 'foldenable' is enabled. Resolves #22796
* vim-patch:9.0.1614: strlen() called too often for :spellrepall (#23940)zeertzjq2023-06-06
| | | | | | Problem: strlen() called too often for :spellrepall. Solution: Store the result in a variable. (closes vim/vim#12497) https://github.com/vim/vim/commit/59f7038536a370d771758dc34036cc1424be7421
* fix: version-range < and <= #23539Gianmaria Bajo2023-06-06
| | | | | | | | | vim.version.range() couldn't parse them correctly. For example, vim.version.range('<0.9.0'):has('0.9.0') returned `true`. fix: range:has() accepts vim.version() So that it's possible to compare a range with: vim.version.range(spec):has(vim.version())
* fix(statusline): redraw when VIsual_mode changes (#23933)zeertzjq2023-06-06
|
* fix(spell): splice extmarks on :spellrepall (#23929)zeertzjq2023-06-06
|
* vim-patch:9.0.1613: some make output gets picked up by 'errorformat' (#23926)Gregory Anders2023-06-05
| | | | | | Problem: Some make output gets picked up by 'errorformat'. Solution: Ignore make output by default. (Gregory Anders, closes vim/vim#12481) https://github.com/vim/vim/commit/d1911a8e2b1498f0cb0275a98f63dd212204a1a8
* vim-patch:9.0.1612: "skipcol" not reset when using multi-byte characters ↵zeertzjq2023-06-06
| | | | | | | | | | (#23928) Problem: "skipcol" not reset when using multi-byte characters. Solution: Compare with w_virtcol instead of w_cursor.col. (closes vim/vim#12457) https://github.com/vim/vim/commit/15d4747ffd197ffa5b5a41a852a1fe93b6cc35fd Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.0.1610: display is wrong when 'smoothscroll' is setzeertzjq2023-06-06
| | | | | | | | | Problem: Display is wrong when 'smoothscroll' is set and scrolling multiple lines. Solution: Redraw with UPD_NOT_VALID when "skipcol" is or was set. (closes vim/vim#12490, closes vim/vim#12468) https://github.com/vim/vim/commit/d9a92dc70b20c76cef9ca186676583c92c14311c
* vim-patch:9.0.1603: display wrong if scrolling multiple lines with ↵zeertzjq2023-06-06
| | | | | | | | | | 'smoothscroll' Problem: Display wrong when scrolling multiple lines with 'smoothscroll' set. Solution: Redraw when w_skipcol changed. (closes vim/vim#12477, closes vim/vim#12468) https://github.com/vim/vim/commit/3c802277604a6b21110e41bedfe4c937ba7c2b7d
* fix(editorconfig): check that buffer is valid (#23922)Gregory Anders2023-06-05
| | | Fixes: https://github.com/neovim/neovim/issues/23921
* fix(mouse): handle folded lines with virt_lines attached to line above (#23912)zeertzjq2023-06-05
|
* test(core/startup_spec): add a test for #13720 (#23910)zeertzjq2023-06-05
|
* refactor(lsp): use LPeg for watchfiles matching (#23788)Jon Huhn2023-06-05
|
* fix(lsp): set extra info only when it has a value (#23868)Raphael2023-06-05
|
* fix(plines): folded lines with virt_lines attached to line abovezeertzjq2023-06-05
|
* vim-patch:9.0.1607: screenpos() returns wrong row with diff filler lineszeertzjq2023-06-05
| | | | | | | | | Problem: screenpos() returns wrong row with diff filler lines. Solution: Only add filler lines when appropriate. Also don't add the 'smoothscroll' marker when w_skipcol is zero. (closes vim/vim#12485, closes vim/vim#12484) https://github.com/vim/vim/commit/55daae392157823dc5434e6be1344f4336bfe96f
* vim-patch:9.0.1600: screenpos() does not take w_skipcol into accountzeertzjq2023-06-05
| | | | | | | Problem: screenpos() does not take w_skipcol into account. Solution: Subtract w_skipcol from column. (closes vim/vim#12486, closes vim/vim#12476) https://github.com/vim/vim/commit/f0e68c0e2a3539f899e737e5b167622fe081fbbd
* fix(lsp): restore marks after apply_text_edits() #14630Folke Lemaitre2023-06-04
| | | | | | | | | | | | | | | | | | | | | | | | | | | PROBLEM: Whenever any text edits are applied to the buffer, the `marks` part of those lines will be lost. This is mostly problematic for code formatters that format the whole buffer like `prettier`, `luafmt`, ... When doing atomic changes inside a vim doc, vim keeps track of those changes and can update the positions of marks accordingly, but in this case we have a whole doc that changed. There's no simple way to update the positions of all marks from the previous document state to the new document state. SOLUTION: * save marks right before `nvim_buf_set_lines` is called inside `apply_text_edits` * check if any marks were lost after doing `nvim_buf_set_lines` * restore those marks to the previous positions TEST CASE: * have a formatter enabled * open any file * create a couple of marks * indent the whole file to the right * save the file Before this change: all marks will be removed. After this change: they will be preserved. Fixes #14307
* vim-patch:9.0.1606: using freed memory when 'foldcolumn' is set (#23906)zeertzjq2023-06-05
| | | | | | Problem: Using freed memory when 'foldcolumn' is set. Solution: Save extra pointer to free it later. (closes vim/vim#12492) https://github.com/vim/vim/commit/58e1e010454113a7c8a9b0327c54d2ee7d73d2fd
* fix(ui): don't send empty grid_line with redrawdebug=compositor (#23899)zeertzjq2023-06-04
|
* fix(events)!: trigger CursorMoved later on switching window (#23711)zeertzjq2023-06-04
|
* vim-patch:9.0.1602: stray character visible if marker on top of double-wide ↵zeertzjq2023-06-04
| | | | | | | | | | char (#23897) Problem: Stray character is visible if 'smoothscroll' marker is displayed on top of a double-wide character. Solution: When overwriting a double-width character with the 'smoothscroll' marker clear the second half. (closes vim/vim#12469) https://github.com/vim/vim/commit/ecb87dd7d3f7b9291092a7dd8fae1e59b9903252
* vim-patch:9.0.1601: filetype detection fails for *.conf file without ↵Christian Clason2023-06-04
| | | | | | | | | | | | comments (#23896) Problem: Filetype detection fails for *.conf file without comments. (Dmitrii Tcyganok) Solution: Use "conf" filetype as a fallback for an empty .conf file. (closes vim/vim#12487, closes vim/vim#12483) https://github.com/vim/vim/commit/664fd12aa27a3c6bd19cfa474c4630d6c03fcc61 Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* Merge pull request #23864 from folke/nvim_win_set_heightbfredl2023-06-03
|\ | | | | fix(api): dont change curwin for nvim_win_set_height
| * test: added tests for set_height with winminheight=0 and a winbarFolke Lemaitre2023-06-01
| |
* | fix(folds): allow overlay virtual text on folded line (#23892)zeertzjq2023-06-03
| | | | | | Also always check for fi_level before fi_lines.
* | feat(lua): rename vim.loop -> vim.uv (#22846)Lewis Russell2023-06-03
| |
* | vim-patch:9.0.1599: Cursor not adjusted when 'splitkeep' is not "cursor" ↵luukvbaal2023-06-02
| | | | | | | | | | | | | | | | | | | | | | (#23884) Problem: Cursor not adjusted when near top or bottom of window and 'splitkeep' is not "cursor". Solution: Move boundary checks to outer cursor move functions, inner functions should only return valid cursor positions. (Luuk van Baal, closes vim/vim#12480) https://github.com/vim/vim/commit/a109f39ef54bc3894768170f02c1b6ac56164488
* | feat(:source): source current ft=lua buffer as Lua code (#23802)zeertzjq2023-06-02
| |
* | vim-patch:9.0.1597: cursor ends up below the window after a put (#23873)zeertzjq2023-06-02
| | | | | | | | | | | | | | | | | | Problem: Cursor ends up below the window after a put. Solution: Mark w_crow and w_botline invalid when changing the cursor line. (closes vim/vim#12465) https://github.com/vim/vim/commit/8509014adda188ee8bdf6a2e123fbf15a91b29d2 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* | vim-patch:9.0.1598: screenchar() and others are wrong with DBCS 'encoding' ↵zeertzjq2023-06-02
| | | | | | | | | | | | | | | | | | | | (#23872) Problem: screenchar(), screenchars() and screenstring() do not work properly when 'encoding' is set to a double-byte encoding. Solution: Fix the way the bytes of the characters are obtained. (issue vim/vim#12469) https://github.com/vim/vim/commit/47eec6716b8621fd43bac8ecc9c19089df26705e
* | feat(lsp): set client offset_encoding if server supports positionEncodingGregory Anders2023-06-01
| | | | | | | | | | | | If the server sends the positionEncoding capability in its initialization response, automatically set the client's offset_encoding to use the value provided.
* | Merge pull request #23789 from luukvbaal/spellzeertzjq2023-06-01
|\ \ | | | | | | vim-patch:9.0.{1585,1595}
| * | vim-patch:9.0.1595: line pointer becomes invalid when using spell checkingLuuk van Baal2023-06-01
| | | | | | | | | | | | | | | | | | | | | Problem: Line pointer becomes invalid when using spell checking. Solution: Call ml_get() at the right places. (Luuk van Baal, closes vim/vim#12456) https://github.com/vim/vim/commit/e84c773d42e8b6ef0f8ae9b6c7312e0fd47909af
* | | vim-patch:9.0.1596: :registers command does not work in sandbox (#23866)zeertzjq2023-06-01
| |/ |/| | | | | | | | | | | | | Problem: :registers command does not work in sandbox. Solution: Add flag to the command. (closes vim/vim#12473) https://github.com/vim/vim/commit/eb43b7f0531bd13d15580b5c262a25d6a52a0823 Co-authored-by: Julio B <julio.bacel@gmail.com>
* | fix(column): don't overflow sign column with extmark signs (#23854)zeertzjq2023-06-01
| |
* | test(extmarks): folding inline virt_text on empty line (#23847)zeertzjq2023-05-31
| |