| Commit message (Collapse) | Author | Age |
... | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| |\ \
| | | |
| | | | |
refactor: replace unnecessary helper functions in optionstr.c
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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.
|
| | | |
| | | |
| | | |
| | | | |
Add -Wno-strict-prototypes flag to external dependencies to suppress
cjson warnings. These needs to be fixed upstream first.
|
| |/ /
| | |
| | |
| | |
| | | |
Co-authored-by: bfredl <bjorn.linse@gmail.com>
Co-authored-by: Christian Clason <c.clason@uni-graz.at>
|
| | |
| | |
| | |
| | | |
It's confusing to mix vendored dependencies with neovim source code. A
clean separation is simpler to keep track of and simpler to document.
|
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
(#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.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | | |
Taken from #20187.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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
|
| |\ \
| | | |
| | | | |
refactor: replace char_u with char 11: remove `STRLEN` part 1
|
| | | |
| | | |
| | | |
| | | | |
Work on https://github.com/neovim/neovim/issues/459
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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
|
| |/ /
| | |
| | |
| | |
| | |
| | | |
Problem: Vim9: error for not using string doesn't mention argument.
Solution: Add argument number.
https://github.com/vim/vim/commit/f28f2ac425600b88da0bdcc12a82cd620f575681
|
| | |
| | |
| | |
| | | |
Work on https://github.com/neovim/neovim/issues/459
|
| | |
| | |
| | |
| | | |
Work on https://github.com/neovim/neovim/issues/459
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
"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.
|
| | |
| | |
| | |
| | | |
Work on https://github.com/neovim/neovim/issues/459
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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>
|
| | |
| | |
| | |
| | | |
Work on https://github.com/neovim/neovim/issues/459
|
| | |
| | |
| | |
| | | |
Work on https://github.com/neovim/neovim/issues/459
|
| | |
| | |
| | |
| | | |
Work on https://github.com/neovim/neovim/issues/459
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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.
|
| | |
| | |
| | |
| | |
| | | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
`!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
Work on https://github.com/neovim/neovim/issues/459
|
| | | |
|
| | |
| | |
| | |
| | | |
Work on https://github.com/neovim/neovim/issues/459
|
| |\ \
| | | |
| | | | |
refactor: replace char_u with char 2: electric chaaralo
|
| | | |
| | | |
| | | |
| | | | |
Work on https://github.com/neovim/neovim/issues/459
|
| |\ \ \
| | | | |
| | | | | |
refactor(plines): use a struct for chartabsize state
|
| | |/ /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
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.
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
(#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
|
| | |
| | |
| | |
| | | |
Work on https://github.com/neovim/neovim/issues/459
|
| | |
| | |
| | |
| | | |
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
| | |
| | |
| | |
| | | |
Work on https://github.com/neovim/neovim/issues/459
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Problem: Warning for uninitialized variable.
Solution: Initialize the variable.
https://github.com/vim/vim/commit/0fd797eacd569a0680a86452c18713eacf6608fe
|
| |\ \
| | | |
| | | | |
perf(api): allow to use an arena for return values
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Make the copy_object() family accept an optional arena. More than
half of the callsites should be refactored to use an arena later
anyway.
|
| | | |
| | | |
| | | |
| | | |
| | | | |
This is both simpler in client code and more effective (always reuse
block hottest in cache)
|