aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAge
...
* fix(ui): avoid ambiguity about last chunk when flushing halfway (#29718)zeertzjq2024-07-15
|
* docs: misc (#29622)dundargoc2024-07-15
| | | | Co-authored-by: Christian Clason <c.clason@uni-graz.at> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* vim-patch:9.1.0582: Printed line doesn't overwrite colon when pressing Enter ↵zeertzjq2024-07-14
| | | | | | | | | | | | | in Ex mode Problem: Printed line no longer overwrites colon when pressing Enter in Ex mode (after 9.1.0573). Solution: Restore the behavior of pressing Enter in Ex mode. (zeertzjq) closes: vim/vim#15258 https://github.com/vim/vim/commit/7d664bf0eb2cb25cb77933c8b7f11ca09929e7b8
* vim-patch:9.1.0574: ex: wrong handling of commands after barzeertzjq2024-07-14
| | | | | | | | | | | | | | | | | Problem: ex: wrong handling of commands after bar Solution: for :append, :insert and :change use the text after the bar as input for those commands. This is what POSIX requests. (Mohamed Akram) See the POSIX Spec: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/ex.html#tag_20_40_13_03 Section 12.c closes: vim/vim#15229 https://github.com/vim/vim/commit/8c446da34998f6350911e07fbfd7932412c83185 Co-authored-by: Mohamed Akram <mohd.akram@outlook.com>
* vim-patch:9.1.0573: ex: no implicit print for single addresseszeertzjq2024-07-14
| | | | | | | | | | | | | | | | Problem: ex: no implicit print for single addresses Solution: explicitly print even during single addresses, as requested by POSIX (Mohamed Akram) See the POSIX behaviour here: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/ex.html#tag_20_40_13_03 Section 6b closes: vim/vim#15230 https://github.com/vim/vim/commit/c25a7084e9ae1f78c28ddcbe1fa23374cfdf1e03 Co-authored-by: Mohamed Akram <mohd.akram@outlook.com>
* vim-patch:9.1.0580: :lmap mapping for keypad key not applied when typed in ↵zeertzjq2024-07-14
| | | | | | | | | | | | Select mode (#29693) Problem: An :lmap mapping for a printable keypad key is not applied when typing it in Select mode. Solution: Change keypad key to ASCII after setting vgetc_char. (zeertzjq) closes: vim/vim#15245 https://github.com/vim/vim/commit/90a800274ded86d5d79dbea7ba647cd69b029b4e
* vim-patch:9.1.0575: Wrong comments in alt_tabpage() (#29692)zeertzjq2024-07-14
| | | | | | | | | Problem: Wrong comments in alt_tabpage() (after v9.1.0572) Solution: Correct the comments (zeertzjq). closes: vim/vim#15235 https://github.com/vim/vim/commit/1a3dd7dc7847a3568fe96192a21e478f46c07929
* vim-patch:8.2.3716: Vim9: range without a command is not compiledzeertzjq2024-07-14
| | | | | | | | | Problem: Vim9: range without a command is not compiled. Solution: Add the ISN_EXECRANGE byte code. https://github.com/vim/vim/commit/e4eed8c6db693a9183b776032570ce2f89dcffb6 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.1.0579: Ex command is still executed after giving E1247zeertzjq2024-07-14
| | | | | | | | | | Problem: Ex command is still executed after giving E1247. Solution: Indicate the error properly and set cmd to NULL. (zeertzjq) closes: vim/vim#15241 https://github.com/vim/vim/commit/d1b5ea984d41102d253ecdd9a76124cd4c58b97d
* vim-patch:8.2.4065: computation overflow with large cound for :yankzeertzjq2024-07-14
| | | | | | | | | Problem: Computation overflow with large cound for :yank. Solution: Avoid an overflow. https://github.com/vim/vim/commit/3cf21b305104e91a28e4ce3a473672b2e88a9469 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* Merge pull request #29315 from bfredl/staticinlinebfredl2024-07-13
|\ | | | | refactor(declarations): also generate prototypes for functions in headers
| * refactor(declarations): also generate prototypes for functions in headersbfredl2024-07-13
| | | | | | | | | | | | | | | | | | | | | | Before this change, "static inline" functions in headers needed to have their function attributes specified in a completely different way. The prototype had to be duplicated, and REAL_FATTR_ had to be used instead of the public FUNC_ATTR_ names. TODO: need a check that a "header.h.inline.generated.h" file is not forgotten when the first "static inline" function with attributes is added to a header (they would just be silently missing).
* | fix(lua)!: do not use typed table for empty dictAmit Singh2024-07-13
|/ | | | | | | | | | | | | | | | | Problem: Empty dictionaries are converted into typed tables of the form `{ [true] = 6}` instead of an empty dictionary representation `{}`. This leads to incorrect table representation, along with failure in JSON encoding of such tables as currently tables with only string and number type keys can be encoded. Solution: The typed table logic has been removed from `nlua_push_Dictionary`. The typed table logic is required only for float value conversions which is already handled in `nlua_push_Float`. So, it is(was) no longer required here. Fixes neovim/neovim#29218
* vim-patch:9.1.0572: cannot specify tab page closing behaviour (#29682)zeertzjq2024-07-13
| | | | | | | | | | | | Problem: cannot specify tab page closing behaviour (Gianluca Pacchiella) Solution: Add the 'tabclose' option (LemonBoy). fixes: vim/vim#5967 closes: vim/vim#15204 https://github.com/vim/vim/commit/5247b0b92e191a046b034171a3b34031e317735f Co-authored-by: LemonBoy <thatlemon@gmail.com>
* fix(input): handle vim.on_key() properly with ALT and K_SPECIAL (#29677)zeertzjq2024-07-13
|
* vim-patch:9.1.0569: fnamemodify() treats ".." and "../" differently (#29673)zeertzjq2024-07-12
| | | | | | | | | Problem: fnamemodify() treats ".." and "../" differently. Solution: Expand ".." properly like how "/.." is treated in 8.2.3388. (zeertzjq) closes: vim/vim#15218 https://github.com/vim/vim/commit/1ee7420460768df67ea4bc73467f2d4f8b1555bd
* vim-patch:9.1.0568: Cannot expand paths from 'cdpath' settingzeertzjq2024-07-12
| | | | | | | | | | | | | | Problem: Cannot expand paths from 'cdpath' setting (Daniel Hahler) Solution: Implement 'cdpath' completion, add the new 'dir_in_path' completion type (LemonBoy) fixes vim/vim#374 closes: vim/vim#15205 https://github.com/vim/vim/commit/a20bf69a3b32024cb7809be87af33bf9dc490a19 Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:9.1.0567: Cannot use relative paths as findfile() stop directorieszeertzjq2024-07-12
| | | | | | | | | | | Problem: Cannot use relative paths as findfile() stop directories. Solution: Change a relative path to an absolute path. (zeertzjq) related: vim/vim#15200 closes: vim/vim#15202 https://github.com/vim/vim/commit/764526e2799fbed040fc867858ee2eb0677afe98
* vim-patch:9.1.0566: Stop dir in findfile() doesn't work properly w/o ↵zeertzjq2024-07-12
| | | | | | | | | | | | | trailing slash Problem: Stop directory in findfile() doesn't work properly without a trailing slash. Solution: Always use fnamencmp(), not fnamecmp(). related: vim/vim#15200 related: vim/vim#15202 https://github.com/vim/vim/commit/e6ab23bd4a41840860ae2904956c4d255a9dd528
* vim-patch:9.1.0565: Stop directory doesn't work properly in 'tags'zeertzjq2024-07-12
| | | | | | | | | | | | | | | Problem: Stop directory doesn't work properly in 'tags'. (Jesse Pavel) Solution: Also move the stop directory forward by one byte. (zeertzjq) This doesn't support relative stop directories yet, as they are not supported in other places like findfile() either. fixes: vim/vim#15200 related: vim/vim#15202 https://github.com/vim/vim/commit/68819afb2cdd0f44baa080db589e1d8f77099e5f
* vim-patch:8.2.3388: fnamemodify('path/..', ':p') differs from using ↵zeertzjq2024-07-12
| | | | | | | | | | 'path/../' (#29667) Problem: fnamemodify('path/..', ':p') differs from using 'path/../'. Solution: Include the "/.." in the directory name. (closes vim/vim#8808) https://github.com/vim/vim/commit/4eaef9979fc5032606897963f1af37674ee0d422 Co-authored-by: Bram Moolenaar <Bram@vim.org>
* vim-patch:9.1.0557: moving in the buffer list doesn't work as documented ↵zeertzjq2024-07-11
| | | | | | | | | | | | | | | | | | | (#29653) Problem: moving in the buffer list doesn't work as documented (SenileFelineS) Solution: Skip non-help buffers, when run from normal buffers, else only move from help buffers to the next help buffer (LemonBoy) As explained in the help section for :bnext and :bprev the commands should jump from help buffers to help buffers (and from regular ones to regular ones). fixes: vim/vim#4478 closes: vim/vim#15198 https://github.com/vim/vim/commit/893eeeb44583ca33276e263165b2a6e50fd297d0 Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:9.1.0556: :bwipe doesn't remove file from jumplist of other ↵zeertzjq2024-07-11
| | | | | | | | | | | | | tabpages (#29651) Problem: :bwipe doesn't remove file from jumplist and tagstack of other tabpages. Time complexity of mark_forget_file() is O(n^2) when removing all entries (after v9.1.0554) Solution: Use FOR_ALL_TAB_WINDOWS(). Start the loops over the arrays from the end instead of the start (zeertzjq) closes: vim/vim#15199 https://github.com/vim/vim/commit/2e7d89b39883b0cfd3e615b02bd55186e00fb7ce
* refactor: remove CH_FOLD macrodundargoc2024-07-10
| | | | It should not be needed as utf_fold should already work on its own.
* vim-patch:9.1.{0503,0549} (#29643)zeertzjq2024-07-10
| | | | | | | | | | | | | | | | | | | | | | | | vim-patch:9.1.0503: cannot use fuzzy keyword completion Problem: cannot use fuzzy keyword completion (Maxim Kim) Solution: add the "fuzzycollect" value for the 'completeopt' setting, to gather matches using fuzzy logic (glepnir) fixes: vim/vim#14912 closes: vim/vim#14976 https://github.com/vim/vim/commit/43eef882ff42e673af1e753892801ba20c5d002a vim-patch:9.1.0549: fuzzycollect regex based completion not working as expected Problem: fuzzycollect regex based completion not working as expected Solution: Revert Patch v9.1.0503 (glepnir) closes: vim/vim#15192 https://github.com/vim/vim/commit/600a12d08e7aeb95a6b02382bfee310aef9801dd Co-authored-by: glepnir <glephunter@gmail.com>
* vim-patch:9.1.0554: :bw leaves jumplist and tagstack data around (#29639)zeertzjq2024-07-10
| | | | | | | | | | | | | | | | | Problem: :bw leaves jumplist and tagstack data around (Paul "Joey" Clark) Solution: Wipe jumplist and tagstack references to the wiped buffer (LemonBoy) As documented the :bwipeout command brutally deletes all the references to the buffer, so let's make it delete all the entries in the jump list and tag stack referring to the wiped-out buffer. fixes: vim/vim#8201 closes: vim/vim#15185 https://github.com/vim/vim/commit/4ff3a9b1e3ba45f9dbd0ea8c721f27d9315c4d93 Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:9.1.0547: No way to get the arity of a Vim function (#29638)zeertzjq2024-07-10
| | | | | | | | | | | | | Problem: No way to get the arity of a Vim function (Austin Ziegler) Solution: Enhance get() Vim script function to return the function argument info using get(func, "arity") (LemonBoy) fixes: vim/vim#15097 closes: vim/vim#15109 https://github.com/vim/vim/commit/48b7d05a4f88c4326bd5d7a73a523f2d953b3e51 Co-authored-by: LemonBoy <thatlemon@gmail.com>
* fix(quickfix): make shortmess+=O work with cmdheight=0 (#29609)zeertzjq2024-07-08
|
* vim-patch:9.1.0543: Behavior of CursorMovedC is strange (#29608)zeertzjq2024-07-08
| | | | | | | | | | Problem: Behavior of CursorMovedC is strange. Solution: Also trigger when the cmdline has changed. (zeertzjq) fixes: vim/vim#15069 closes: vim/vim#15071 https://github.com/vim/vim/commit/8145620a958dbb5c82cf8f8a37556ee1ea501c6d
* vim-patch:9.1.0540: Unused assignment in sign_define_cmd()zeertzjq2024-07-08
| | | | | | | | | | Problem: Unused assignment in sign_define_cmd() Solution: Remove the assignment. Also document the "priority" flag of sign_define(). (zeertzjq) closes: vim/vim#15169 https://github.com/vim/vim/commit/fc3f5dba52099d82ccc8bfe309d58a6fac01373d
* build: remove -O2 from gen_cflagsLewis Russell2024-07-07
| | | | | | | | | Problem: zig cc implicitly defines NDEBUG with -O2. This breaks debug builds which does not include -O2 or NDEBUG. Solution: Do not add -O2 when generating header files.
* vim-patch:9.1.0538: not possible to assign priority when defining a sign ↵zeertzjq2024-07-07
| | | | | | | | | | | | | | | | | | (#29592) Problem: not possible to assign priority when defining a sign (Mathias Fußenegger) Solution: Add the priority argument for the :sign-define ex command and the sign_define() function (LemonBoy) Use the specified value instead of the default one (SIGN_DEF_PRIO) when no priority is explicitly specified in sign_place or :sign place. fixes: vim/vim#8334 closes: vim/vim#15124 https://github.com/vim/vim/commit/b975ddfdf96644b8df808415dee36f99abd48753 Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:9.1.0537: signed number detection for CTRL-X/A can be improved ↵zeertzjq2024-07-07
| | | | | | | | | | | | | | | | | (#29590) Problem: signed number detection for CTRL-X/A can be improved (Chris Patuzzo) Solution: Add the new "blank" value for the 'nrformat' setting. This will make Vim assume a signed number only if there is a blank in front of the sign. (distobs) fixes: vim/vim#15033 closes: vim/vim#15110 https://github.com/vim/vim/commit/25ac6d67d92e0adda53b8d44b81c15031643ca1e Co-authored-by: distobs <cuppotatocake@gmail.com>
* vim-patch:9.1.0534: completion wrong with fuzzy when cycling back to ↵zeertzjq2024-07-06
| | | | | | | | | | | | | | original (#29588) Problem: completion wrong with fuzzy when cycling back to original (Quan Nguyen) Solution: reset show_match_ok when cp_score is zero (glepnir) fixes: vim/vim#15095 closes: vim/vim#15105 https://github.com/vim/vim/commit/65407ce1d2963e7a758af8fecdcbd67b9a90bdb9 Co-authored-by: glepnir <glephunter@gmail.com>
* fix(lua): don't include text after cursor in completion pattern (#29587)zeertzjq2024-07-06
|
* refactor(eval): use uv_random() for init_srand() (#29575)zeertzjq2024-07-05
| | | | | N/A patches for version.c: vim-patch:9.1.0518: initialize the random buffer can be improved vim-patch:9.1.0531: resource leak in mch_get_random()
* vim-patch:9.1.0524: the recursive parameter in the *_equal functions can be ↵zeertzjq2024-07-05
| | | | | | | | | | | | | | | removed (#29572) Problem: the recursive parameter in the *_equal functions can be removed Solution: Remove the recursive parameter in dict_equal(), list_equal() object_equal and tv_equal(). Use a comparison of the static var recursive_cnt == 0 to determine whether or not tv_equal() has been called recursively (Yinzuo Jiang). closes: vim/vim#15070 https://github.com/vim/vim/commit/7ccd1a2e858dbb2ac7fb09971dfcbfad62baa677 Co-authored-by: Yinzuo Jiang <jiangyinzuo@foxmail.com>
* vim-patch:9.1.0526: Unwanted cursor movement with pagescroll at start of ↵luukvbaal2024-07-05
| | | | | | | | | | buffer (#29569) Problem: Cursor is moved to bottom of window trying to pagescroll when already at the start of the buffer (Asheq Imran, after v9.1.0357) Solution: Don't move cursor when buffer content did not move. (Luuk van Baal) https://github.com/vim/vim/commit/8ccb89016e4b4b7f87acd1da78486c077350ceef
* vim-patch:9.1.0525: Right release selects immediately when pum is truncated. ↵zeertzjq2024-07-05
| | | | | | | | | | | | | (#29568) Problem: Right release selects immediately when pum is truncated. Solution: Use pum_height instead of pum_size when checking click row. Don't place it above mouse row when there is more space below. (zeertzjq) fixes: vim/vim#15101 closes: vim/vim#15102 https://github.com/vim/vim/commit/761a420c66402545acd8ee3ffa17c3a1fc3110e4
* fix(mouse): don't treat click on hsep as click on statusline (#29565)zeertzjq2024-07-05
| | | This allows showing popup menu when right-clicking on hsep or cmdline.
* vim-patch:9.1.0529: silent! causes following try/catch to not work (#29567)zeertzjq2024-07-05
| | | | | | | | | | | | | | | | | | | | | | | | | | Problem: silent! causes following try/catch to not work (Malcolm Rowe) Solution: consider emsg_silent in handle_did_throw() and do not abort evaluation flow for :silent! (LemonBoy) The silent! flag causes the evaluation not to be aborted in case of uncaught exceptions, adjust handle_did_throw to take this detail into account. Fixes the long-standing todo.txt item: ``` Problem that a previous silent ":throw" causes a following try/catch not to work. (ZyX, 2013 Sep 28) With examples: (Malcolm Rowe, 2015 Dec 24) Also see vim/vim#8487 for an example. ``` fixes: vim/vim#538 closes: vim/vim#15128 https://github.com/vim/vim/commit/749ba0f6d922b3f6b54a66543c214479492b5a0e Cherry-pick Test_deeply_nested_source() from patch 8.2.5169. Co-authored-by: LemonBoy <thatlemon@gmail.com>
* vim-patch:9.1.0528: spell completion message still wrong in translations ↵zeertzjq2024-07-05
| | | | | | | | | | | | | | (#29566) Problem: spell completion message still wrong in translations (after 9.1.0512) Solution: Update translation files with the new message (Kyle Kovacs) closes: vim/vim#15113 https://github.com/vim/vim/commit/68f5ceddca2ec2d591b9180020c95bb86bf6d3d2 Co-authored-by: Kyle Kovacs <kkovacs@diconfiberoptics.com>
* docs: misc (#29410)dundargoc2024-07-05
| | | | Co-authored-by: Michael Härtl <haertl.mike@gmail.com> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
* build(macos): disable deduplication in link stepChristian Clason2024-07-04
| | | | | | | | | Problem: Apple Clang 16 comes with a new deduplication algorithm that is enabled by default in release builds (https://developer.apple.com/documentation/xcode-release-notes/xcode-16-release-notes#New-Features-in-Xcode-16-Beta) which breaks the built nvim binary (locks and spins at 100% CPU). Solution: Disable deduplication on macOS. Tested on Clang 15 as well and seems to make no difference to binary size anyway.
* refactor: add assertion for v_blob in tv_ptr() (#29554)zeertzjq2024-07-04
| | | Also add test for using printf() and id() with a Blob.
* feat(win32): embed executable iconalex-tdrn2024-07-02
| | | | | | | | Problem: on windows, the neovim executable (and thus the filetypes associated to open with neovim) has no embedded icon Solution: create a windows resource file pointing to the icon, and add it to the nvim binary target
* feat(jumplist): allow opting out of removing unloaded buffers (#29347)zeertzjq2024-06-30
| | | | Problem: Cannot opt out of removing unloaded buffers from the jumplist. Solution: Only enable that with "unload" flag in 'jumpoptions'.
* refactor: remove special handling for lowercase German sharp sdundargoc2024-06-29
| | | | | | utf8proc already defines LATIN CAPITAL LETTER SHARP S (ẞ) to be the uppercase variant of LATIN SMALL LETTER SHARP S (ß), so this special workaround when using `gU` is no longer needed on the neovim side.
* Merge pull request #29467 from bfredl/shadapack2bfredl2024-06-29
|\ | | | | refactor(shada): don't use msgpack_packer for shada
| * refactor(shada): don't use msgpack_packer for shadabfredl2024-06-27
| | | | | | | | | | Now msgpack-c is never used for packing. The real fun part will be replacing it for unpacking.