aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval
Commit message (Collapse)AuthorAge
* Merge branch 'master' of https://github.com/neovim/neovim into rahmtmpJosh Rahm2022-08-19
|\
| * vim-patch:8.1.1966: some code in options.c fits better elsewhere (#19840)zeertzjq2022-08-19
| | | | | | | | | | | | Problem: Some code in options.c fits better elsewhere. Solution: Move functions from options.c to other files. (Yegappan Lakshmanan, closes vim/vim#4889) https://github.com/vim/vim/commit/e677df8d93772a705f40a94f3c871aee78fe4d99
| * vim-patch:8.1.2057: the screen.c file is much too bigLewis Russell2022-08-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The screen.c file is much too big. Solution: Split it in three parts. (Yegappan Lakshmanan, closes vim/vim#4943) https://github.com/vim/vim/commit/7528d1f6b5422750eb778dfb550cfd0b0e540964 This is an approximation vim-patch 8.1.2057. Applying the patch directly isn't feasible since our version of screen.c has diverged too much, however we still introduce drawscreen.c and drawline.c: - screen.c is now a much smaller file used for low level screen functions - drawline.c contains everything needed for win_line() - drawscreen.c contains everything needed for update_screen() Co-authored-by: zeertzjq <zeertzjq@outlook.com>
| * revert: "jobstart(): Fix hang on non-executable cwd #9204" (#19826)zeertzjq2022-08-18
| | | | | | | | | | This reverts commit c4c74c3883aa3122c0c877ca8dd7b26beb5cc4aa. LibUV already gives an error for this, so this isn't needed.
| * vim-patch:8.1.2082: rename popupmnu.* to popupmenu.* (#19829)zeertzjq2022-08-18
| | | | | | | | | | | | | | vim-patch:8.1.2082: some files have a weird name to fit in 8.3 characters Problem: Some files have a weird name to fit in 8.3 characters. Solution: Use a nicer names. https://github.com/vim/vim/commit/30e8e73506e4522ef4aebf7d525c0e6ffe8805fd
| * refactor: remove some unused includes (#19820)zeertzjq2022-08-17
| | | | | | Replace grid.h in screen.h and screen.h in buffer.h with grid_defs.h
| * refactor: change pre-decrement/increment to post (#19799)Lewis Russell2022-08-16
| | | | | | Co-authored-by: zeertzjq <zeertzjq@outlook.com>
| * vim-patch:8.1.2042: the evalfunc.c file is too big (#19792)zeertzjq2022-08-16
| | | | | | | | | | | | | | Problem: The evalfunc.c file is too big. Solution: Move getchar() and parse_queued_messages() to getchar.c. https://github.com/vim/vim/commit/9c658c9eacbd97e2c071f652a0155f71db94c0f3 Omit parse_queued_messages(): Nvim does not have MESSAGE_QUEUE.
| * vim-patch:8.1.1869: code for the argument list is spread out (#19791)zeertzjq2022-08-16
| | | | | | | | | | | | Problem: Code for the argument list is spread out. Solution: Put argument list code in arglist.c. (Yegappan Lakshmanan, closes vim/vim#4819) https://github.com/vim/vim/commit/4ad62155a1015751a6645aaecd94b02c94c8934b
| * fix(getchar): flush screen before doing a blocking waitzeertzjq2022-08-15
| |
| * refactor: move menu non-symbols to menu_defs.h (#19778)zeertzjq2022-08-15
| |
| * vim-patch:8.1.1960: fold code is spread out (#19777)zeertzjq2022-08-15
| | | | | | | | | | Problem: Fold code is spread out. Solution: Move fold functions to fold.c. https://github.com/vim/vim/commit/db022f3ffb57c5ff4b97b4e93a994d11e4c10466
| * refactor(eval/funcs.c): resolve all clint errorsLewis Russell2022-08-14
| | | | | | | | | | | | ... and tidy up local variable declarations Co-authored-by: zeertzjq <zeertzjq@outlook.com>
| * vim-patch:8.1.2081: the spell.c file is too big (#19767)zeertzjq2022-08-14
| | | | | | | | | | | | Problem: The spell.c file is too big. Solution: Move the code for spell suggestions to a separate file. (Yegappan Lakshmanan, closes vim/vim#4988) https://github.com/vim/vim/commit/46a426c9acfdd3d6c0fa134a17681634b9325bee
| * vim-patch:8.2.0823: Vim9: script reload test is disabledzeertzjq2022-08-14
| | | | | | | | | | | | | | | | | | | | Problem: Vim9: script reload test is disabled. Solution: Compile a function in the context of the script where it was defined. Set execution stack for compiled function. Add a test that an error is reported for the right file/function. https://github.com/vim/vim/commit/25e0f5863e9010a75a1ff0d04e8f886403968755 Omit stack_top_is_ufunc(): only used by Vim9 script.
| * vim-patch:8.2.0078: expanding <sfile> works differently the second timezeertzjq2022-08-14
| | | | | | | | | | | | Problem: Expanding <sfile> works differently the second time. Solution: Keep the expanded name when redefining a function. (closes vim/vim#5425) https://github.com/vim/vim/commit/b9adef79eca6f95bc7376ff3a6a383e436c5d6ea
| * refactor: change remaining sourcing_name/sourcing_lnum to exestackzeertzjq2022-08-14
| | | | | | | | Co-Authored-By: VVKot <volodymyr.kot.ua@gmail.com>
| * vim-patch:8.2.0056: execution stack is incomplete and inefficientzeertzjq2022-08-14
| | | | | | | | | | | | | | | | | | | | | | Problem: Execution stack is incomplete and inefficient. Solution: Introduce a proper execution stack and use it instead of sourcing_name/sourcing_lnum. Create a string only when used. https://github.com/vim/vim/commit/1a47ae32cdc19b0fd5a82e19fe5fddf45db1a506 Omit test_debugger.vim: superseded by later patches. Omit check_map_keycodes(): N/A. Omit kword_test.c: N/A (converted to a unit test).
| * vim-patch:7.4.1168 (#19645)zeertzjq2022-08-13
| | | | | | | | | | | | Problem: This doesn't give the right result: eval(string(v:true)). (Nikolay Pavlov) Solution: Make the string "v:true" instead of "true". https://github.com/vim/vim/commit/f48aa160fdd7b8caa7678e1a2139244dd2bdc547
| * refactor: remove some unused includes (#19740)zeertzjq2022-08-12
| | | | | | | | Mostly avoids including eval.h, ex_cmds2.h and ex_docmd.h in other headers.
| * refactor: replace char_u with charDundar Goc2022-08-12
| | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * refactor: move non-symbols in ex_eval.h to ex_eval_defs.h (#19739)zeertzjq2022-08-12
| | | | | | | | This avoids including ex_eval.h in any other header, thus preventing future circular includes.
| * vim-patch:8.1.1689: profiling code is spread outzeertzjq2022-08-12
| | | | | | | | | | | | | | Problem: Profiling code is spread out. Solution: Move more profiling code to profiler.c. (Yegappan Lakshmanan, closes vim/vim#4668) https://github.com/vim/vim/commit/660a10ad41c14363326f83451c3c425201923119
| * vim-patch:8.1.1684: profiling functionality is spread outzeertzjq2022-08-12
| | | | | | | | | | | | | | | | | | Problem: Profiling functionality is spread out. Solution: Put profiling functionality in profiling.c. (Yegappan Lakshmanan, closes vim/vim#4666) https://github.com/vim/vim/commit/fa55cfc69d2b14761e2a8bd85bc1e0d82df770aa Move proftime_T to types.h for now to avoid recursive #include.
| * refactor: use CLEAR_FIELD and CLEAR_POINTER macros (#19709)zeertzjq2022-08-11
| | | | | | | | | | | | | | vim-patch:8.2.0559: clearing a struct is verbose Problem: Clearing a struct is verbose. Solution: Define and use CLEAR_FIELD() and CLEAR_POINTER(). https://github.com/vim/vim/commit/a80faa8930ed5a554beeb2727762538873135e83
| * vim-patch:8.1.1823: command line history code is spread out (#19688)zeertzjq2022-08-09
| | | | | | | | | | | | Problem: Command line history code is spread out. Solution: Put the code in a new file. (Yegappan Lakshmanan, closes vim/vim#4779) Also graduate the +cmdline_hist feature. https://github.com/vim/vim/commit/d7663c22c6c1ff0f86b81371586fbc851d3a3e9e
| * refactor: move non-symbols in mbyte.h to mbyte_defs.hzeertzjq2022-08-08
| | | | | | | | | | This just avoids including mbyte.h in eval/typval.h, so that mbyte.h can include eval/typval.h in Vim patch 8.2.1535.
* | Merge branch 'master' of https://github.com/neovim/neovim into rahmJosh Rahm2022-08-07
|\|
| * vim-patch:8.2.4492: no error if an option is given a value with ":let &opt = ↵zeertzjq2022-08-07
| | | | | | | | | | | | | | | | val" (#19670) Problem: No error if an option is given an invalid value with ":let &opt = val". Solution: Give the error. (closes vim/vim#9864) https://github.com/vim/vim/commit/8ccbbeb620dcc73154de29c51100fe815cefe109
| * vim-patch:8.2.1281: the "trailing characters" error can be hard to understandzeertzjq2022-08-07
| | | | | | | | | | | | Problem: The "trailing characters" error can be hard to understand. Solution: Add the trailing characters to the message. https://github.com/vim/vim/commit/2d06bfde29bd3a62fc85823d2aa719ef943bd319
| * vim-patch:8.2.0413: buffer menu does not handle special buffers properlyzeertzjq2022-08-05
| | | | | | | | | | | | | | | | | | Problem: Buffer menu does not handle special buffers properly. Solution: Keep a dictionary with buffer names to reliably keep track of entries. Also trigger BufFilePre and BufFilePost for command-line and terminal buffers when the name changes. https://github.com/vim/vim/commit/5e94a29ebbde10dd973d58f1adba9a2fc83877d1
| * feat(lua): print source locations of lua callbacks (#19597)ii142022-08-03
| | | | | | Co-authored-by: ii14 <ii14@users.noreply.github.com>
* | Merge remote-tracking branch 'upstream/master' into rahmJosh Rahm2022-08-03
|\|
| * Merge pull request #19437 from dundargoc/refactor/char_u-to-charbfredl2022-07-31
| |\ | | | | | | refactor: replace char_u with char
| | * refactor: replace char_u with charDundar Goc2022-07-31
| | | | | | | | | | | | Work on https://github.com/neovim/neovim/issues/459
| * | cmdheight=0: fix bugs part2 (#19185)Shougo2022-07-31
| | |
| * | vim-patch:9.0.0111: "nocombine" is missing from synIDattr()Christian Clason2022-07-31
| |/ | | | | | | | | | | Problem: "nocombine" is missing from synIDattr(). Solution: Add "nocombine". (Munif Tanjim, closes vim/vim#10816) https://github.com/vim/vim/commit/de78632c41d870d5254e9ccd285f53674b955f4e
| * refactor: fix clang and PVS warnings (#19569)zeertzjq2022-07-29
| | | | | | | | The last commit didn't actually disable V1028 because of a typo. Fix the typo so it is actually disabled.
| * refactor: enable -Wconversion warning for eval/funcs.c (#19541)dundargoc2022-07-27
| | | | | | Work on https://github.com/neovim/neovim/issues/567
| * refactor: fix clang and PVS warnings (#19532)zeertzjq2022-07-28
| |
| * vim-patch:9.0.0090: no error when assigning bool to a string option (#19539)zeertzjq2022-07-27
| | | | | | | | | | Problem: No error when assigning bool to a string option with setwinvar(). Solution: Give an error (closes vim/vim#10766) https://github.com/vim/vim/commit/28f84e17b068daca2635692d279930dcb7a150d0
| * vim-patch:9.0.0083: ModeChanged event not triggered when leaving cmdline windowzeertzjq2022-07-27
| | | | | | | | | | | | | | | | Problem: ModeChanged event not triggered when leaving the cmdline window. Solution: Call may_trigger_modechanged(). (closes vim/vim#10791) https://github.com/vim/vim/commit/c9e8fd6fc7d2027d0645b376d95a6ed51098036c Code is already present in Nvim. Add some other related missing changes.
| * vim-patch:9.0.0066: switching window uneccarily when getting buffer optionszeertzjq2022-07-25
| | | | | | | | | | | | Problem: Switching window uneccarily when getting buffer options. Solution: Do not switch window when getting buffer options. (closes vim/vim#10767) https://github.com/vim/vim/commit/cd6ad6439da2ee2d1a8a6934c9d69e9c2664ba55
| * vim-patch:8.2.4866: duplicate code in "get" functionszeertzjq2022-07-25
| | | | | | | | | | | | | | | | | | Problem: Duplicate code in "get" functions. Solution: Use get_var_from() for getwinvar(), gettabvar(), gettabwinvar() and getbufvar(). (closes vim/vim#10335) https://github.com/vim/vim/commit/47d4e317f85e4aeb3799d962f173bd0f1e7bc71c f_setbufvar() can use tv_get_buf_from_arg() as it sets emsg_off.
| * vim-patch:8.2.2969: subtracting from number option fails when result is zerozeertzjq2022-07-25
| | | | | | | | | | | | | | | | | | | | Problem: Subtracting from number option fails when result is zero. (Ingo Karkat) Solution: Reset the string value when using the numeric value. (closes vim/vim#8351) https://github.com/vim/vim/commit/a42e6e0082a6d564dbfa55317d4a698ac12ae898 Cherry-pick Test_compound_assignment_operators() changes from patch 8.2.1593
| * vim-patch:8.2.2285: Vim9: cannot set an option to a falsezeertzjq2022-07-25
| | | | | | | | | | | | Problem: Vim9: cannot set an option to a false. Solution: For VAR_BOOL use string "0". (closes vim/vim#7603) https://github.com/vim/vim/commit/b0d8182fa39f2c9403f5f9a0663589fcab43a6c8
| * vim-patch:8.2.2284: Vim9: cannot set an option to a boolean valuezeertzjq2022-07-25
| | | | | | | | | | | | Problem: Vim9: cannot set an option to a boolean value. Solution: Check for VAR_BOOL. (closes vim/vim#7603) https://github.com/vim/vim/commit/31a201a04aa95708af5d62070d2d397a201cc1a5
| * vim-patch:8.2.2254: Vim9: bool option type is numberzeertzjq2022-07-25
| | | | | | | | | | | | | | Problem: Vim9: bool option type is number. Solution: Have get_option_value() return a different value for bool and number options. (closes vim/vim#7583) https://github.com/vim/vim/commit/dd1f426bd617ac6a775f2e7795ff0b159e3fa315
| * vim-patch:8.2.1469: Vim9: cannot assign string to string optionzeertzjq2022-07-25
| | | | | | | | | | | | Problem: Vim9: cannot assign string to string option. Solution: Change checks for option value. (closes vim/vim#6720) https://github.com/vim/vim/commit/0aae4809fd52b445531766411a9c963dc6274a04
| * vim-patch:8.1.1763: evalfunc.c is still too big (#17952)Lewis Russell2022-07-24
| |