{ config, lib, pkgs, ... }: with lib; { config = { programs.neovim = lib.mkMerge [ { enable = true; plugins = with pkgs.vimPlugins; [ vim-nix { plugin = vim-commentary; runtime = { "after/ftplugin/c.vim".text = '' " plugin-specific config setlocal commentstring=//\ %s setlocal comments=:// ''; }; } ]; } { extraPython3Packages = ps: with ps; [ jedi pynvim ]; extraLuaPackages = ps: with ps; [ luacheck ]; } { extraPython3Packages = with pkgs.python3Packages; [ jedi pynvim ]; extraLuaPackages = with pkgs.lua51Packages; [ luacheck ]; } ]; nmt.script = '' ftplugin="home-files/.config/nvim/after/ftplugin/c.vim" assertFileExists "$ftplugin" ''; }; }