<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/src/nvim/lua/vim.lua, branch rahm</title>
<subtitle>Neovim fork with Rahm's personal hacks.</subtitle>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/'/>
<entry>
<title>refactor(lua): move only runtime lua file in src/ to runtime/lua</title>
<updated>2022-03-04T18:07:42+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2022-03-04T15:18:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=186a559818f7a709dbdd4590fe7440ebd619a208'/>
<id>186a559818f7a709dbdd4590fe7440ebd619a208</id>
<content type='text'>
reorganize so that initialization is done in lua
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
reorganize so that initialization is done in lua
</pre>
</div>
</content>
</entry>
<entry>
<title>refactor(lua): reorganize builtin modules, phase 1</title>
<updated>2022-03-03T19:03:30+00:00</updated>
<author>
<name>bfredl</name>
<email>bjorn.linse@gmail.com</email>
</author>
<published>2022-03-01T13:27:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=f9faba88fdc46b2dd1a979a37ba61b000830ff3a'/>
<id>f9faba88fdc46b2dd1a979a37ba61b000830ff3a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(lua): show proper verbose output for lua configuration</title>
<updated>2022-02-28T13:18:49+00:00</updated>
<author>
<name>shadmansaleh</name>
<email>13149513+shadmansaleh@users.noreply.github.com</email>
</author>
<published>2022-01-07T18:39:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=ebfe083337701534887ac3ea3d8e7ad47f7a206a'/>
<id>ebfe083337701534887ac3ea3d8e7ad47f7a206a</id>
<content type='text'>
`:verbose` didn't work properly with lua configs (For example:
    options or keymaps are set from lua, just say that they were set
    from lua, doesn't say where they were set at.

This fixes that issue. Now `:verbose` will provide filename and line no
when option/keymap is set from lua.

Changes:
  - compiles lua/vim/keymap.lua as vim/keymap.lua
 - When souring a lua file current_sctx.sc_sid is set to SID_LUA
 - Moved finding scripts SID out of `do_source()` to `get_current_script_id()`.
   So it can be reused for lua files.
 - Added new function `nlua_get_sctx` that extracts current lua scripts
   name and line no with debug library. And creates a sctx for it.
     NOTE: This function ignores C functions and blacklist which
     currently contains only vim/_meta.lua so vim.o/opt wrappers aren't
     targeted.
 - Added function `nlua_set_sctx` that changes provided sctx to current
   lua scripts sctx if a lua file is being executed.
 - Added tests in tests/functional/lua/verbose_spec.lua
 - add primary support for additional types (:autocmd, :function, :syntax) to lua verbose
    Note: These can't yet be directly set from lua but once that's possible
    :verbose should work for them hopefully :D
 - add :verbose support for nvim_exec &amp; nvim_command within lua
    Currently auto commands/commands/functions ... can only be defined
    by nvim_exec/nvim_command this adds support for them. Means if those
    Are defined within lua with vim.cmd/nvim_exec :verbose will show their
    location . Though note it'll show the line no on which nvim_exec call was made.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`:verbose` didn't work properly with lua configs (For example:
    options or keymaps are set from lua, just say that they were set
    from lua, doesn't say where they were set at.

This fixes that issue. Now `:verbose` will provide filename and line no
when option/keymap is set from lua.

Changes:
  - compiles lua/vim/keymap.lua as vim/keymap.lua
 - When souring a lua file current_sctx.sc_sid is set to SID_LUA
 - Moved finding scripts SID out of `do_source()` to `get_current_script_id()`.
   So it can be reused for lua files.
 - Added new function `nlua_get_sctx` that extracts current lua scripts
   name and line no with debug library. And creates a sctx for it.
     NOTE: This function ignores C functions and blacklist which
     currently contains only vim/_meta.lua so vim.o/opt wrappers aren't
     targeted.
 - Added function `nlua_set_sctx` that changes provided sctx to current
   lua scripts sctx if a lua file is being executed.
 - Added tests in tests/functional/lua/verbose_spec.lua
 - add primary support for additional types (:autocmd, :function, :syntax) to lua verbose
    Note: These can't yet be directly set from lua but once that's possible
    :verbose should work for them hopefully :D
 - add :verbose support for nvim_exec &amp; nvim_command within lua
    Currently auto commands/commands/functions ... can only be defined
    by nvim_exec/nvim_command this adds support for them. Means if those
    Are defined within lua with vim.cmd/nvim_exec :verbose will show their
    location . Though note it'll show the line no on which nvim_exec call was made.
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(lua): add proper support of luv threads</title>
<updated>2022-02-26T13:01:38+00:00</updated>
<author>
<name>erw7</name>
<email>erw7.github@gmail.com</email>
</author>
<published>2021-09-11T02:48:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=b87867e69e94d9784468a126f21c721446f080de'/>
<id>b87867e69e94d9784468a126f21c721446f080de</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(lua): restore priority of the preloader</title>
<updated>2022-02-05T21:46:04+00:00</updated>
<author>
<name>Lewis Russell</name>
<email>lewis6991@gmail.com</email>
</author>
<published>2022-02-05T18:00:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=b518b577ea89439359dc9faea5ec1bf341c50e52'/>
<id>b518b577ea89439359dc9faea5ec1bf341c50e52</id>
<content type='text'>
Neovim currently places its own loader for searching runtime files at
the front of `package.loaders`. This prevents any preloaders in
`package.preload` from being used. This change fixes that by moving the
default package preloader to run before Neovim's loader. For example,
LuaJIT provides preloaders for the built-in modules `ffi` and `bit`, so
this optimisation will improve the loading of those.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Neovim currently places its own loader for searching runtime files at
the front of `package.loaders`. This prevents any preloaders in
`package.preload` from being used. This change fixes that by moving the
default package preloader to run before Neovim's loader. For example,
LuaJIT provides preloaders for the built-in modules `ffi` and `bit`, so
this optimisation will improve the loading of those.
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(lua): print multiple return values with =expr (#16933)</title>
<updated>2022-01-06T18:42:31+00:00</updated>
<author>
<name>Shadman</name>
<email>13149513+shadmansaleh@users.noreply.github.com</email>
</author>
<published>2022-01-06T18:42:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=287d3566de11f82aa86448998fd4703b1db328bd'/>
<id>287d3566de11f82aa86448998fd4703b1db328bd</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>feat(lua): add notify_once() (#16956)</title>
<updated>2022-01-06T18:10:56+00:00</updated>
<author>
<name>Gregory Anders</name>
<email>8965202+gpanders@users.noreply.github.com</email>
</author>
<published>2022-01-06T18:10:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=d78e46679d2ff31916091f9368367ccc1539c299'/>
<id>d78e46679d2ff31916091f9368367ccc1539c299</id>
<content type='text'>
Like vim.notify(), but only displays the notification once.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Like vim.notify(), but only displays the notification once.</pre>
</div>
</content>
</entry>
<entry>
<title>feat(lua): add vim.keymap</title>
<updated>2022-01-04T16:31:59+00:00</updated>
<author>
<name>shadmansaleh</name>
<email>13149513+shadmansaleh@users.noreply.github.com</email>
</author>
<published>2021-12-30T07:30:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=6d41f65aa45f10a93ad476db01413abaac21f27d'/>
<id>6d41f65aa45f10a93ad476db01413abaac21f27d</id>
<content type='text'>
This introduces two new functions `vim.keymap.set` &amp; `vim.keymap.del`

differences compared to regular set_keymap:
- remap is used as opposite of noremap. By default it's true for &lt;Plug&gt; keymaps and false for others.
- rhs can be lua function.
- mode can be a list of modes.
- replace_keycodes option for lua function expr maps. (Default: true)
- handles buffer specific keymaps

Examples:
```lua
vim.keymap.set('n', 'asdf', function() print("real lua function") end)
vim.keymap.set({'n', 'v'}, '&lt;leader&gt;lr', vim.lsp.buf.references, {buffer=true})
vim.keymap.set('n', '&lt;leader&gt;w', "&lt;cmd&gt;w&lt;cr&gt;", {silent = true, buffer = 5 })
vim.keymap.set('i', '&lt;Tab&gt;', function()
  return vim.fn.pumvisible() == 1 and "&lt;C-n&gt;" or "&lt;Tab&gt;"
end, {expr = true})
vim.keymap.set('n', '[%', '&lt;Plug&gt;(MatchitNormalMultiBackward)')

vim.keymap.del('n', 'asdf')
vim.keymap.del({'n', 'i', 'v'}, '&lt;leader&gt;w', {buffer = 5 })
```
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This introduces two new functions `vim.keymap.set` &amp; `vim.keymap.del`

differences compared to regular set_keymap:
- remap is used as opposite of noremap. By default it's true for &lt;Plug&gt; keymaps and false for others.
- rhs can be lua function.
- mode can be a list of modes.
- replace_keycodes option for lua function expr maps. (Default: true)
- handles buffer specific keymaps

Examples:
```lua
vim.keymap.set('n', 'asdf', function() print("real lua function") end)
vim.keymap.set({'n', 'v'}, '&lt;leader&gt;lr', vim.lsp.buf.references, {buffer=true})
vim.keymap.set('n', '&lt;leader&gt;w', "&lt;cmd&gt;w&lt;cr&gt;", {silent = true, buffer = 5 })
vim.keymap.set('i', '&lt;Tab&gt;', function()
  return vim.fn.pumvisible() == 1 and "&lt;C-n&gt;" or "&lt;Tab&gt;"
end, {expr = true})
vim.keymap.set('n', '[%', '&lt;Plug&gt;(MatchitNormalMultiBackward)')

vim.keymap.del('n', 'asdf')
vim.keymap.del({'n', 'i', 'v'}, '&lt;leader&gt;w', {buffer = 5 })
```
</pre>
</div>
</content>
</entry>
<entry>
<title>feat: filetype.lua (#16600)</title>
<updated>2022-01-04T14:28:29+00:00</updated>
<author>
<name>Gregory Anders</name>
<email>8965202+gpanders@users.noreply.github.com</email>
</author>
<published>2022-01-04T14:28:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=3fd454bd4a6ceb1989d15cf2d3d5e11d7a253b2d'/>
<id>3fd454bd4a6ceb1989d15cf2d3d5e11d7a253b2d</id>
<content type='text'>
Adds a new vim.filetype module that provides support for filetype detection in
Lua.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Adds a new vim.filetype module that provides support for filetype detection in
Lua.</pre>
</div>
</content>
</entry>
<entry>
<title>chore: fix typos (#16506)</title>
<updated>2021-12-28T17:15:16+00:00</updated>
<author>
<name>dundargoc</name>
<email>33953936+dundargoc@users.noreply.github.com</email>
</author>
<published>2021-12-28T17:15:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=08616571f47cc367a5fe59b52295708b9fda3b09'/>
<id>08616571f47cc367a5fe59b52295708b9fda3b09</id>
<content type='text'>
Co-authored-by: Gregory Anders &lt;8965202+gpanders@users.noreply.github.com&gt;
Co-authored-by: Evgeni Chasnovski &lt;evgeni.chasnovski@gmail.com&gt;
Co-authored-by: zeertzjq &lt;zeertzjq@outlook.com&gt;
Co-authored-by: Christoph Hasse &lt;hassec@users.noreply.github.com&gt;
Co-authored-by: Alef Pereira &lt;ealefpereira@gmail.com&gt;
Co-authored-by: AusCyber &lt;willp@outlook.com.au&gt;
Co-authored-by: kylo252 &lt;59826753+kylo252@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Co-authored-by: Gregory Anders &lt;8965202+gpanders@users.noreply.github.com&gt;
Co-authored-by: Evgeni Chasnovski &lt;evgeni.chasnovski@gmail.com&gt;
Co-authored-by: zeertzjq &lt;zeertzjq@outlook.com&gt;
Co-authored-by: Christoph Hasse &lt;hassec@users.noreply.github.com&gt;
Co-authored-by: Alef Pereira &lt;ealefpereira@gmail.com&gt;
Co-authored-by: AusCyber &lt;willp@outlook.com.au&gt;
Co-authored-by: kylo252 &lt;59826753+kylo252@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
</feed>
