Closed Doosty closed 1 year ago
hey :wave:
Thanks for the feedback! I think you're probably right. I'll look into stripping it down some more.
To address some specific points:
'<space>e'
keymap:
:thinking: The problem is that it shows an error if there are no diagnostics. I think I can fix that.
had to add a leader mapping
If you don't set a <leader>
mapping, \
is the default <leader>
(which I find quite comfortable on a US-intl query keyboard).
I'd prefer to leave the default, but I can add that snippet commented out with a comment explaining it.
wf.nvim was giving me errors
Yup, I'll probably remove it. I'm going to disable the auto-popup in my personal config too, because it pops up way more often than I want it to.
Perhaps a more minimal included statusline config would be better, atleast without the top line.
Probably a good idea. I don't want to add any other tab/statusline plugins.
but i am still curious why lspconfig did not work, since that is the plugin most popular for configuring the lsp,
Did you call lspconfig.pylsp.setup
in ftplugin/python
? If so, that's probably why. lspconfig
doesn't use the ftplugin
mechanism. Instead, it creates filetype autocommands. If you call lspconfig.xyz.setup
within an ftplugin
file, it won't work, because the autocommand is created after you open the file.
and wondering why you decided not to use it?
Because I believe the setup
antipattern must die :sweat_smile:.
Aside from that, autocommands
and calling require('<module>')
in init.lua
or plugin/foo.lua
adds a bit of overhead to Neovim's startup.
The ftplugin
mechanism has zero startup impact and offers a neat way to organise configurations.
Anyways, thanks again for the great feedback!
Did you call lspconfig.pylsp.setup in ftplugin/python? If so, that's probably why.
Seems like i might have, i tried lspconfig again but with the setup call inside init.lua and it worked. However ill keep using the ftplugin way since you say its better.
Also found a couple of unused vars (maybe you meant to include them, or i dont understand their use):
local M = {}
in keymaps.lualocal extensions = telescope.extensions
in telescope.lualocal function complete_with_source_mapping
in completion.luaYou can go ahead and close this issue when you read this, thanks.
Hmm, those are probably leftovers from my personal config.
Thanks again 😃
Hi again, ive been tinkering with nvim and this repo for the past couple days and i have some feedback if you want to hear it. First i want to thank you for creating this derivation, i believe this is the best way of managing nvim (nix for packages, lua for config). However ive had some troubles with the configuration that is included alongside the derivation.
Issues
This snippet creates an annoyance - horizontal cursor position on a line is not remembered properly anymore so j/k navigation now puts you at the start of the line most of the time. I decided to comment it out
This keymap has error, some params are missing. After i provided the width, height, bufpos, relative... the popup still did not work as expected so i decided to comment it out.
This autocommand creates an annoyance - flickering line numbers on each mouse click. I decided to comment it out.
I believe i had to add a leader mapping.
Plugin
cmp-cmdline
was missing from derivation but it is configured in lua.The plugin wf.nvim was giving me errors on its next popups if the previous one did not end gracefully - errored keymapping or otherwise. I decided to use
which-key
instead, i also prefer it being more minimal and taking up less screen space.In
lualine.lua
i believeextenstions
is a typo, not sure where to check logs if the plugin loads correctly or not.Next are annoyances or problems of my own making but maybe worth mentioning since other users might encounter these issues
lua-language-server
andnil
managed to start and attach the pylsp, but i am still curious why lspconfig did not work, since that is the plugin most popular for configuring the lsp, and wondering why you decided not to use it?current_line_blame
in gitsigns.lua should be on.Thoughts
I believe this nix derivation is brilliant, however the configuration could be a bit less opinionated and more minimal, i think. Users would benefit from a minimal & barebones configuration, so their base is stable, error-free and modular. Stuff like 4 different git plugins, 2 statusbar plugins and opinionated snippets maybe belong in a secondary personal repo which you link to in your readme, or into a readme section where you demonstrate and recommend to install those plugins. In the end i know we are free to delete the entire config and make our own from scratch, however most users might just move on after encountering the first annoyance. Anyway, thanks for your work, i like it and will continue using it :+1: