flake/nixos/nvim/settings.nix

96 lines
2.6 KiB
Nix
Executable file

{ pkgs, ... }:
{
programs.nixvim = {
extraPackages = with pkgs; [ fd ];
enable = true;
viAlias = true;
vimAlias = true;
clipboard.register = [
"unnamed"
"unnamedplus"
];
performance = {
byteCompileLua = {
enable = true;
configs = true;
initLua = false;
nvimRuntime = true;
plugins = true;
};
};
# extraFiles = {
# "queries/nix/injections.scm".text = lib.mkForce ''
# (string_literal
# (string_fragment) @lua
# (#match? @lua ".*")
# )
# '';
# };
colorscheme = "catppuccin";
colorschemes.catppuccin = {
enable = true;
#lazyLoad.enable = true;
settings = {
transparent_background = false;
term_colors = true;
styles = {
conditionals = null;
};
custom_highlights = # lua
''
function(colors)
return {
Comment = { fg = "#f4b8e4", style = { "italic" } },
["@punctuation.comment"] = { fg = "#f4b8e4", style = { "italic" } },
["@variable"] = { fg = "#82eaf0" },
["@operator"] = { fg = "#EBA0AC" },
["@meta.block.paradox"] = { fg = "#EBA0AC" },
["@comment.shebang"] = { fg = "#ef9f76", style = { "italic", "bold" } },
["@punctuation.comment.shebang"] = { fg = "#ef9f76", style = { "italic", "bold" } },
["@string.special.shell"] = { fg = "#82e5f0" },
["@property.ts"] = { fg = "#32d5e7" },
}
end
'';
};
};
plugins = {
aerial.enable = true;
direnv.enable = true;
web-devicons.enable = true;
glow.enable = true;
gitblame.enable = true;
git-conflict.enable = true;
nix.enable = true;
nix-develop.enable = true;
which-key.enable = true;
neocord.enable = false;
lazydev.enable = true;
neoconf.enable = true;
colorizer = {
enable = true;
settings.user_default_options = {
names = false;
};
};
comment.enable = true;
dotnet.enable = true;
sqlite-lua.enable = true;
};
userCommands = {
ViewInit = {
desc = "Open the Neovim init.lua file";
command = "lua vim.cmd('view '.. InitPath)";
};
};
extraConfigLua = # lua
''
InitPath = debug.getinfo(1, "S").source:sub(2)
print("Neovim init file location: " .. InitPath)
'';
extraConfigVim = ''
set number " enable number lines
set relativenumber " enable relative number lines
'';
};
}