Closed clason closed 10 months ago
Hmm, that might not be so easy since neovide seems to ignore variables set via Lua? (So, e.g., lua vim.g.neovide_cursor_animation_length=0
sets the variable correctly according to neovim, but neovide isn't affected by the change.)
Why would we add this? Does Neovide already support ginit.vim and so this would just make it work with Lua too? To me, it seems better/easier to be able to configure things from your normal init.lua
(or init.vim) in a if vim.g.neovide == 1
block, if possible.
Why would we add this? Does Neovide already support ginit.vim and so this would just make it work with Lua too?
Yes, exactly.
To me, it seems better/easier to be able to configure things from your normal
init.lua
(or init.vim) in aif vim.g.neovide == 1
block, if possible.
To me, it makes more sense to configure GUI settings in a separate config since it's irrelevant to normal neovim use ;)
To me, it makes more sense to configure GUI settings in a separate config since it's irrelevant to normal neovim use ;)
That's fair, but at the same time not necessarily. E.g. if I'm configuring the builtin LSP, and want to use handlers for things like the signature help etc. that the GUI provides (currently only a thing in uivonim afaik, but other GUIs could very well do this in the future), I can't really do that in a separate config, as I need access to the calls to setup
so I can do e.g. lspconfig.whatever_language.setup({ handlers = the_gui_handlers })
. To achieve that with a separate config I'd have to duplicate stuff, or just change vim.lsp.handlers
directly and not do it on a per-language basis, right?
That's just one example, and I'd imagine there are/could be others. Plus, if has('gui_name')
/if g:gui_name
seems to be the convention among GUIs anyways, although maybe that's not a reason to not support ginit in general. I think it just tends to be what people expect.
At this point though I'm more arguing in favor of removing the whole ginit.*
thing entirely, instead of whether or not we should add ginit.lua
.
That's something completely different. I'm just talking about the vimscript config options from the Wiki.
If we have to configure neovide through neovim -- rather than its own neovide-settings.json
(which is already a thing!) -- it should be Lua first.
(The issue is that in https://github.com/neovide/neovide/blob/d5404299ee57164d6621ad81092f2e3f60b74c8e/src/settings/mod.rs#L114
the dictwatcheradd
only triggers on changes from vimscript, not through the API -- this is a Neovim issue.)
(Still think neovide_settings.json
is the better place for this than a neovim init file ;))
Thats wild. I think there is an existing issue; maybe you raised it? Is there an upstream report?
I have a PR to fix it: https://github.com/neovim/neovim/pull/15373
This is fixed in upstream
This Is Neovim!
(Sorry, couldn't resist. But would be nice to have native Lua config for neovide!)
This of course begs the question which should have precedence: Here we should follow neovim's lead and treat having both as an error.