<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rneovim.git/runtime/lua/vim/_system.lua, branch master</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>build: ship "_core/*" as bytecode (built-into Nvim binary)</title>
<updated>2025-12-30T06:44:24+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2025-08-29T03:43:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=20e77c5d886af54d1f7b6844cffc11129f579ad9'/>
<id>20e77c5d886af54d1f7b6844cffc11129f579ad9</id>
<content type='text'>
Problem:
We want to encourage implementing core features in Lua instead of C, but
it's clumsy because:
- Core Lua code (built into `nvim` so it is available even if VIMRUNTIME
  is missing/invalid) requires manually updating CMakeLists.txt, or
  stuffing it into `_editor.lua`.
- Core Lua modules are not organized similar to C modules, `_editor.lua`
  is getting too big.

Solution:
- Introduce `_core/` where core Lua code can live. All Lua modules added
  there will automatically be included as bytecode in the `nvim` binary.
- Move these core modules into `_core/*`:
  ```
  _defaults.lua
  _editor.lua
  _options.lua
  _system.lua
  shared.lua
  ```

TODO:
- Move `_extui/ =&gt; _core/ui2/`
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
We want to encourage implementing core features in Lua instead of C, but
it's clumsy because:
- Core Lua code (built into `nvim` so it is available even if VIMRUNTIME
  is missing/invalid) requires manually updating CMakeLists.txt, or
  stuffing it into `_editor.lua`.
- Core Lua modules are not organized similar to C modules, `_editor.lua`
  is getting too big.

Solution:
- Introduce `_core/` where core Lua code can live. All Lua modules added
  there will automatically be included as bytecode in the `nvim` binary.
- Move these core modules into `_core/*`:
  ```
  _defaults.lua
  _editor.lua
  _options.lua
  _system.lua
  shared.lua
  ```

