aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
Commit message (Collapse)AuthorAge
* lintJames McCoy2016-12-27
|
* vim-patch:7.4.1768James McCoy2016-12-27
| | | | | | | | Problem: Arguments of setqflist() are not checked properly. Solution: Add better checks, add a test. (Nikolai Pavlov, Hirohito Higashi, closes vim/vim#661) https://github.com/vim/vim/commit/d106e5ba7f10f0d2a14eaefe5d78405044416cb9
* vim-patch:7.4.1816 (#5833)lonerover2016-12-26
| | | | | | Problem: Looping over a null list throws an error. Solution: Skip over the for loop. https://github.com/vim/vim/commit/d8585eded6359f1d7e1981e96ae775efd077c638
* eval.c: set_selfdict(): Fix invalid memory access.Justin M. Keyes2016-12-14
|
* Add some tests and cleanup.Michael Ennen2016-12-12
|
* Make partials work with jobs, timers, and dictwatchers.Björn Linse2016-12-12
|
* Fixes.Michael Ennen2016-12-12
|
* vim-patch:7.4.1875Michael Ennen2016-12-12
| | | | | | | | Problem: Comparing functions and partials doesn't work well. Solution: Add tests. (Nikolai Pavlov) Compare the dict and arguments in the partial. https://github.com/vim/vim/commit/8e759ba8651428995b338b66c615367259f79766
* vim-patch:7.4.1842Michael Ennen2016-12-12
| | | | | | | Problem: get() works for Partial but not for Funcref. Solution: Accept Funcref. Also return the function itself. (Nikolai Pavlov) https://github.com/vim/vim/commit/03e19a04ac2ca55643663b97b6ab94043233dcbd
* vim-patch:7.4.1839Michael Ennen2016-12-12
| | | | | | | Problem: Cannot get the items stored in a partial. Solution: Support using get() on a partial. https://github.com/vim/vim/commit/2bbf8eff6fab16d86e7bcfc0da1962d31bec7891
* vim-patch:7.4.1836Michael Ennen2016-12-12
| | | | | | | | | Problem: When using a partial on a dictionary it always gets bound to that dictionary. Solution: Make a difference between binding a function to a dictionary explicitly or automatically. https://github.com/vim/vim/commit/1d429610bf9e99a6252be8abbc910d6667e4d1da
* vim-patch:7.4.1719Michael Ennen2016-12-12
| | | | | | | | | | Problem: Leaking memory when there is a cycle involving a job and a partial. Solution: Add a copyID to job and channel. Set references in items referred by them. Go through all jobs and channels to find unreferenced items. Also, decrement reference counts when garbage collecting. https://github.com/vim/vim/commit/107e1eef1df3b786ad3ad49fbdb9e058649303b5
* vim-patch:7.4.1718Michael Ennen2016-12-12
| | | | | | | Problem: Coverity: not using return value of set_ref_in_item(). Solution: Use the return value. https://github.com/vim/vim/commit/d56374e25df0b317b01423a01f158157faa647fa
* vim-patch:7.4.1715Michael Ennen2016-12-12
| | | | | | | | Problem: Double free when a partial is in a cycle with a list or dict. (Nikolai Pavlov) Solution: Do not free a nested list or dict used by the partial. https://github.com/vim/vim/commit/ddecc25947dbdd689d5bcaed32f298a08abdd497
* vim-patch:7.4.1645Michael Ennen2016-12-12
| | | | | | | | Problem: When a dict contains a partial it can't be redefined as a function. (Nikolai Pavlov) Solution: Remove the partial when overwriting with a function. https://github.com/vim/vim/commit/c5fbe8af4cd80789f831b78aa44ff0b238138769
* vim-patch:7.4.1639Michael Ennen2016-12-12
| | | | | | | Problem: Invoking garbage collection may cause a double free. Solution: Don't free the dict in a partial when recursive is FALSE. https://github.com/vim/vim/commit/5f436fcf9960c95702820d5ac1b8b612995f6c04
* vim-patch:7.4.1638Michael Ennen2016-12-12
| | | | | | | | Problem: When binding a function to a dict the reference count is wrong. Solution: Decrement dict reference count, only reference the function when actually making a copy. (Ken Takata) https://github.com/vim/vim/commit/e4eb6ff089e79e659acf33c17dd0fda7177de526
* vim-patch:7.4.1607Michael Ennen2016-12-12
| | | | | | | | Problem: Comparing a function that exists on two dicts is not backwards compatible. (Thinca) Solution: Only compare the function, not what the partial adds. https://github.com/vim/vim/commit/f0e86a0dbddc18568910e9e4aaae0cd88ca8087a
* vim-patch:7.4.1606Michael Ennen2016-12-12
| | | | | | | | Problem: Having type() handle a Funcref that is or isn't a partial differently causes problems for existing scripts. Solution: Make type() return the same value. (Thinca) https://github.com/vim/vim/commit/953cc7fb139dc2ba8590f8b03a095b63f4e1208f
* vim-patch:7.4.1590Michael Ennen2016-12-12
| | | | | | | Problem: Warning for shadowed variable. (Christian Brabandt) Solution: Move the variable into a local block. https://github.com/vim/vim/commit/3f242a844e83a5a04943869f6e3bcbf8650dc465
* vim-patch:7.4.1589Michael Ennen2016-12-12
| | | | | | | Problem: Combining dict and args with partial doesn't always work. Solution: Use the arguments from the partial. https://github.com/vim/vim/commit/9e63f61cb01c70fd71652f54b2d01ee27b2a3534
* vim-patch:7.4.1586Michael Ennen2016-12-12
| | | | | | | Problem: Nesting partials doesn't work. Solution: Append arguments. (Ken Takata) https://github.com/vim/vim/commit/8a1bb046378f4bc68d6a04af2eab80fb3ce04da6
* vim-patch:7.4.1585Michael Ennen2016-12-12
| | | | | | | | Problem: Partial is not recognized everywhere. Solution: Check for partial in trans_function_name(). (Yasuhiro Matsumoto) Add a test. https://github.com/vim/vim/commit/d22a18928ebcb465393da1418bb88204b97badb1
* vim-patch:7.4.1582Michael Ennen2016-12-12
| | | | | | | | | Problem: Get E923 when using function(dict.func, [], dict). (Kent Sibilev) Storing a function with a dict in a variable drops the dict if the function is script-local. Solution: Translate the function name. Use dict arg if present. https://github.com/vim/vim/commit/6f2e4b36c9d9908e1cace2b1b96e2c154a837bc2
* vim-patch:7.4.1581Michael Ennen2016-12-12
| | | | | | | | | Problem: Using ":call dict.func()" where the function is a partial does not work. Using "dict.func()" where the function does not take a Dictionary does not work. Solution: Handle partial properly in ":call". (Yasuhiro Matsumoto) https://github.com/vim/vim/commit/65639032bb7b17996cd255d1508a1df4ad528a1f
* vim-patch:7.4.1580Michael Ennen2016-12-12
| | | | | | | Problem: Crash when using function reference. (Luchr) Solution: Set initial refcount. (Ken Takata) https://github.com/vim/vim/commit/7a5c46a9df7ef01a4f6a620861c35400d5ad28d9
* vim-patch:7.4.1577Michael Ennen2016-12-12
| | | | | | | Problem: Cannot pass "dict.Myfunc" around as a partial. Solution: Create a partial when expected. https://github.com/vim/vim/commit/ab1fa3955f25dfdb7e329c3bd76e175c93c8cb5e
* vim-patch:7.4.1564Michael Ennen2016-12-12
| | | | | | | Problem: An empty list in function() causes an error. Solution: Handle an empty list like there is no list of arguments. https://github.com/vim/vim/commit/346418c624f1bc7c04c98907134a2b284e6452dd
* vim-patch:7.4.1559Michael Ennen2016-12-12
| | | | | | | Problem: Passing cookie to a callback is clumsy. Solution: Change function() to take arguments and return a partial. https://github.com/vim/vim/commit/1735bc988c546cc962c5f94792815b4d7cb79710
* vim-patch:7.4.1867James McCoy2016-12-11
| | | | | | | Problem: Memory leak in test_matchstrpos. Solution: Free the string before overwriting. (Yegappan Lakshmanan) https://github.com/vim/vim/commit/3c809343c72d9964475f421fd03bb892bc584a51
* Merge #5752 from justinmk/docJustin M. Keyes2016-12-11
|\ | | | | doc: api_info(), typval_encode.h
| * doc: eval/typval_encode.hJustin M. Keyes2016-10-31
| | | | | | | | Annotate TYPVAL_ENCODE_DEFINE_CONV_FUNCTIONS to aid code navigation.
* | test: jobstart()Justin M. Keyes2016-12-11
| |
* | jobstart(): Return -1 if cmd is not executable. #5671Aaron Williamson2016-12-10
| | | | | | | | Closes #5465
* | vim-patch:7.4.1685Michael Ennen2016-12-06
| | | | | | | | | | | | | | Problem: There is no easy way to get all the information about a match. Solution: Add matchstrpos(). (Ozaki Kiichi) https://github.com/vim/vim/commit/7fed5c18f8577b75404b80d8b9a9907b1bbd27e4
* | Add v:exitingMarco Hinz2016-12-01
| | | | | | | | | | | | | | | | | | Contains the exit value nvim will use. Before exiting, it is v:null. That way jobs or autocmds (in VimLeavePre or VimLeave) can check if Neovim is about to quit and with what exit value. Closes #4666.
* | Merge pull request #5664 from brcolow/vim-7.4.1707James McCoy2016-12-01
|\ \ | | | | | | vim-patch:7.4.1707
| * | vim-patch:7.4.1707Michael Ennen2016-11-25
| | | | | | | | | | | | | | | | | | | | | Problem: Cannot use empty dictionary key, even though it can be useful. Solution: Allow using an empty dictionary key. https://github.com/vim/vim/commit/0921ecff1c5a74541bad6c073e8ade32247403d8
* | | vim-patch:7.4.2071Michael Ennen2016-11-29
| | | | | | | | | | | | | | | | | | | | | Problem: The return value of type() is difficult to use. Solution: Define v:t_ constants. (Ken Takata) https://github.com/vim/vim/commit/f562e72df726c6191fa305e1c0a113f1cfb87f76
* | | startup: Initialize v:count1 (#5656)Marco Hinz2016-11-28
| | | | | | | | | | | | | | | | | | | | | | | | The man plugin uses `v:count == v:count1` to detect if a count was explicitly given. Unfortunately v:count1 does _not_ default to 1 but 0 during startup. Now we set v:count1 to 1 early. Fixes https://github.com/neovim/neovim/issues/5655
* | | vim-patch:7.4.1660Shougo Matsushita2016-11-22
|/ / | | | | | | | | | | | | Problem: has('patch-7.4.1') doesn't work. Solution: Fix off-by-one error. (Thinca) https://github.com/vim/vim/commit/819821c5a95fc60797ecbb5e5ca1302e397e3d9a
* | jobs: ensure calling jobclose() on a pty job sends SIGHUP. Closes #5619Björn Linse2016-11-17
| |
* | l10n: Update Ukrainian translation (#5567)Anatolii Sakhnik2016-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix translation of the term 'tag' Prefer native word instead of transliteration * Update uk.po automatically Run make update-po-uk in src/nvim/po * Update fuzzy translations in uk.po * Translate missing msgstr * Fix layout of the front page * Apply cleanup.vim Additionally, remove irrelevant and confusing comments * Copy uk.po into uk.cp1251.po
* | vim-patch:7.4.1894James McCoy2016-11-15
| | | | | | | | | | | | | | Problem: Cannot get the window ID for a mouse click. Solution: Add v:mouse_winid. https://github.com/vim/vim/commit/511972d810ea490955161ff5097ec2f57919ceaf
* | vim-patch:7.4.1892James McCoy2016-11-15
| | | | | | | | | | | | | | Problem: balloon eval only gets the window number, not the ID. Solution: Add v:beval_winid. https://github.com/vim/vim/commit/c9721bdc63378cc6123e775ffe43e9cba30322b3
* | vim-patch:8.0.0035 (#5609)Shougo2016-11-15
| | | | | | | | | | | | | | Problem: Order of matches for 'omnifunc' is messed up. (Danny Su) Solution: Do not set compl_curr_match when called from complete_check(). (closes vim/vim#1168) https://github.com/vim/vim/commit/472e85970ee3a80abd824bef510df12e9cfe9e96
* | vim-patch:7.4.1658James McCoy2016-11-14
| | | | | | | | | | | | | | | | Problem: A plugin does not know when VimEnter autocommands were already triggered. Solution: Add the v:vim_did_enter variable. https://github.com/vim/vim/commit/1473551a4457d4920b235eeeb9f279e196ee7225
* | Merge pull request #5527 from brcolow/vim-7.4.1730James McCoy2016-10-31
|\ \ | |/ |/| vim-patch:7.4.[1730,1734,1741,1742,1779,1782]
| * vim-patch:7.4.1782Michael Ennen2016-10-24
| | | | | | | | | | | | | | | | Problem: strcharpart() does not work properly with some multi-byte characters. Solution: Use mb_cptr2len() instead of mb_char2len(). (Hirohito Higashi) https://github.com/vim/vim/commit/fca66003053f8c0da5161d1fe4b75b3a389934b5
| * vim-patch:7.4.1779Michael Ennen2016-10-23
| | | | | | | | | | | | | | Problem: Using negative index in strcharpart(). (Yegappan Lakshmanan) Solution: Assume single byte when using a negative iindex. https://github.com/vim/vim/commit/73dfe917ba6357413aaf98a021c91add5ac6e9bc