]> Git — Sourcephile - julm/julm-nix.git/blob - homes/softwares/vim.nix
xorg: add xkill
[julm/julm-nix.git] / homes / softwares / vim.nix
1 { pkgs, lib, config, options, ... }:
2 let inherit (builtins) readFile; in
3 {
4 config = {
5 programs.vim = {
6 extraConfig =
7 readFile vim/vimrc
8 #+ readFile home/vim/syntastic.vim
9 #+ readFile home/vim/coc.vim
10 + readFile vim/ale.vim
11 ;
12 # Plugin list:
13 # nix-instantiate -E --eval 'builtins.attrNames (import <nixpkgs> {}).vimPlugins'
14 plugins = [
15 #pkgs.vimPlugins.vim-lsc
16 pkgs.vimPlugins.gitgutter
17 #pkgs.vimPlugins.nvim-yarp
18 #pkgs.vimPlugins.deoplete-nvim
19 #pkgs.vimPlugins.deoplete-lsp
20 #pkgs.vimPlugins.LanguageClient-neovim
21 #pkgs.vimPlugins.fzf-vim
22 #pkgs.vimPlugins.echodoc
23 pkgs.vimPlugins.ale
24 #pkgs.vimPlugins.indentLine
25 #pkgs.vimPlugins.vim-indent-guides
26 #pkgs.vimPlugins.coc-nvim
27 #pkgs.vimPlugins.coc-diagnostic
28 #pkgs.vimPlugins.coc-json
29 #pkgs.vimPlugins.coc-lists
30 pkgs.vimPlugins.easy-align
31 pkgs.vimPlugins.hoogle
32 pkgs.vimPlugins.Recover-vim
33 #pkgs.vimPlugins.syntastic
34 #pkgs.vimPlugins.The_NERD_tree
35 pkgs.vimPlugins.vim-dirvish
36 pkgs.vimPlugins.vim-buffergator
37 pkgs.vimPlugins.vim-markdown
38 pkgs.vimPlugins.vimproc
39 #pkgs.vimPlugins.fugitive
40 ];
41 };
42 programs.neovim = {
43 extraConfig =
44 readFile neovim/init.vim +
45 readFile vim/ale.vim;
46 plugins = [
47 #pkgs.vimPlugins.vim-lsc
48 pkgs.vimPlugins.gitgutter
49 #pkgs.vimPlugins.nvim-yarp
50 #pkgs.vimPlugins.deoplete-nvim
51 #pkgs.vimPlugins.deoplete-lsp
52 #pkgs.vimPlugins.LanguageClient-neovim
53 #pkgs.vimPlugins.fzf-vim
54 #pkgs.vimPlugins.echodoc
55 pkgs.vimPlugins.ale
56 #pkgs.vimPlugins.indentLine
57 #pkgs.vimPlugins.vim-indent-guides
58 #pkgs.vimPlugins.coc-nvim
59 #pkgs.vimPlugins.coc-diagnostic
60 #pkgs.vimPlugins.coc-json
61 #pkgs.vimPlugins.coc-lists
62 pkgs.vimPlugins.easy-align
63 pkgs.vimPlugins.hoogle
64 pkgs.vimPlugins.Recover-vim
65 #pkgs.vimPlugins.syntastic
66 #pkgs.vimPlugins.The_NERD_tree
67 pkgs.vimPlugins.vim-dirvish
68 pkgs.vimPlugins.vim-buffergator
69 pkgs.vimPlugins.vim-markdown
70 pkgs.vimPlugins.vimproc
71 #pkgs.vimPlugins.fugitive
72 ];
73 };
74 } // lib.optionalAttrs (options ? "nixpkgs") {
75 nixpkgs.config.vim.gui = if config.host.desktop then "gtk3" else "";
76 };
77 }