<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/src/nvim/generators, branch newfeatures</title>
<subtitle>Neovim fork with Rahm's personal hacks.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/'/>
<entry>
<title>Add a check to the gen_options.lua script to ensure the options are well ordered.</title>
<updated>2021-10-05T08:21:59+00:00</updated>
<author>
<name>Josh Rahm</name>
<email>rahm@google.com</email>
</author>
<published>2021-09-22T20:59:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=ba1e9454aacd27582d1d4c5b5153bd175a16c461'/>
<id>ba1e9454aacd27582d1d4c5b5153bd175a16c461</id>
<content type='text'>
(Neo)Vim uses a jump table based on the first character of the option's
name. This means for it to work all options with the same first
character must be together. If this is violated, some options may seem
to disappear, which can sometimes happen during merges if not careful.

This commit adds a check to the gen_options.lua script so the build will
fail if this constraint is violated.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(Neo)Vim uses a jump table based on the first character of the option's
name. This means for it to work all options with the same first
character must be together. If this is violated, some options may seem
to disappear, which can sometimes happen during merges if not careful.

This commit adds a check to the gen_options.lua script so the build will
fail if this constraint is violated.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(lua): rename nlua_msgpack_ =&gt; nlua_api_</title>
<updated>2021-08-28T14:50:59+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2021-08-27T17:45:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=469652d0d5540f646a52edda853e7d87e879d457'/>
<id>469652d0d5540f646a52edda853e7d87e879d457</id>
<content type='text'>
These functions do not involve msgpack. Initially the nvim api was
sometimes called the "msgpack API", but entry points from vim script
and lua are equally valid (and don't need to reference "msgpack")
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These functions do not involve msgpack. Initially the nvim api was
sometimes called the "msgpack API", but entry points from vim script
and lua are equally valid (and don't need to reference "msgpack")
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge #15293 Vimscript "method" syntax</title>
<updated>2021-08-26T11:26:32+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2021-08-26T11:26:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=4c499899b2c3b31d57c1911c522683bdb2e32a0a'/>
<id>4c499899b2c3b31d57c1911c522683bdb2e32a0a</id>
<content type='text'>
Port VimL's method call syntax - vim-patch:8.1.{1638,1800,1803,1807,1809,1816,1820,1821,1828,1834,1835,1861,1863,1878,1879,1888,1909,1911,1912}</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Port VimL's method call syntax - vim-patch:8.1.{1638,1800,1803,1807,1809,1816,1820,1821,1828,1834,1835,1861,1863,1878,1879,1888,1909,1911,1912}</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(map): remove extra-allocating map_new/map_free functions</title>
<updated>2021-08-22T14:15:38+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2021-08-22T14:03:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=de21e6ef3d9af96d2b71e54d8148d28b5fc9f22e'/>
<id>de21e6ef3d9af96d2b71e54d8148d28b5fc9f22e</id>
<content type='text'>
Note: the reason for removing them is not that there after this refactor
is no use of them, but rather that having them available is an
anti-pattern: they manange an _extra_ heap allocation which has
nothing to do with the functionality of the map itself (khash
manages the real buffers internally). In case there happens to
be a reason to allocate the map structure itself later, this
should be made explicit using xcalloc/xfree calls.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Note: the reason for removing them is not that there after this refactor
is no use of them, but rather that having them available is an
anti-pattern: they manange an _extra_ heap allocation which has
nothing to do with the functionality of the map itself (khash
manages the real buffers internally). In case there happens to
be a reason to allocate the map structure itself later, this
should be made explicit using xcalloc/xfree calls.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(options): remove vi/vim default value distinction</title>
<updated>2021-08-17T14:07:41+00:00</updated>
<author>
<name>Gregory Anders</name>
<email>greg@gpanders.com</email>
</author>
<published>2021-08-16T16:46:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=8e926a0984f7dc91feca56e6c8a0272a0c275bd8'/>
<id>8e926a0984f7dc91feca56e6c8a0272a0c275bd8</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:8.1.1807: more functions can be used as a method</title>
<updated>2021-08-12T21:35:20+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2021-08-06T16:09:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=003c8acc8a9863932430bfb51bee8403b964c19b'/>
<id>003c8acc8a9863932430bfb51bee8403b964c19b</id>
<content type='text'>
Problem:    More functions can be used as a method.
Solution:   Add append(), appendbufline(), assert_equal(), etc.
            Also add the :eval command.
https://github.com/vim/vim/commit/25e42231d3ee27feec2568fa4be2aa2bfba82ae5

:eval is already ported.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:    More functions can be used as a method.
Solution:   Add append(), appendbufline(), assert_equal(), etc.
            Also add the :eval command.
https://github.com/vim/vim/commit/25e42231d3ee27feec2568fa4be2aa2bfba82ae5

:eval is already ported.
</pre>
</div>
</content>
</entry>
<entry>
<title>vim-patch:8.1.1803: all builtin functions are global</title>
<updated>2021-08-12T21:35:19+00:00</updated>
<author>
<name>Sean Dewar</name>
<email>seandewar@users.noreply.github.com</email>
</author>
<published>2021-08-05T18:46:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=e6be6c307a832d661d2a6269ad2d322e4bf5e9cc'/>
<id>e6be6c307a832d661d2a6269ad2d322e4bf5e9cc</id>
<content type='text'>
Problem:    All builtin functions are global.
Solution:   Add the method call operator -&gt;.  Implemented for a limited number
            of functions.
https://github.com/vim/vim/commit/ac92e25a33c37ec5becbfffeccda136c73b761ac

- Note that to *exactly* port hunk @@ -7376,18 +7444,19 from
  handle_subscript(), we need the :scriptversion patches (I have an open
  PR for those, but this patch works fine without them anyway).
- Port call_internal_func() from v7.4.2058.
- Adjust some error messages in tests, as they rely on the Blob patches.
- Add a modeline to test_method.vim.

Ignore the global_functions and base_method tables and prefer the
current GPerf implementation. Instead, add an extra base_arg field to
VimLFuncDef that holds the number of the argument to use as the base
(1-indexed, so that 0 may be used to refer to functions that cannot be
used as methods).

This also means we support using any argument as a base from the get-go,
rather than just the first (Vim includes this ability in future patches,
however).

To mark a function as usable as a method, use the "base" key as
described in eval.lua.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:    All builtin functions are global.
Solution:   Add the method call operator -&gt;.  Implemented for a limited number
            of functions.
https://github.com/vim/vim/commit/ac92e25a33c37ec5becbfffeccda136c73b761ac

- Note that to *exactly* port hunk @@ -7376,18 +7444,19 from
  handle_subscript(), we need the :scriptversion patches (I have an open
  PR for those, but this patch works fine without them anyway).
- Port call_internal_func() from v7.4.2058.
- Adjust some error messages in tests, as they rely on the Blob patches.
- Add a modeline to test_method.vim.

Ignore the global_functions and base_method tables and prefer the
current GPerf implementation. Instead, add an extra base_arg field to
VimLFuncDef that holds the number of the argument to use as the base
(1-indexed, so that 0 may be used to refer to functions that cannot be
used as methods).

This also means we support using any argument as a base from the get-go,
rather than just the first (Vim includes this ability in future patches,
however).

To mark a function as usable as a method, use the "base" key as
described in eval.lua.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(options): remove obsolete distinction of "vi" vs "vim" defaults</title>
<updated>2021-07-14T19:54:19+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2021-07-13T17:12:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=f0cc3a9480ffc30624a70ebd1e30146bc03a7029'/>
<id>f0cc3a9480ffc30624a70ebd1e30146bc03a7029</id>
<content type='text'>
It might come as a schocking surprise, but the defaults we support
are the NEOVIM defaults.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It might come as a schocking surprise, but the defaults we support
are the NEOVIM defaults.
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(options): delet unused P_VIM flag</title>
<updated>2021-07-14T19:06:07+00:00</updated>
<author>
<name>Björn Linse</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2021-07-13T16:35:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=fc869da6dc94970e9aa26d51bd605d383f4a4c4e'/>
<id>fc869da6dc94970e9aa26d51bd605d383f4a4c4e</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>chore: use codespell to spell check #15016</title>
<updated>2021-07-07T22:28:44+00:00</updated>
<author>
<name>dundargoc</name>
<email>33953936+dundargoc@users.noreply.github.com</email>
</author>
<published>2021-07-07T22:28:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.josher.dev/cgit/rneovim.git/commit/?id=4547137aaff32b20172870a549d3a28a3c7adf1c'/>
<id>4547137aaff32b20172870a549d3a28a3c7adf1c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
