aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
Commit message (Collapse)AuthorAge
...
| * | eval: Split and move dict_add_nr_str to typval.cZyX2017-03-29
| | | | | | | | | | | | Function was split into tv_dict_add_nr() and tv_dict_add_str().
| * | eval: Move dict_add_list and dict_add_dict to typval.cZyX2017-03-29
| | |
| * | eval: Move dict_set_keys_readonly to typval.cZyX2017-03-29
| | |
| * | eval: Move get_dict_callback to typval.cZyX2017-03-29
| | |
| * | eval: Make setmatches() return -1 in case of some failuresZyX2017-03-29
| | |
| * | *: Move some dictionary functions to typval.h and use char*ZyX2017-03-29
| | | | | | | | | | | | Also fixes buffer reusage in setmatches() and complete().
| * | eval: Split eval.c into smaller filesZyX2017-03-29
| | |
| * | getcompletion("cmdline") (#6376)Justin M. Keyes2017-03-27
| | | | | | | | | Closes #5823
* | | eval,functests: Fix linter errorsZyX2017-03-27
| | |
* | | executor: Add :lua debug.debug mockZyX2017-03-27
| | |
* | | api: Reserve more numbers for internal callsZyX2017-03-27
| | | | | | | | | | | | | | | | | | Reasoning; currently INTERNAL_CALL is mostly used to determine whether it is needed to deal with NL-used-as-NUL problem. This code is useful for nvim_… API calls done from VimL, but not for API calls done from lua, yet lua needs to supply something as channel_id.
* | | executor: Make sure it works with API valuesZyX2017-03-27
| | |
* | | *: Silence linterZyX2017-03-27
| | |
* | | viml/executor: Directly generate typval_T valuesZyX2017-03-27
| | | | | | | | | | | | | | | Note: this will *still* crash when using API in cases similar to the one described in first commit. Just it needs different code to reproduce.
* | | eval: Add luaeval functionZyX2017-03-27
|/ / | | | | | | | | | | | | | | | | | | | | | | No tests yet, no documentation update, no :lua* stuff, no vim module. converter.c should also work with typval_T, not Object. Known problem: luaeval("1", {}) results in PANIC: unprotected error in call to Lua API (attempt to index a nil value) Ref #3823
* | refactor: Remove allow_keys global (#6346)Matthew Malcomson2017-03-25
| | | | | | | | | | | | * The allow_keys global is unused in nvim, remove it * clint
* | vim-patch:7.4.2329 (#6341)Jurica Bradarić2017-03-23
| | | | | | | | | | | | Problem: Error for min() and max() contains %s. (Nikolay Pavlov) Solution: Pass the function name. (closes vim/vim#1040) https://github.com/vim/vim/commit/26b84339fd8766898bcf6a259cbc2e0c38689726
* | Merge #6312 from lonerover/vim-7.4.2255Justin M. Keyes2017-03-22
|\ \ | | | | | | vim-patch: 7.4.2255,7.42256
| * | vim-patch:7.4.2256lonerover2017-03-21
| |/ | | | | | | | | | | | | Problem: Coverity complains about null pointer check. Solution: Remove wrong and superfluous error check. https://github.com/vim/vim/commit/db249f26edf7a5f88d1f4468d08ec5b84f5ab7ad
* | vim-patch:7.4.2283lonerover2017-03-22
| | | | | | | | | | | | | | Problem: Part of ":oldfiles" command isn't cleared. (Lifepillar) Solution: Clear the rest of the line. (closes 1018) https://github.com/vim/vim/commit/885c00eabe6d1fd757d4f0eb531ad3a15a35ec04
* | vim-patch:7.4.2293 (#6307)Jack Bracewell2017-03-21
|/ | | | | | | The original patch makes all the modeline comments consistent, but these have been removed in the neovim source. However there as a correction of a comment included in the patch that we can use. https://github.com/vim/vim/commit/edf3f97ae2af024708ebb4ac614227327033ca47
* vim-patch:7.4.2249 (#6303)Jack Bracewell2017-03-17
| | | | | | Problem: Missing colon in error message. Solution: Add the colon. (Dominique Pelle) https://github.com/vim/vim/commit/ba2099034f92a2814494f37bddb0c57d034401b4
* Merge #6252 from jamessan/vim-7.4.2069Justin M. Keyes2017-03-15
|\ | | | | vim-patch:7.4.2069,7.4.2101,7.4.2222,7.4.2223
| * vim-patch:7.4.2223James McCoy2017-03-11
| | | | | | | | | | | | | | Problem: Buffer overflow when using latin1 character with feedkeys(). Solution: Check for an illegal character. Add a test. https://github.com/vim/vim/commit/d3c907b5d2b352482b580a0cf687cbbea4c19ea1
* | tabpage_S: Name tp_localdir per convention.Justin M. Keyes2017-03-12
|/
* vim-patch:7.4.2095James McCoy2017-02-27
| | | | | | | | | | Problem: Man test fails when run with the GUI. Solution: Adjust for different behavior of GUI. Add assert_inrange(). https://github.com/vim/vim/commit/61c04493b00f85d0b97436260a9ef9ab82143b78 Only changes related to assert_inrange() were included, since we have a distinct man plugin.
* Merge pull request #6190 from jamessan/vim-7.4.1991James McCoy2017-02-27
|\ | | | | vim-patch:7.4.1991,7.4.1992,7.4.1993,7.4.1994
| * vim-patch:7.4.1992James McCoy2017-02-27
| | | | | | | | | | | | | | | | Problem: Values for true and false can be confusing. Solution: Update the documentation. Add a test. Make v:true evaluate to TRUE for a non-zero-arg. https://github.com/vim/vim/commit/e381d3d5e098546854b008e01ca1d28ba1a4a057
* | vim-patch:7.4.2200James McCoy2017-02-27
|/ | | | | | | | Problem: Cannot get all information about a quickfix list. Solution: Add an optional argument to get/set loc/qf list(). (Yegappan Lakshmanan) https://github.com/vim/vim/commit/d823fa910cca43fec3c31c030ee908a14c272640
* Merge #6112 from ZyX-I/split-eval'/buf_get_changedtickJustin M. Keyes2017-02-27
|\ | | | | Better b:changedtick support
| * *: Fix linter errorsZyX2017-02-25
| |
| * eval: Do not allocate b:changedtick dictionary itemZyX2017-02-24
| |
| * *: Fix linter errorsZyX2017-02-23
| |
| * api: Rename dict_set_value to dict_set_varZyX2017-02-23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reasonings: 1. It is not used for anything, but scope dictionaries currenly. So there is no need to generalize and split it into dict_set_var (which will contain some scope-dictionary-specific checks) and dict_set_value (which will work for any dictionary). 2. Check for key size is no longer valid for non-scope dictionaries: you *can* use empty keys there. In scope dictionaries also, but you actually are not supposed to store there anything, but variables. Note that actually one may still do let b:[''] = 1 and “bypass” check for variable name. It won’t change what `echo b:` will show, but it may affect code which iterates over scope dictionary keys and sets them to something (if there is such code).
| * eval: Remove incorrect workaroundZyX2017-02-23
| | | | | | Was replaced by the previous patch. Also fixes legacy test 055.
| * eval: Forbid (un)locking b:changedtickZyX2017-02-23
| | | | | | Port of vim-patch:8.0.0343
| * eval: Make sure `islocked('b:.changedtick')` does not error outZyX2017-02-23
| | | | | | Port of vim-patch:8.0.0345
| * eval: Specify more precise len for var_check_ro in get_lvalZyX2017-02-23
| |
| * eval: Refactor var_check_ro, tv_check_lock and var_check_fixedZyX2017-02-23
| | | | | | | | | | - They are no longer responble for using gettext. - They now receive string length and use %.* format specifier in messages. - And one less global: one of the error messages is never repeated.
| * eval: Fix memory leakZyX2017-02-23
| | | | | | Ref vim/vim#1497
| * eval: Refactor item_lockZyX2017-02-23
| | | | | | If I am not mistaking, this commit should not change any functionality.
| * eval: Make sure that b:changedtick may not be unlocked via :unlo b:varZyX2017-02-23
| | | | | | It still may be unlocked by `:unlock b:.var`.
| * buffer: Bind b:changedtick to b:['changedtick'], remove special casesZyX2017-02-23
| |
* | Merge #6111 from ZyX-I/split-eval'/os-fileioJustin M. Keyes2017-02-27
|\ \ | | | | | | Refactor writefile() and create more tests for it
| * | eval: Flush buffer in write_listZyX2017-02-23
| | | | | | | | | This way success/failure return from this function is more precise.
| * | eval: Fix linter errorZyX2017-02-15
| | |
| * | eval: Fix error messages from writefileZyX2017-02-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. When calling writefile(list, fname, []) do not show error message twice. 2. Do not allow file name to be overwritten for writefile([1], 2). 3. Do not show “Can’t open file with an empty name” error after error like “using Float as a String” when type of the second argument is not correct. 4. Do not give multiple error messages and still continue for code like `writefile(["test", [], [], [], "tset"])`. Note that to fix 4. ideally I need tv_check_str_or_nr which is currently present in two PRs: #6114 and #5119. I would want to avoid copying this function into a yet another PR. Ref vim/vim#1476.
| * | eval: Return immediately after an error in write_list()ZyX2017-02-14
| | | | | | | | | Previously it could attempt to write trailing newline before returning.
| * | eval: Remove outdated commentZyX2017-02-14
| | |
| * | eval: writefile: Give more adequate IO errors and do not call putc()ZyX2017-02-14
| | |