aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval
Commit message (Collapse)AuthorAge
...
| * | vim-patch:8.2.2184: Vim9: no error when using "2" for a line numberzeertzjq2022-10-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Vim9: no error when using "2" for a line number. Solution: Give an error message if the line number is invalid. (closes vim/vim#7492) https://github.com/vim/vim/commit/9a963377b4811e4e0419ec8825856ff4b01331ac N/A patches for version.c: vim-patch:8.2.1465: Vim9: subscript not handled properly Problem: Vim9: subscript not handled properly. Solution: Adjust error message. Remove dead code. Disallow string to number conversion in scripts. https://github.com/vim/vim/commit/56acb0943ede35cd9d2f6667cde2442819ccbf59
| * | vim-patch:8.2.2316: Vim9: cannot list a lambda functionzeertzjq2022-10-04
| | | | | | | | | | | | | | | | | | Problem: Vim9: cannot list a lambda function. Solution: Support the <lambda>9 notation, like :disassemble. (closes vim/vim#7634) https://github.com/vim/vim/commit/b657198cb30765468451d7f68fce49b5b4000c5d
| * | Merge pull request #20375 from famiu/refactor/get_optionbfredl2022-09-28
| |\ \ | | | | | | | | refactor: replace unnecessary helper functions in optionstr.c
| | * | refactor: replace unnecessary helper functions in optionstr.cFamiu Haque2022-09-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Replaces unnecessary helper functions in `optionstr.c` such as `get_option_flags()`, `get_option_fullname()`, `set_option_flag()`, `is_global_option()`, etc. with a single `get_option()` helper function that allows direct access to the `options` array. Also refactors `f_exists()` to use `get_varp_scope` instead of using `get_option_tv`. This opens up the path for removing `getoptions_T` altogether later down the line since the hidden option logic is no longer needed.
| * | | fix: compiler warnings from clang 15 (#20321)dundargoc2022-09-28
| | | | | | | | | | | | | | | | Add -Wno-strict-prototypes flag to external dependencies to suppress cjson warnings. These needs to be fixed upstream first.
| * | | fix(api): notify dict watchers on nvim_set_var and vim.g settersmolck2022-09-27
| |/ / | | | | | | | | | | | | Co-authored-by: bfredl <bjorn.linse@gmail.com> Co-authored-by: Christian Clason <c.clason@uni-graz.at>
| * | refactor: move klib out of src/nvim/ #20341dundargoc2022-09-25
| | | | | | | | | | | | It's confusing to mix vendored dependencies with neovim source code. A clean separation is simpler to keep track of and simpler to document.
| * | vim-patch:9.0.0568: autocmd code is indented more than needed (#20318)zeertzjq2022-09-24
| | | | | | | | | | | | | | | | | | Problem: Autocmd code is indented more than needed. Solution: Break out sooner. (Yegappan Lakshmanan, closes vim/vim#11208) Also in user function code. https://github.com/vim/vim/commit/e9dcf13a3007d4f603e007e0526b0005fd026bc5
| * | vim-patch:8.1.0941: macros for MS-Windows are inconsistent (#20215)dundargoc2022-09-18
| | | | | | | | | | | | | | | | | | | | | Problem: Macros for MS-Windows are inconsistent, using "32", "3264 and others. Solution: Use MSWIN for all MS-Windows builds. Use FEAT_GUI_MSWIN for the GUI build. (Hirohito Higashi, closes vim/vim#3932) https://github.com/vim/vim/commit/4f97475d326c2773a78561fb874e4f23c25cbcd9
| * | fix(eval)!: make Lua Funcref work as method and in substitute() (#20217)zeertzjq2022-09-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BREAKING CHANGE: When using a Funcref converted from a Lua function as a method in Vim script, the result of the base expression is now passed as the first argument instead of being ignored. vim-patch:8.2.5117: crash when calling a Lua callback from a :def function Problem: Crash when calling a Lua callback from a :def function. (Bohdan Makohin) Solution: Handle FC_CFUNC in call_user_func_check(). (closes vim/vim#10587) https://github.com/vim/vim/commit/7d149f899d423b7bf2b90d7b11ebe3e560c462b9
| * | vim-patch:9.0.0476: varargs does not work for replacement function of ↵zeertzjq2022-09-16
| | | | | | | | | | | | | | | | | | | | | substitute() (#20216) Problem: Varargs does not work for replacement function of substitute(). Solution: Check the varargs flag of the function. (closes vim/vim#11142) https://github.com/vim/vim/commit/48db5dafecacced4a9e42de3f92838b2d59beb4c
| * | vim-patch:8.2.3796: the funcexe_T struct members are not named consistently ↵zeertzjq2022-09-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | (#20214) Problem: The funcexe_T struct members are not named consistently. Solution: Prefix "fe_" to all the members. https://github.com/vim/vim/commit/851f86b951cdd67ad9cf3149e46169d1375c8d82 Omit fe_check_type: always NULL in legacy Vim script.
| * | vim-patch:8.2.0067: ERROR_UNKNOWN clashes on some systems (#20212)zeertzjq2022-09-16
| | | | | | | | | | | | | | | | | | | | | Problem: ERROR_UNKNOWN clashes on some systems. Solution: Rename ERROR_ to FCERR_. (Ola Söder, closes vim/vim#5415) https://github.com/vim/vim/commit/ef140544f6703a7a4c0f6a15f610508ed6b09e89 Remove ERROR_BOTH which was removed from Vim in patch 7.4.1582.
| * | refactor: move definitions from `typval.h` to `typval_defs.h` (#20194)Famiu Haque2022-09-14
| | | | | | | | | Taken from #20187.
| * | vim-patch:9.0.0449: there is no easy way to translate a key code into a ↵zeertzjq2022-09-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | string (#20168) Problem: There is no easy way to translate a string with a key code into a readable string. Solution: Add the keytrans() function. (closes vim/vim#11114) https://github.com/vim/vim/commit/cdc839353f68ca43db6446e1b727fc7ba657b738 vim-patch:7b2d87220c6c Add missing part of patch https://github.com/vim/vim/commit/7b2d87220c6c974d5cdae672b6f9620a6bcbd1dc
| * | Merge pull request #20077 from dundargoc/refactor/char_u/11bfredl2022-09-12
| |\ \ | | | | | | | | refactor: replace char_u with char 11: remove `STRLEN` part 1
| | * | refactor: replace char_u with charDundar Göc2022-09-11
| | | | | | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | | vim-patch:9.0.0299: error messages for setcmdline() could be better (#20169)zeertzjq2022-09-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Error messages for setcmdline() could be better. Solution: Use more specific error messages. (Yegappan Lakshmanan, closes vim/vim#10995) https://github.com/vim/vim/commit/25f1e5556259d536c8608185145b0769262873ff Cherry-pick tv_check_for_opt_number_arg() from Vim.
| * | | vim-patch:8.2.5034: there is no way to get the byte index from a virtual columnzeertzjq2022-09-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: There is no way to get the byte index from a virtual column. Solution: Add virtcol2col(). (Yegappan Lakshmanan, closes vim/vim#10477, closes vim/vim#10098) https://github.com/vim/vim/commit/5a6ec10cc80ab02eeff644ab19b82312630ea855 Cherry-pick tv_check_for_number_arg() from Vim. Cherry-pick pathshorten() doc change.
| * | | refactor: move f_screenpos() to move.czeertzjq2022-09-12
| | | |
| * | | vim-patch:8.2.2664: Vim9: not enough function arguments checked for stringzeertzjq2022-09-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Vim9: not enough function arguments checked for string. Solution: Check in balloon functions. Refactor function arguments. https://github.com/vim/vim/commit/32105ae88f3aa6a6af30336f0bc9f8eb81292cd7 Cherry-pick removal of useless check from patch 8.2.3840. vim-patch:8.2.3083: crash when passing null string to charclass() Problem: Crash when passing null string to charclass(). Solution: Bail out when string pointer is NULL. (Christian Brabandt, closes vim/vim#8498, closes vim/vim#8260) https://github.com/vim/vim/commit/72463f883cdfd08e29ab0018ef3889284848d5f1
| * | | vim-patch:8.2.2646: Vim9: error for not using string doesn't mention argumentzeertzjq2022-09-12
| |/ / | | | | | | | | | | | | | | | Problem: Vim9: error for not using string doesn't mention argument. Solution: Add argument number. https://github.com/vim/vim/commit/f28f2ac425600b88da0bdcc12a82cd620f575681
| * | refactor: replace char_u with charDundar Göc2022-09-10
| | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | refactor: replace char_u with charDundar Göc2022-09-09
| | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | refactor(typval): change FC_CFUNC abstraction into FC_LUAREFbfredl2022-09-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "cfuncs" was only ever used to wrap luarefs. As vim8script is finished and will not be developed further, support for "cfuncs" for other usecases are not planned. This abstraction was immediately broken anyway in order to get luarefs out of userfuncs again. Even if a new kind of userfunc needs to be invented in the future, likely just extending the FC_... flag union directy, instead of invoking unnecessary heap object and c function pointer indirection, will be a more straightforward design pattern.
| * | refactor: replace char_u with charDundar Göc2022-09-06
| | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | refactor: migrate comment style (#20012)Lewis Russell2022-09-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | Done automatically using the following perl command: perl -pi -0777pe 's#\n\K */\*\n(.+?)\s*\*/\n#join("\n", map { $_ =~ s:^\s*\K \*://:; $_ } split("\n", $1)) . "\n"#sge' src/nvim/**/*.c Co-authored-by: zeertzjq <zeertzjq@outlook.com> Co-authored-by: zeertzjq <zeertzjq@outlook.com>
| * | refactor: replace char_u with charDundar Göc2022-09-01
| | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | refactor: replace char_u with charDundar Göc2022-08-31
| | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | refactor: replace char_u with charDundar Göc2022-08-31
| | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | vim-patch:8.2.0301: insufficient testing for exception handling (#20016)zeertzjq2022-08-31
| | | | | | | | | | | | | | | | | | | | | | | | Problem: Insufficient testing for exception handling and the "attention" prompt. Solution: Add test cases. (Yegappan Lakshmanan, closes vim/vim#5681) https://github.com/vim/vim/commit/b654103ad1e379348616f354272db86804ab4bdb Fix memory leak from last char_u refactor.
| * | vim-patch:8.1.2037: can call win_gotoid() in cmdline window (#20015)zeertzjq2022-08-31
| | | | | | | | | | | | | | | Problem: Can call win_gotoid() in cmdline window. Solution: Disallow switching windows. (Yasuhiro Matsumoto, closes vim/vim#4940) https://github.com/vim/vim/commit/a046b37c22bcabdea5f0fd6d21ca4bd0aa4c768e
| * | fix(exceptions): restore `did_throw` (#20000)Sean Dewar2022-08-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `!did_throw` doesn't exactly imply `!current_exception`, as `did_throw = false` is sometimes used to defer exception handling for later (without forgetting the exception). E.g: uncaught exception handling in `do_cmdline()` may be deferred to a different call (e.g: when `try_level > 0`). In #7881, `current_exception = NULL` in `do_cmdline()` is used as an analogue of `did_throw = false`, but also causes the pending exception to be lost, which also leaks as `discard_exception()` wasn't used. It may be possible to fix this by saving/restoring `current_exception`, but handling all of `did_throw`'s edge cases seems messier. Maybe not worth diverging over. This fix also uncovers a `man_spec.lua` bug on Windows: exceptions are thrown due to Windows missing `man`, but they're lost; skip these tests if `man` isn't executable.
| * | refactor: replace char_u with char 4 (#19987)dundargoc2022-08-30
| | | | | | | | | | | | | | | | | | | | | * refactor: replace char_u with char Work on https://github.com/neovim/neovim/issues/459
| * | refactor: move cmdline functions to ex_getln.czeertzjq2022-08-30
| | |
| * | refactor: replace char_u with charDundar Göc2022-08-29
| | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | Merge pull request #19961 from dundargoc/refactor/char_u/2bfredl2022-08-29
| |\ \ | | | | | | | | refactor: replace char_u with char 2: electric chaaralo
| | * | refactor: replace char_u with charDundar Göc2022-08-27
| | | | | | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | | Merge pull request #19975 from bfredl/chartabsizebfredl2022-08-29
| |\ \ \ | | | | | | | | | | refactor(plines): use a struct for chartabsize state
| | * | | refactor(plines): use a struct for chartabsize statebfredl2022-08-29
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a refactor extracted from vim-patch 9.0.0067: cannot show virtual text The logic for inline virtual text is going to be different in nvim than text property based text in vim, but this refactor is still useful, as calculation of displayed linesize is going to be stateful in a similar way.
| * / / vim-patch:9.0.0285: it is not easy to change the command line from a plugin ↵Shougo2022-08-29
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | (#19979) vim-patch:9.0.0285: it is not easy to change the command line from a plugin Problem: It is not easy to change the command line from a plugin. Solution: Add setcmdline(). (Shougo Matsushita, closes vim/vim#10869) https://github.com/vim/vim/commit/07ea5f1509fe8dafe3262ed2702b4d0fc99e288b
| * | refactor: replace char_u with charDundar Göc2022-08-26
| | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | refactor: change FALSE/TRUE to false/trueLewis Russell2022-08-26
| | | | | | | | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com>
| * | refactor: replace char_u with charDundar Goc2022-08-25
| | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | refactor: pre-incr to post-incrLewis Russell2022-08-25
| | |
| * | refactor: suppress clang and PVS warnings (#19940)zeertzjq2022-08-25
| | |
| * | vim-patch:8.2.1960: warning for uninitialized variablezeertzjq2022-08-25
| | | | | | | | | | | | | | | | | | Problem: Warning for uninitialized variable. Solution: Initialize the variable. https://github.com/vim/vim/commit/0fd797eacd569a0680a86452c18713eacf6608fe
| * | Merge pull request #19906 from bfredl/bigstagebfredl2022-08-24
| |\ \ | | | | | | | | perf(api): allow to use an arena for return values
| | * | refactor(api): provide a temporary copy solution for nvim_call_atomicbfredl2022-08-24
| | | | | | | | | | | | | | | | | | | | | | | | Make the copy_object() family accept an optional arena. More than half of the callsites should be refactored to use an arena later anyway.
| | * | refactor(arena): use a shared block freelistbfredl2022-08-24
| | | | | | | | | | | | | | | | | | | | This is both simpler in client code and more effective (always reuse block hottest in cache)