echasnovski / nvim

My custom NeoVim setup

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Neovim 0.9 NVIM_APPNAME and mini.session configuration

doctorfree opened this issue · comments

Hi, I am integrating this Neovim configuration into the Lazyman Neovim Configuration Manager. Lazyman leverages the new feature in Neovim 0.9 that supports Neovim configurations in locations specified by the environment variable NVIM_APPNAME. For example, this configuration is located in ~/.config/nvim-MiniVim/ when installed and initialized with the lazyman command.

Everything looks fine and your configuration is excellent. Thanks!

However, the mini.session configuration sets the session directory to ~/.config/nvim/misc/sessions during setup in lua/ec/configs/mini.lua.

This is a minor issue and may never cause a problem. But one of the beauties of having NVIM_APPNAME is we can explore multiple Neovim configurations, each isolated in its own folder and never touching the default ~/.config/nvim folder.

I am just letting you know, I do not expect any action or "fix" to comply with my nitpicking. I don't even have a suggested modification. Checking if NVIM_APPNAME is set and using that if $HOME/.config/$NVIM_APPNAME exists?

Mostly, thanks for an excellent configuration that helps me learn the mini.nvim universe.

Hello! Thanks for the positive feedback!

Very nice project you have there!

I'll see what I can do.

Couple of thoughts:

  • Incorporating this config along with others is not a trivial task due to using git submodules. Quick search on your repo suggests that you specifically git submodule update ... for it. Nice! Not sure how it will behave when I'll delete submodules, though.
  • It does have some things that are currently need manual intervention (like installing language servers, command line utilities, etc.), so can't provide full experience out of the box.
  • Please, don't use a name that suggests that it is a Neovim distribution along with LazyVim, AstroNvim, etc. I break things in this config all the time and I don't want users to have a bad impressions about 'mini.nvim' because of that. Besides, I use this for writing and alpha-testing new 'mini.nvim' modules, which are not stable at all.
    I'd ask you to indicate somehow that it is a personal config, not a distribution.
    I do have plans to make a Neovim distribution eventually, when 'mini.nvim' has all needed functionality implemented.

I've updated usage of hard-coded '~/.config/nvim' to vim.fn.stdpath('config') which seems even cleaner now (maybe even closer to being usable on Windows). So thanks for that :)

@doctorfree, I'd still ask you to change its description in Lazyman with a strong emphasis that it is a personal config not designed to be used as pre-configured distribution.

Quick turnaround! And a good solution.

I was aware yours is a personal config and not a distribution but it is the best implementation of mini.nvim I have found and wanted to include that for others to explore and for my own edification.

I will happily rename and/or clarify that this is a personal configuration and not designed as a preconfigured distribution. I'm glad I opened this issue so I can learn how best to incorporate your work. Got any suggestions for a name/folder other than MiniVim/nvim-MiniVim ? I will revise the README with a better description clarifying the nature of this config.

I'm impressed with mini.nvim. Good work!

I will happily rename and/or clarify that this is a personal configuration and not designed as a preconfigured distribution. I'm glad I opened this issue so I can learn how best to incorporate your work. Got any suggestions for a name/folder other than MiniVim/nvim-MiniVim ? I will revise the README with a better description clarifying the nature of this config.

I am honestly not sure what is the best course of action here.

In my mind currently the best approach might be to add separate category "Personal config" with bold note that they are not intended for public use but still might be interesting for others to explore. After that add this repo possibly with note that this is an example of how 'mini.nvim' can be used.

This might also be a good opportunity to include some popular Neovim figures there, like ThePrimeagean, TJ Devries, etc.

@doctorfree, thanks for the change, this looks better. If you don't mind, I have several suggestions:

  • I think naming Mini instead of MiniVim might be best here. This seems to align with your decisions for other personal configs to name them based on their distinctive feature. As mine is based on 'mini.nvim' (which is shortened by many to only "mini"), this seems more appropriate. (I've looked if this is a case of a straightforward "search and replace" PR, but with all these scripts I am not sure).
  • I prefer naming 'mini.nvim' a library, so "Uses the mini.nvim library" instead of "Uses the mini.nvim system" is more on point.
  • As a side note, the ...several "Personal" Neovim configurations seems to need more clarification. Something along the lines "These are used as personal Neovim configurations, so there are no guarantees made about stability or reverse compatibility. But they use some interesting config approaches so worth looking at.".

@echasnovski, good suggestions. I will get to this later today. Coincidentally, I had already decided to rename MiniVim to Mini. Great minds think alike!