mirror of
https://github.com/kmein/niveum
synced 2026-03-16 10:11:08 +01:00
100 lines
2.4 KiB
Nix
100 lines
2.4 KiB
Nix
{
|
|
neovim,
|
|
vimPlugins,
|
|
fetchFromGitHub,
|
|
vimUtils,
|
|
writeText,
|
|
stylixColors ? null,
|
|
colorscheme ? null,
|
|
lib,
|
|
...
|
|
}: (neovim.override {
|
|
configure = {
|
|
customRC = ''
|
|
source ${./shared.vim}
|
|
source ${./init.vim}
|
|
let g:snippet_directory = '${vimPlugins.friendly-snippets}'
|
|
luafile ${./init.lua}
|
|
'' + lib.optionalString (stylixColors != null) (with stylixColors.withHashtag; ''
|
|
luafile ${writeText "colors.lua" ''
|
|
require('base16-colorscheme').setup({
|
|
base00 = '${base00}', base01 = '${base01}', base02 = '${base02}', base03 = '${base03}',
|
|
base04 = '${base04}', base05 = '${base05}', base06 = '${base06}', base07 = '${base07}',
|
|
base08 = '${base08}', base09 = '${base09}', base0A = '${base0A}', base0B = '${base0B}',
|
|
base0C = '${base0C}', base0D = '${base0D}', base0E = '${base0E}', base0F = '${base0F}'
|
|
})
|
|
''}
|
|
'') + lib.optionalString (colorscheme != null) ''
|
|
colorscheme ${colorscheme}
|
|
'';
|
|
packages.nvim = with vimPlugins; {
|
|
start = [
|
|
base16-nvim
|
|
nvim-cmp
|
|
cmp-buffer
|
|
cmp-path
|
|
cmp-nvim-lsp
|
|
cmp-cmdline
|
|
luasnip
|
|
|
|
editorconfig-vim
|
|
|
|
copilot-vim
|
|
|
|
goyo
|
|
limelight-vim
|
|
vimPlugins.mdwa-nvim
|
|
vimPlugins.vim-ernest
|
|
|
|
fzf-vim
|
|
fzfWrapper
|
|
supertab
|
|
undotree
|
|
tabular
|
|
# vimwiki
|
|
vimPlugins.vim-colors-paramount
|
|
nvim-lspconfig
|
|
vim-commentary
|
|
vim-css-color
|
|
vim-eunuch
|
|
vimPlugins.vim-fetch
|
|
vim-fugitive
|
|
vim-gitgutter
|
|
vim-repeat
|
|
vim-sensible
|
|
vim-surround
|
|
(let version = "1.1.0"; pname = "vim-dim"; in vimUtils.buildVimPlugin {
|
|
pname = "vim-dim";
|
|
version = version;
|
|
src = fetchFromGitHub {
|
|
owner = "jeffkreeftmeijer";
|
|
repo = pname;
|
|
rev = version;
|
|
sha256 = "sha256-lyTZUgqUEEJRrzGo1FD8/t8KBioPrtB3MmGvPeEVI/g=";
|
|
};
|
|
})
|
|
];
|
|
opt = [
|
|
csv
|
|
dhall-vim
|
|
elm-vim
|
|
emmet-vim
|
|
vim-elixir
|
|
haskell-vim
|
|
vimPlugins.icalendar-vim
|
|
vimPlugins.jq-vim
|
|
rust-vim
|
|
typescript-vim
|
|
vim-javascript
|
|
vim-ledger
|
|
vim-nix
|
|
vimtex
|
|
vim-pandoc
|
|
vim-pandoc-syntax
|
|
vimPlugins.vim-256noir
|
|
vimPlugins.typst-vim
|
|
];
|
|
};
|
|
};
|
|
})
|