{ pkgs, lib, config, nixosConfig, ... }:
let inherit (builtins) readFile; in
{
-programs.vim = {
- enable = true;
- extraConfig =
- readFile vim/init.vim
- #+ readFile home/vim/syntastic.vim
- #+ readFile home/vim/coc.vim
- + readFile vim/ale.vim
+ programs.vim = {
+ enable = lib.mkDefault true;
+ 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 <nixpkgs> {}).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
- ];
-} // lib.optionalAttrs (!nixosConfig.services.xserver.enable) {
- packageConfigurable =
- pkgs.vim_configurable.override {
- config.vim.gui = "none";
- };
-};
+ # Plugin list:
+ # nix-instantiate -E --eval 'builtins.attrNames (import <nixpkgs> {}).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
+ ];
+ } /* // lib.optionalAttrs (!nixosConfig.services.xserver.enable) {
+ packageConfigurable =
+ # This has the drawback of recompiling/sending vim
+ pkgs.vim-full.override {
+ features = "normal";
+ config.vim.gui = "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
- ];
-};
+ 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
+ ];
+ };
}