aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
Commit message (Collapse)AuthorAge
...
* | vim-patch:8.0.1115: crash when using foldtextresult() recursively (#8972)Jan Edmund Lazo2018-09-09
| | | | | | | | | | Problem: Crash when using foldtextresult() recursively. Solution: Avoid recursive calls. (Yasuhiro Matsumoto, closes vim/vim#2098) https://github.com/vim/vim/commit/495b7dd213e096361e6f15e7aed313c1d63d9d3e
* | vim-patch:8.0.1006: quickfix list changes when parsing text with 'erroformat'Jan Edmund Lazo2018-09-07
|/ | | | | | | Problem: Cannot parse text with 'erroformat' without changing a quickfix list. Solution: Add the "text" argument to getqflist(). (Yegappan Lakshmanan) https://github.com/vim/vim/commit/7adf06f4e25c795ba32ff0b2e8591330f6a41afb
* globals: cmd_silent is boolJan Edmund Lazo2018-08-29
|
* vim-patch:8.1.0214 fixup: remove feature-guardJustin M. Keyes2018-08-28
| | | | | | FEAT_AUTOCHDIR is not defined for Nvim. ref #8927
* vim-patch:8.1.0214 (#8927)Vivek R2018-08-28
| | | | | | | Problem: +autochdir feature not reported by has() or :version. Solution: Add the feature in the list. Author: Bram Moolenaar <Bram@vim.org> https://github.com/vim/vim/commit/83ec2a7f5fb481b30a5d556b6aad49a62585bccd
* vim-patch:8.0.1242: function argument with only dash is seen as number zeroJan Edmund Lazo2018-08-22
| | | | | | | Problem: Function argument with only dash is seen as number zero. (Wang Shidong) Solution: See a dash as a string. (Christian Brabandt) https://github.com/vim/vim/commit/ffd99f729bd806e09d9355ede9c17780b61057bf
* vim-patch:8.1.0184: not easy to figure out the window layoutJan Edmund Lazo2018-08-15
| | | | | | Problem: Not easy to figure out the window layout. Solution: Add "wincol" and "winrow" to what getwininfo() returns. https://github.com/vim/vim/commit/b6959a8e06cef6d2126b030b2f8acd49457a3582
* vim-patch:8.0.1364: there is no easy way to get the window positionJan Edmund Lazo2018-08-15
| | | | | | Problem: There is no easy way to get the window position. Solution: Add win_screenpos(). https://github.com/vim/vim/commit/22044dc31788d9f1c2da7725269884d9923b4795
* vim-patch:8.1.0262: not enough testing for getftype()Jan Edmund Lazo2018-08-13
| | | | | | Problem: Not enough testing for getftype(). Solution: Add a test. (Dominique Pelle, closes vim/vim#3300) https://github.com/vim/vim/commit/1598f9937a18c056d7b713dc254325c8f8456c8f
* vim-patch:8.0.1630: trimming white space is not that easyJan Edmund Lazo2018-08-13
| | | | | | Problem: Trimming white space is not that easy. Solution: Add the trim() function. (Bukn, closes vim/vim#1280) https://github.com/vim/vim/commit/295ac5ab5e840af6051bed5ec9d9acc3c73445de
* eval: match in find_some_match() is boolJan Edmund Lazo2018-08-11
|
* vim-patch:8.0.1410: hang when using count() with an empty stringJan Edmund Lazo2018-08-09
| | | | | | Problem: Hang when using count() with an empty string. Solution: Return zero for an empty string. (Dominique Pelle, closes vim/vim#2465) https://github.com/vim/vim/commit/338e47fdfdf0d918dae50a5cbf0cf4f7be45b4f0
* vim-patch:8.0.1004: matchstrpos() without a match returns too many itemsJan Edmund Lazo2018-08-08
| | | | | | | Problem: Matchstrpos() without a match returns too many items. Solution: Also remove the second item when the position is beyond the end of the string. (Hirohito Higashi) Use an enum for the type. https://github.com/vim/vim/commit/8d9f0ef5c6a6f6d19c3d02690e1ee347a70b8452
* Merge #8744 from janlazo/vim-8.0.0890Justin M. Keyes2018-08-08
|\
| * window: no_display in restore_win() is boolJan Edmund Lazo2018-08-07
| |
| * eval: add const to f_gettabvar() variablesJan Edmund Lazo2018-08-06
| |
| * vim-patch:8.0.1160: getting tab-local variable fails after closing windowJan Edmund Lazo2018-08-06
| | | | | | | | | | | | Problem: Getting tab-local variable fails after closing window. Solution: set tp_firstwin and tp_lastwin. (Jason Franklin, closes vim/vim#2170) https://github.com/vim/vim/commit/816968defc8ae79eb7e2319e991e74661be8d750
* | Remove all occurences of the mb_ptr2char macroZviRackover2018-08-06
|/ | | | | | | First step towards implemening issue #7401. The same can be done for all deprecated mb_ functions in follow-up patches.
* vim-patch:8.0.0948: crash if timer closes window while dragging status lineJan Edmund Lazo2018-08-05
| | | | | | | Problem: Crash if timer closes window while dragging status line. Solution: Check if the window still exists. (Yasuhiro Matsumoto, closes vim/vim#1979) https://github.com/vim/vim/commit/989a70c590c2bd109eb362d3a0e48cb1427ae13d
* eval, ex_getln: Fix incompatible pointer types (#8792)hyatskov2018-08-05
| | | | | | | | | | | Fixes #8786 gcc (GCC) 8.1.1 20180531 warning: [76/182] Building C object src/nvim/CMakeFiles/nvim.dir/ex_getln.c.o ../src/nvim/ex_getln.c: In function ‘ExpandUserDefined’: ../src/nvim/ex_getln.c:5071:34: warning: cast between incompatible function types from ‘char * (*)(const char * const, const int, const char_u * const* const, const _Bool)’ {aka ‘char * (*)(const char * const, const int, const unsigned char * const* const, const _Bool)’} to ‘void * (*)(char_u *, int, char_u **, int)’ {aka ‘void * (*)(unsigned char *, int, unsigned char **, int)’} [-Wcast-function-type] retstr = call_user_expand_func((user_expand_func_T)call_func_retstr, xp,
* system(): handle profiling and 'verbose' #8730Marcos Almeida2018-07-29
| | | | | | | | | | | | closes #8362 Vim's code calls `call_shell` directly from `get_system_output_as_rettv` whereas in Nvim this function has been rewritten to not call `call_shell` but to call `os_system` via `do_os_system`, losing the support for profiling and verbose. Changing the code to call `call_shell` from `get_system_output_as_rettv` seems to be too complicated to be worth it on the current version of the code. So this commit duplicates the relevant code.
* vim-patch:8.0.0794: checking translations fails with multiple NLJan Edmund Lazo2018-07-23
| | | | | | | Problem: The script to check translations fails if there is more than one NL in one line. Solution: Count the number of NL characters. Make count() accept a string. https://github.com/vim/vim/commit/9966b21a57277986217aa28237d6c247ebd060d7
* Make "v:errmsg", "v:shell_error" and "v:this_session" distinctShougo Matsushita2018-07-23
|
* vim-patch: finish port of 8.0.0{654,663,667}Jan Edmund Lazo2018-07-07
| | | | | Fix ex_function so that :endfunction passes the test. Remove variables, added in 60c025267265ba4bfc2abd34ea02b13bd5c0e63f.
* vim-patch:8.0.0593: DRY: setting list/dict return value (#8639)Jan Edmund Lazo2018-06-30
| | | | | Problem: Duplication of code for adding a list or dict return value. Solution: Add rettv_dict_set() and rettv_list_set(). (Yegappan Lakshmanan) https://github.com/vim/vim/commit/45cf6e910c6d162775ca9d470fac4b6db844001f
* vim-patch:8.0.0642: writefile() continues after detecting an errorJan Edmund Lazo2018-06-24
| | | | | | | Problem: writefile() continues after detecting an error. Solution: Bail out as soon as an error is detected. (suggestions by Nikolai Pavlov, closes vim/vim#1476) https://github.com/vim/vim/commit/8cf91286ca46a501d24e4b7d631b193256782c88
* vim-patch:8.0.0548: saving the redo buffer only works one time (#8629)KunMing Xie2018-06-24
| | | | | | | Problem: Saving the redo buffer only works one time, resulting in the "." command not working well for a function call inside another function call. (Ingo Karkat) Solution: Save the redo buffer at every user function call. (closes vim/vim#1619) https://github.com/vim/vim/commit/d4863aa99e0527e9505c79cbeafc68a6832200bf
* vim-patch:8.0.0535: leak when exiting user function (#8574)KunMing Xie2018-06-24
| | | | | | Problem: Memory leak when exiting from within a user function. Solution: Clear the function call stack on exit. https://github.com/vim/vim/commit/6914c64ee58ce68f31fb8a8793293a9b3f2f6240
* *: Replace b_changedtick with new always-inline functionsZyX2018-06-22
| | | Ref #8474
* vim-patch:8.0.0542: getpos() can return a negative line number (#8580)Jan Edmund Lazo2018-06-19
| | | | | Problem: getpos() can return a negative line number. (haya14busa) Solution: Handle a zero topline and botline. (closes vim/vim#1613) https://github.com/vim/vim/commit/a1d5fa65bc7e8a548858e9c295a192b63dcd011b
* vim-patch:8.0.0547: extra line break in verbosefileJan Edmund Lazo2018-06-18
| | | | | | | Problem: Extra line break in verbosefile when using ":echomsg". (Ingo Karkat) Solution: Don't call msg_start(). (closes vim/vim#1618) https://github.com/vim/vim/commit/52604f2454e5369f861d3ce34764f74a0999c773
* vim-patch:8.0.0467: using g< after :for does not show the right outputJan Edmund Lazo2018-06-18
| | | | | | | Problem: Using g< after :for does not show the right output. (Marcin Szamotulski) Solution: Call msg_sb_eol() in :echomsg. https://github.com/vim/vim/commit/57002ad70c4c32f3afefec24994a974cf3eef3ad
* vim-patch:8.0.0625: shellescape() always escapes a newline (#8573)Jan Edmund Lazo2018-06-17
| | | | | | | Problem: shellescape() always escapes a newline, which does not work with some shells. (Harm te Hennepe) Solution: Only escape a newline when the "special" argument is non-zero. (Christian Brabandt, closes vim/vim#1590) https://github.com/vim/vim/commit/206155280def51160a9d81d983aed639015ffb44
* Merge #8526 from janlazo/vim-8.0.0451Justin M. Keyes2018-06-16
|\
| * vim-patch:8.0.0451: some macros are in lower caseJan Edmund Lazo2018-06-12
| | | | | | | | | | | | | | Problem: Some macros are in lower case. Solution: Make a few more macros upper case. Avoid lower case macros use an argument twice. https://github.com/vim/vim/commit/91acfffc1e6c0d8c2abfb186a0e79a5bf19c3f3f
* | screen: use UTF-8 representationBjörn Linse2018-06-13
|/ | | | | | | | | | | | | | Store text in ScreenLines as UTF-8, so it can be sent as-is to the UI layer. `utfc_char2bytes(off,buf)` is removed, as `ScreenLines[off]` now already contains this representation. To recover the codepoints that the screen arrays previously contained, use utfc_ptr2char (or utf_ptr2char to ignore composing chars). NB: This commit does NOT change how screen.c processes incoming UTF-8 data from buffers, cmdline, messages etc. Any algorithm that operates on UCS-4 (like arabic shaping, treatment of non-printable chars) is left unchanged for now.
* vim-patch:8.0.0466: still macros that should be all-caps (#8510)Jan Edmund Lazo2018-06-10
| | | | | Problem: There are still a few macros that should be all-caps. Solution: Make a few more macros all-caps. https://github.com/vim/vim/commit/8820b48654b62472821d9b155fe03ab7ac13a05c
* vim-patch:8.0.0452: some macros are in lower case (#8505)Jan Edmund Lazo2018-06-08
| | | | | Problem: Some macros are in lower case. Solution: Make a few more macros upper case. https://github.com/vim/vim/commit/1c46544412382db8b3203d6c78e550df885540bd
* Merge #8491 from janlazo/vim-8.0.0255Justin M. Keyes2018-06-07
|\
| * vim-patch:8.0.0256: missing changes to one file breaks testJan Edmund Lazo2018-06-07
| | | | | | | | | | | | Problem: Tests fail because some changes were not included. Solution: Add changes to evalfunc.c https://github.com/vim/vim/commit/3a29abcb6154d9f55ca8abd6d97e5822b97ac4b3
* | vim-patch:8.0.0254: error message of assert functions (#8488)Jan Edmund Lazo2018-06-07
|/ | | | | | Problem: When using an assert function one can either specify a message or get a message about what failed, not both. Solution: Concatenate the error with the message. https://github.com/vim/vim/commit/c7b831ca154537505f5a22d01335a86b2e9cb023
* cleanupJustin M. Keyes2018-05-18
|
* do not pass NULL to os_getenvJustin M. Keyes2018-05-18
| | | | closes #8393
* timer: make sure to free callback after the last timer due callbackBjörn Linse2018-05-13
| | | | | | | | fixes #6974 Before this change, the partial could be freed before the last due callback got invoked, which caused a use-after-free when the due callback called the partial.
* Merge #8329 'API: Make nvim_set_option() update `:verbose set …`'Justin M. Keyes2018-05-11
|\
| * lintb-r-o-c-k2018-05-10
| |
| * api: Make nvim_set_option() update `:verbose set ...`b-r-o-c-k2018-05-03
| | | | | | | | | | | | Make `:verbose set ...` show when an option was last modified by an API client or Lua script/chunk. In the case of an API client, the channel ID is displayed.
* | API: better way to capture abort-causing non-exception errorsJustin M. Keyes2018-05-09
| | | | | | | | | | | | | | | | This condition is not perfectly reliable: (did_emsg && force_abort && !current_exception) The more proper way to check for abort-causing non-exception errors is to set up `msg_list` using the "pattern" given by do_cmdline().
* | API: return non-generic VimL errorsJustin M. Keyes2018-05-09
|/ | | | | | | | | | - Return VimL errors instead of generic errors for: - nvim_call_function - nvim_call_dict_function - Fix tests which were silently broken before this change. This violates #6150 where we agreed not to translate API errors. But that can be fixed later.
* Merge #8218 'Fix errors reported by PVS'Justin M. Keyes2018-04-27
|\ | | | | closes #4983