TODO:
- Move `_extui/ =&gt; _core/ui2/`
</pre>
</div>
</content>
</entry>
<entry>
<title>docs: small fixes (#36146)</title>
<updated>2025-10-12T04:16:14+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2025-10-12T04:16:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=f4e4799f2707a41a882fa85c2f1a276d69f08d56'/>
<id>f4e4799f2707a41a882fa85c2f1a276d69f08d56</id>
<content type='text'>
Close #35989
Close #36031
Close #36107

Co-authored-by: Kieran Moy &lt;kfatyuip@gmail.com&gt;
Co-authored-by: William Sprent &lt;william@sprent.dk&gt;
Co-authored-by: David Briscoe &lt;43559+idbrii@users.noreply.github.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Close #35989
Close #36031
Close #36107

Co-authored-by: Kieran Moy &lt;kfatyuip@gmail.com&gt;
Co-authored-by: William Sprent &lt;william@sprent.dk&gt;
Co-authored-by: David Briscoe &lt;43559+idbrii@users.noreply.github.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>docs: small fixes (#35791)</title>
<updated>2025-09-16T03:41:36+00:00</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2025-09-16T03:41:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=ff777f9a858a5f360e220596c63bc69e19a1d5c1'/>
<id>ff777f9a858a5f360e220596c63bc69e19a1d5c1</id>
<content type='text'>
Close #34938
Close #35030
Close #35233
Close #35259
Close #35290
Close #35433
Close #35541
Close #35766
Close #35792

Co-authored-by: huylg &lt;45591413+huylg@users.noreply.github.com&gt;
Co-authored-by: Jason Del Ponte &lt;961963+jasdel@users.noreply.github.com&gt;
Co-authored-by: sooriya &lt;74165167+thuvasooriya@users.noreply.github.com&gt;
Co-authored-by: Andrew Braxton &lt;andrewcbraxton@gmail.com&gt;
Co-authored-by: Enric Calabuig &lt;enric.calabuig@gmail.com&gt;
Co-authored-by: Augusto César Dias &lt;augusto.c.dias@gmail.com&gt;
Co-authored-by: David Sierra DiazGranados &lt;davidsierradz@gmail.com&gt;
Co-authored-by: Stepan Nikitin &lt;90522882+vectravox@users.noreply.github.com&gt;
Co-authored-by: Emilien Breton &lt;bricktech2000@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Close #34938
Close #35030
Close #35233
Close #35259
Close #35290
Close #35433
Close #35541
Close #35766
Close #35792

Co-authored-by: huylg &lt;45591413+huylg@users.noreply.github.com&gt;
Co-authored-by: Jason Del Ponte &lt;961963+jasdel@users.noreply.github.com&gt;
Co-authored-by: sooriya &lt;74165167+thuvasooriya@users.noreply.github.com&gt;
Co-authored-by: Andrew Braxton &lt;andrewcbraxton@gmail.com&gt;
Co-authored-by: Enric Calabuig &lt;enric.calabuig@gmail.com&gt;
Co-authored-by: Augusto César Dias &lt;augusto.c.dias@gmail.com&gt;
Co-authored-by: David Sierra DiazGranados &lt;davidsierradz@gmail.com&gt;
Co-authored-by: Stepan Nikitin &lt;90522882+vectravox@users.noreply.github.com&gt;
Co-authored-by: Emilien Breton &lt;bricktech2000@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>docs: lsp, ui events, dev guidance, osc7</title>
<updated>2025-07-29T02:00:25+00:00</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2025-07-11T12:33:29+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=56a4ef3c213d87bfba5f361376bd23eefdf6c6ec'/>
<id>56a4ef3c213d87bfba5f361376bd23eefdf6c6ec</id>
<content type='text'>
fix #34981
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
fix #34981
</pre>
</div>
</content>
</entry>
<entry>
<title>docs: move vim.system to own section</title>
<updated>2025-07-10T12:34:58+00:00</updated>
<author>
<name>Lewis Russell</name>
<email>lewis6991@gmail.com</email>
</author>
<published>2025-07-10T09:32:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=e644038f06b4e3401f9b496bbe4337bfe8b18146'/>
<id>e644038f06b4e3401f9b496bbe4337bfe8b18146</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(vim.system): env=nil passes env=nil to uv.spawn</title>
<updated>2025-07-02T16:01:29+00:00</updated>
<author>
<name>Lewis Russell</name>
<email>lewis6991@gmail.com</email>
</author>
<published>2025-07-02T11:08:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=4eebc46930008d7cf47491121556ee201e1f4860'/>
<id>4eebc46930008d7cf47491121556ee201e1f4860</id>
<content type='text'>
731e616a79 made it so passing `{env = nil, clear_env = true }` would
pass `{env = {}}` to `vim.uv.spawn`.

However this is not what `clear_env` is (arguably) supposed to do.
If `env=nil` then that implies the uses wants `vim.uv.spawn()` to use
the default environment. Adding `clear_env = true` simply prevents
`NVIM` (the base environment) from being added.

Fixes #34730
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
731e616a79 made it so passing `{env = nil, clear_env = true }` would
pass `{env = {}}` to `vim.uv.spawn`.

However this is not what `clear_env` is (arguably) supposed to do.
If `env=nil` then that implies the uses wants `vim.uv.spawn()` to use
the default environment. Adding `clear_env = true` simply prevents
`NVIM` (the base environment) from being added.

Fixes #34730
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(vim.system): clear_env=true gives an invalid env to uv.spawn #33955</title>
<updated>2025-06-25T22:15:19+00:00</updated>
<author>
<name>Birdee</name>
<email>85372418+BirdeeHub@users.noreply.github.com</email>
</author>
<published>2025-06-25T22:15:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=731e616a79d01e4797badbb4e18d167c51125151'/>
<id>731e616a79d01e4797badbb4e18d167c51125151</id>
<content type='text'>
Problem:
In setup_env, some needed logic is bypassed when clear_env=true.

Solution:
Drop the early return in setup_env().

Co-authored-by: BirdeeHub &lt;birdee@localhost&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
In setup_env, some needed logic is bypassed when clear_env=true.

Solution:
Drop the early return in setup_env().

Co-authored-by: BirdeeHub &lt;birdee@localhost&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>fix: type fixes</title>
<updated>2025-06-06T14:36:48+00:00</updated>
<author>
<name>Lewis Russell</name>
<email>lewis6991@gmail.com</email>
</author>
<published>2025-06-05T10:31:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=3b6084ddf4f0d49fb0e5d135919c9daacea2a46d'/>
<id>3b6084ddf4f0d49fb0e5d135919c9daacea2a46d</id>
<content type='text'>
Type fixes caught by emmylua
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Type fixes caught by emmylua
</pre>
</div>
</content>
</entry>
<entry>
<title>fix(vim.system): improve error message when cwd does not exist</title>
<updated>2025-05-29T12:59:33+00:00</updated>
<author>
<name>Lewis Russell</name>
<email>lewis6991@gmail.com</email>
</author>
<published>2025-04-29T09:48:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=532610388bb09fef6d0de8929092d4dc32f781bf'/>
<id>532610388bb09fef6d0de8929092d4dc32f781bf</id>
<content type='text'>
Problem:
vim.uv.spawn will emit ENOENT for either when the cmd or cwd do not
exist and does not tell you which.

Solution:
If an error occurs, check if cwd was supplied and included in the error
message if it does not exist.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
vim.uv.spawn will emit ENOENT for either when the cmd or cwd do not
exist and does not tell you which.

Solution:
If an error occurs, check if cwd was supplied and included in the error
message if it does not exist.
</pre>
</div>
</content>
</entry>
<entry>
<title>docs(luv): replace bundled LuaCATS meta files with upstream</title>
<updated>2025-05-06T16:47:33+00:00</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2025-05-06T13:59:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.josher.dev/rneovim.git/commit/?id=a81d2b6703e03bcee0521772551df750148884ae'/>
<id>a81d2b6703e03bcee0521772551df750148884ae</id>
<content type='text'>
Synced from https://github.com/luvit/luv/blob/master/meta.lua
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Synced from https://github.com/luvit/luv/blob/master/meta.lua
</pre>
</div>
</content>
</entry>
</feed>
