2023-06-22 21:00:51 +02:00
|
|
|
{
|
|
|
|
|
neovim,
|
|
|
|
|
vimPlugins,
|
|
|
|
|
fetchFromGitHub,
|
|
|
|
|
vimUtils,
|
2024-12-13 13:42:39 +01:00
|
|
|
writeText,
|
|
|
|
|
stylixColors ? null,
|
|
|
|
|
colorscheme ? null,
|
|
|
|
|
lib,
|
2023-06-22 21:00:51 +02:00
|
|
|
...
|
2025-12-27 22:22:54 +01:00
|
|
|
}:
|
|
|
|
|
neovim.override {
|
2023-06-22 21:00:51 +02:00
|
|
|
configure = {
|
2025-12-27 08:04:08 +01:00
|
|
|
vimAlias = true;
|
|
|
|
|
viAlias = true;
|
2023-06-22 21:00:51 +02:00
|
|
|
customRC = ''
|
2025-12-25 14:06:43 +01:00
|
|
|
source ${./shared.vim}
|
|
|
|
|
source ${./init.vim}
|
2023-08-02 10:20:03 +02:00
|
|
|
let g:snippet_directory = '${vimPlugins.friendly-snippets}'
|
2025-12-25 14:06:43 +01:00
|
|
|
luafile ${./init.lua}
|
2025-12-27 22:22:54 +01:00
|
|
|
''
|
|
|
|
|
+ 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) ''
|
2024-12-13 13:42:39 +01:00
|
|
|
colorscheme ${colorscheme}
|
2023-06-22 21:00:51 +02:00
|
|
|
'';
|
|
|
|
|
packages.nvim = with vimPlugins; {
|
|
|
|
|
start = [
|
2024-12-13 13:42:39 +01:00
|
|
|
base16-nvim
|
2023-07-04 21:44:32 +02:00
|
|
|
nvim-cmp
|
|
|
|
|
cmp-buffer
|
|
|
|
|
cmp-path
|
|
|
|
|
cmp-nvim-lsp
|
|
|
|
|
cmp-cmdline
|
2023-07-09 16:32:57 +02:00
|
|
|
luasnip
|
2023-07-04 21:44:32 +02:00
|
|
|
|
2023-08-01 17:09:59 +02:00
|
|
|
editorconfig-vim
|
|
|
|
|
|
2025-07-21 18:54:30 +02:00
|
|
|
copilot-vim
|
|
|
|
|
|
2023-06-22 21:00:51 +02:00
|
|
|
fzf-vim
|
|
|
|
|
fzfWrapper
|
|
|
|
|
supertab
|
|
|
|
|
undotree
|
|
|
|
|
tabular
|
|
|
|
|
# vimwiki
|
2025-12-25 14:00:03 +01:00
|
|
|
vimPlugins.vim-colors-paramount
|
2023-06-22 21:00:51 +02:00
|
|
|
nvim-lspconfig
|
|
|
|
|
vim-commentary
|
|
|
|
|
vim-css-color
|
|
|
|
|
vim-eunuch
|
2025-12-25 14:00:03 +01:00
|
|
|
vimPlugins.vim-fetch
|
2023-06-22 21:00:51 +02:00
|
|
|
vim-fugitive
|
|
|
|
|
vim-gitgutter
|
|
|
|
|
vim-repeat
|
|
|
|
|
vim-sensible
|
|
|
|
|
vim-surround
|
2025-12-27 22:22:54 +01:00
|
|
|
(
|
|
|
|
|
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=";
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
)
|
2023-06-22 21:00:51 +02:00
|
|
|
];
|
|
|
|
|
opt = [
|
|
|
|
|
csv
|
2023-10-06 10:50:16 +02:00
|
|
|
dhall-vim
|
2023-06-22 21:00:51 +02:00
|
|
|
elm-vim
|
|
|
|
|
emmet-vim
|
2025-12-04 15:09:37 +01:00
|
|
|
vim-elixir
|
2023-06-22 21:00:51 +02:00
|
|
|
haskell-vim
|
2025-12-25 14:00:03 +01:00
|
|
|
vimPlugins.icalendar-vim
|
|
|
|
|
vimPlugins.jq-vim
|
2023-06-22 21:00:51 +02:00
|
|
|
rust-vim
|
|
|
|
|
typescript-vim
|
|
|
|
|
vim-javascript
|
|
|
|
|
vim-ledger
|
|
|
|
|
vim-nix
|
|
|
|
|
vimtex
|
|
|
|
|
vim-pandoc
|
|
|
|
|
vim-pandoc-syntax
|
2025-12-25 14:00:03 +01:00
|
|
|
vimPlugins.vim-256noir
|
|
|
|
|
vimPlugins.typst-vim
|
2023-06-22 21:00:51 +02:00
|
|
|
];
|
|
|
|
|
};
|
|
|
|
|
};
|
2025-12-27 19:38:50 +01:00
|
|
|
}
|