<feed xmlns='http://www.w3.org/2005/Atom'>
<title>neovim/runtime/lua/vim/_system.lua, branch master</title>
<subtitle>Vim-fork focused on extensibility and usability</subtitle>
<id>http://git.waynecole.info/neovim/atom?h=master</id>
<link rel='self' href='http://git.waynecole.info/neovim/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/'/>
<updated>2025-12-30T06:44:24Z</updated>
<entry>
<title>build: ship "_core/*" as bytecode (built-into Nvim binary)</title>
<updated>2025-12-30T06:44:24Z</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2025-08-29T03:43:10Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=20e77c5d886af54d1f7b6844cffc11129f579ad9'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>docs: small fixes (#36146)</title>
<updated>2025-10-12T04:16:14Z</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2025-10-12T04:16:14Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=f4e4799f2707a41a882fa85c2f1a276d69f08d56'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>docs: small fixes (#35791)</title>
<updated>2025-09-16T03:41:36Z</updated>
<author>
<name>zeertzjq</name>
<email>zeertzjq@outlook.com</email>
</author>
<published>2025-09-16T03:41:36Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=ff777f9a858a5f360e220596c63bc69e19a1d5c1'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>docs: lsp, ui events, dev guidance, osc7</title>
<updated>2025-07-29T02:00:25Z</updated>
<author>
<name>Justin M. Keyes</name>
<email>justinkz@gmail.com</email>
</author>
<published>2025-07-11T12:33:29Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=56a4ef3c213d87bfba5f361376bd23eefdf6c6ec'/>
<id>urn:sha1:56a4ef3c213d87bfba5f361376bd23eefdf6c6ec</id>
<content type='text'>
fix #34981
</content>
</entry>
<entry>
<title>docs: move vim.system to own section</title>
<updated>2025-07-10T12:34:58Z</updated>
<author>
<name>Lewis Russell</name>
<email>lewis6991@gmail.com</email>
</author>
<published>2025-07-10T09:32:17Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=e644038f06b4e3401f9b496bbe4337bfe8b18146'/>
<id>urn:sha1:e644038f06b4e3401f9b496bbe4337bfe8b18146</id>
<content type='text'>
</content>
</entry>
<entry>
<title>fix(vim.system): env=nil passes env=nil to uv.spawn</title>
<updated>2025-07-02T16:01:29Z</updated>
<author>
<name>Lewis Russell</name>
<email>lewis6991@gmail.com</email>
</author>
<published>2025-07-02T11:08:48Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=4eebc46930008d7cf47491121556ee201e1f4860'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>fix(vim.system): clear_env=true gives an invalid env to uv.spawn #33955</title>
<updated>2025-06-25T22:15:19Z</updated>
<author>
<name>Birdee</name>
<email>85372418+BirdeeHub@users.noreply.github.com</email>
</author>
<published>2025-06-25T22:15:19Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=731e616a79d01e4797badbb4e18d167c51125151'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>fix: type fixes</title>
<updated>2025-06-06T14:36:48Z</updated>
<author>
<name>Lewis Russell</name>
<email>lewis6991@gmail.com</email>
</author>
<published>2025-06-05T10:31:51Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=3b6084ddf4f0d49fb0e5d135919c9daacea2a46d'/>
<id>urn:sha1:3b6084ddf4f0d49fb0e5d135919c9daacea2a46d</id>
<content type='text'>
Type fixes caught by emmylua
</content>
</entry>
<entry>
<title>fix(vim.system): improve error message when cwd does not exist</title>
<updated>2025-05-29T12:59:33Z</updated>
<author>
<name>Lewis Russell</name>
<email>lewis6991@gmail.com</email>
</author>
<published>2025-04-29T09:48:18Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=532610388bb09fef6d0de8929092d4dc32f781bf'/>
<id>urn:sha1: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>
</entry>
<entry>
<title>docs(luv): replace bundled LuaCATS meta files with upstream</title>
<updated>2025-05-06T16:47:33Z</updated>
<author>
<name>Christian Clason</name>
<email>c.clason@uni-graz.at</email>
</author>
<published>2025-05-06T13:59:03Z</published>
<link rel='alternate' type='text/html' href='http://git.waynecole.info/neovim/commit/?id=a81d2b6703e03bcee0521772551df750148884ae'/>
<id>urn:sha1:a81d2b6703e03bcee0521772551df750148884ae</id>
<content type='text'>
Synced from https://github.com/luvit/luv/blob/master/meta.lua
</content>
</entry>
</feed>
