{ pkgs, lib, config, ... }: let inherit (builtins) readFile; in { config = { programs.vim = { extraConfig = readFile vim/init.vim #+ readFile home/vim/syntastic.vim #+ readFile home/vim/coc.vim + readFile vim/ale.vim ; # Plugin list: # nix-instantiate -E --eval 'builtins.attrNames (import {}).vimPlugins' plugins = [ #pkgs.vimPlugins.vim-lsc pkgs.vimPlugins.gitgutter #pkgs.vimPlugins.nvim-yarp #pkgs.vimPlugins.deoplete-nvim #pkgs.vimPlugins.deoplete-lsp #pkgs.vimPlugins.LanguageClient-neovim #pkgs.vimPlugins.fzf-vim #pkgs.vimPlugins.echodoc pkgs.vimPlugins.ale #pkgs.vimPlugins.indentLine #pkgs.vimPlugins.vim-indent-guides #pkgs.vimPlugins.coc-nvim #pkgs.vimPlugins.coc-diagnostic #pkgs.vimPlugins.coc-json #pkgs.vimPlugins.coc-lists pkgs.vimPlugins.easy-align pkgs.vimPlugins.hoogle pkgs.vimPlugins.Recover-vim #pkgs.vimPlugins.syntastic #pkgs.vimPlugins.The_NERD_tree pkgs.vimPlugins.vim-dirvish pkgs.vimPlugins.vim-buffergator pkgs.vimPlugins.vim-markdown pkgs.vimPlugins.vimproc #pkgs.vimPlugins.fugitive pkgs.vimPlugins.vim-ghcid-quickfix ]; packageConfigurable = pkgs.vim_configurable.override { config.vim.gui = if config.host.desktop then "gtk3" else "none"; }; }; programs.neovim = { extraConfig = readFile vim/init.vim + readFile vim/ale.vim; plugins = [ #pkgs.vimPlugins.vim-lsc pkgs.vimPlugins.gitgutter #pkgs.vimPlugins.nvim-yarp #pkgs.vimPlugins.deoplete-nvim #pkgs.vimPlugins.deoplete-lsp #pkgs.vimPlugins.LanguageClient-neovim #pkgs.vimPlugins.fzf-vim #pkgs.vimPlugins.echodoc pkgs.vimPlugins.ale #pkgs.vimPlugins.indentLine #pkgs.vimPlugins.vim-indent-guides #pkgs.vimPlugins.coc-nvim #pkgs.vimPlugins.coc-diagnostic #pkgs.vimPlugins.coc-json #pkgs.vimPlugins.coc-lists pkgs.vimPlugins.easy-align pkgs.vimPlugins.hoogle pkgs.vimPlugins.Recover-vim #pkgs.vimPlugins.syntastic #pkgs.vimPlugins.The_NERD_tree pkgs.vimPlugins.vim-dirvish pkgs.vimPlugins.vim-buffergator pkgs.vimPlugins.vim-markdown pkgs.vimPlugins.vimproc #pkgs.vimPlugins.fugitive ]; }; } /* // lib.optionalAttrs (!config.useGlobalPkgs) { nixpkgs.config.vim.gui = if config.host.desktop then "gtk3" else ""; }*/; }