Skip Navigation
InitialsDiceBearhttps://github.com/dicebear/dicebearhttps://creativecommons.org/publicdomain/zero/1.0/„Initials” (https://github.com/dicebear/dicebear) by „DiceBear”, licensed under „CC0 1.0” (https://creativecommons.org/publicdomain/zero/1.0/)DI
Posts
1
Comments
3
Joined
2 yr. ago
Neovim @programming.dev
disrupted @lemmy.world

project-local init.lua

I need some advice how to handle project-specific plugin configuration for Neovim. My paid software gig involves work for several different client projects which are basically structured like this:

 undefined
        ~/work-clientA
      - repoA1
      - repoA2
    ~/work-clientB
      - repoB1
      - repoB2
    ~/work-clientC
    ...


  

I manage the different environments using direnv.

What I struggle with is overriding/extending the config for Neovim plugins for each environment.

let's say for example clientA uses a self-hosted GitLab instance which requires me to override the lazy.nvim config for some Git-related plugins. How could I achieve this?

I looked into exrc. afaict this would require duplicating any client-specific configuration for each new repository. Instead what I would like is something like ~/work-clientA/init.lua which would then be sourced automatically for each project (repo) inside work-clientA.