2018-10-31 19:52:39 +01:00
|
|
|
{ pkgs,
|
|
|
|
...
|
|
|
|
}:
|
|
|
|
|
|
|
|
let
|
2018-12-17 13:10:06 +01:00
|
|
|
unstablepkgs = import <channels-nixos-unstable> {};
|
2018-10-31 19:52:39 +01:00
|
|
|
|
|
|
|
in {
|
|
|
|
home.sessionVariables = {
|
|
|
|
EDITOR = "nvim";
|
|
|
|
};
|
|
|
|
|
|
|
|
nixpkgs.config = {
|
|
|
|
pidgin = {
|
|
|
|
openssl = true;
|
|
|
|
gnutls = true;
|
|
|
|
};
|
|
|
|
|
|
|
|
packageOverrides = pkgs: with pkgs; {
|
|
|
|
neovim = unstablepkgs.neovim;
|
|
|
|
vimPlugins = unstablepkgs.vimPlugins;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
programs.neovim = {
|
|
|
|
enable = true;
|
|
|
|
|
|
|
|
extraPythonPackages = (ps: with ps; [ ]);
|
|
|
|
extraPython3Packages = (ps: with ps; [ ]);
|
|
|
|
|
|
|
|
configure = {
|
|
|
|
customRC = builtins.readFile ./neovim/vimrc;
|
|
|
|
vam = {
|
|
|
|
knownPlugins = with pkgs; vimPlugins // {
|
|
|
|
delimitMate = vimUtils.buildVimPlugin {
|
|
|
|
name = "delimitMate-vim";
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "Raimondi";
|
|
|
|
repo = "delimitMate";
|
|
|
|
rev = "728b57a6564c1d2bdfb9b9e0f2f8c5ba3d7e0c5c";
|
|
|
|
sha256 = "0fskm9gz81dk8arcidrm71mv72a7isng1clssqkqn5wnygbiimsn";
|
|
|
|
};
|
|
|
|
buildInputs = [ zip vim ];
|
|
|
|
};
|
|
|
|
|
|
|
|
yaml-folds = vimUtils.buildVimPlugin {
|
|
|
|
name = "vim-yaml-folds";
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "pedrohdz";
|
|
|
|
repo = "vim-yaml-folds";
|
|
|
|
rev = "0672d9a3b685b51b4c49d8716c2ad4e27cfa5abd";
|
|
|
|
sha256 = "0yp2jgaqiria79lh75fkrs77rw7nk518bq63w9bvyy814i7s4scn";
|
|
|
|
};
|
|
|
|
buildInputs = [ zip vim ];
|
|
|
|
};
|
|
|
|
|
2018-12-17 13:14:22 +01:00
|
|
|
vim-yaml = vimUtils.buildVimPlugin {
|
|
|
|
name = "vim-yaml";
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "stephpy";
|
|
|
|
repo = "vim-yaml";
|
|
|
|
rev = "e97e063b16eba4e593d620676a0a15fa98613979";
|
|
|
|
sha256 = "0vqahbrnr43lxanpziyrmzaqqb3cmyny8ry1xvmy2xyd1larzfrk";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
|
2018-10-31 19:52:39 +01:00
|
|
|
vim-markdown-toc = vimUtils.buildVimPlugin {
|
|
|
|
name = "vim-markdown-toc";
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "mzlogin";
|
|
|
|
repo = "vim-markdown-toc";
|
|
|
|
rev = "a6e227023f405a7c39590a8aaf0d54dde5614a2e";
|
|
|
|
sha256 = "1vpsnjzc7hvrkp6mq68myxl3k1x363iif58rrd17njcsa4jh1zwy";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
vim-perl = vimUtils.buildVimPlugin {
|
|
|
|
name = "vim-perl";
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "vim-perl";
|
|
|
|
repo = "vim-perl";
|
|
|
|
rev = "21d0a0d795336acf8a9306da35f379c32cfc5e08";
|
|
|
|
sha256 = "0f2sa0v3djd89k16n4saji9n7grziyhkljq75dskcbv8r19m8i1j";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
git-blame = vimUtils.buildVimPlugin {
|
|
|
|
name = "git-blame";
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
"owner" = "zivyangll";
|
|
|
|
"repo" = "git-blame.vim";
|
|
|
|
"rev" = "a5b666840eead1b1ea1c351038da6ce026716bb6";
|
|
|
|
"sha256" = "181siphb87yzln9433159ssa6vmm1h2dd0kqhlx7bgsi51gng4rv";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
pluginDictionaries = let
|
|
|
|
default = [
|
|
|
|
"delimitMate"
|
|
|
|
"vim-airline"
|
2018-12-17 13:14:22 +01:00
|
|
|
"vim-airline-themes"
|
2018-10-31 19:52:39 +01:00
|
|
|
"ctrlp"
|
|
|
|
"vim-css-color"
|
|
|
|
"rainbow_parentheses"
|
|
|
|
"vim-colorschemes"
|
|
|
|
"vim-colorstepper"
|
|
|
|
"vim-signify"
|
|
|
|
"fugitive"
|
|
|
|
"ctrlp"
|
|
|
|
"vim-indent-guides"
|
|
|
|
"UltiSnips"
|
|
|
|
"fzfWrapper"
|
|
|
|
|
|
|
|
"ncm2"
|
|
|
|
"ncm2-bufword"
|
|
|
|
"ncm2-path"
|
|
|
|
"ncm2-tmux"
|
|
|
|
"ncm2-ultisnips"
|
|
|
|
"nvim-yarp"
|
|
|
|
|
|
|
|
"LanguageClient-neovim"
|
|
|
|
|
|
|
|
"Improved-AnsiEsc"
|
|
|
|
"tabular"
|
|
|
|
"git-blame"
|
|
|
|
|
|
|
|
# Nix
|
|
|
|
"vim-addon-nix"
|
|
|
|
"vim-addon-vim2nix"
|
|
|
|
|
|
|
|
# LaTeX
|
|
|
|
"vim-latex-live-preview"
|
|
|
|
"vimtex"
|
|
|
|
|
|
|
|
# YAML
|
|
|
|
"yaml-folds"
|
2018-12-17 13:14:22 +01:00
|
|
|
"vim-yaml"
|
2018-10-31 19:52:39 +01:00
|
|
|
|
|
|
|
# Perl
|
|
|
|
# "vim-perl"
|
|
|
|
|
|
|
|
|
|
|
|
# markdown
|
|
|
|
"vim-markdown"
|
|
|
|
"vim-markdown-toc"
|
|
|
|
|
|
|
|
# misc syntax support
|
|
|
|
"vim-bazel"
|
|
|
|
];
|
|
|
|
in [
|
|
|
|
{ names = default; }
|
|
|
|
{ names = default ++ [
|
|
|
|
];
|
|
|
|
filename_regex = ".*\.nix\$";
|
|
|
|
}
|
|
|
|
{ names = default ++ [
|
|
|
|
];
|
|
|
|
filename_regex = ".*\.tex\$";
|
|
|
|
}
|
|
|
|
];
|
|
|
|
};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|