nix/home-manager/common/software/cli/nixvim.nix

82 lines
2.3 KiB
Nix
Raw Normal View History

2024-02-08 06:20:55 +01:00
{ inputs, config, lib, ... }:
2024-02-08 06:20:21 +01:00
let pkgs = "inputs.nixpkgs-unstable.pkgs"; in {
2024-02-08 03:17:11 +01:00
imports = [
inputs.nixvim.homeManagerModules.nixvim
];
programs.nixvim = {
enable = true;
2024-02-08 05:49:29 +01:00
viAlias = true;
vimAlias = true;
2024-02-08 03:17:11 +01:00
options = {
number = true;
shiftwidth = 2;
};
2024-02-08 03:42:16 +01:00
plugins = {
treesitter.enable = true;
2024-02-08 05:17:04 +01:00
lualine.enable = true;
2024-02-08 03:42:16 +01:00
luasnip.enable = true;
2024-02-08 04:04:30 +01:00
nix.enable = true;
nix-develop.enable = true;
bufferline.enable = true;
chadtree.enable = true;
2024-02-08 04:07:55 +01:00
which-key.enable = true;
2024-02-08 05:33:32 +01:00
neo-tree.enable = true;
2024-02-08 04:35:00 +01:00
gitsigns.enable = true;
toggleterm.enable = true;
2024-02-08 05:33:32 +01:00
rainbow-delimiters.enable = true;
2024-02-08 06:11:02 +01:00
startify.enable = true;
2024-02-08 06:06:13 +01:00
telescope = {
enable = true;
2024-02-08 06:11:19 +01:00
extensions = {
2024-02-08 06:06:13 +01:00
ui-select.enable = true;
frecency.enable = true;
};
};
2024-02-08 03:42:16 +01:00
lsp = {
enable = true;
servers = {
2024-02-08 03:44:30 +01:00
rust-analyzer = {
enable = true;
installCargo = true;
installRustc = true;
};
2024-02-08 04:04:30 +01:00
nixd.enable = true;
pylsp.enable = true;
html.enable = true;
cssls.enable = true;
bashls.enable = true;
2024-02-08 03:42:16 +01:00
};
};
nvim-cmp = {
enable = true;
autoEnableSources = true;
sources = [
{ name = "nvim_lsp"; }
{ name = "path"; }
{ name = "buffer"; }
];
};
};
2024-02-08 04:20:38 +01:00
2024-02-08 06:06:13 +01:00
# TODO: Add this to stylix configs
2024-02-08 04:20:38 +01:00
colorscheme = lib.mkForce "everforest";
2024-02-08 06:06:13 +01:00
2024-02-08 03:17:11 +01:00
colorschemes = {
2024-02-08 06:06:13 +01:00
tokyonight.enable = true;
gruvbox.enable = true;
oxocarbon.enable = true;
nord.enable = true;
catppuccin.enable = true;
base16.enable = true;
kanagawa.enable = true;
dracula.enable = true;
2024-02-08 04:18:12 +01:00
2024-02-08 03:17:11 +01:00
};
2024-02-08 03:24:24 +01:00
extraPlugins = with pkgs.vimPlugins; [
2024-02-08 03:17:11 +01:00
everforest
];
};
2024-02-08 06:19:32 +01:00
}