mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-06-15 09:35:12 -05:00
feat: dicking around with nixvim
This commit is contained in:
parent
a606af1ab7
commit
745211088c
1 changed files with 163 additions and 0 deletions
163
modules/nixos/programs/nixvim/default.nix
Executable file
163
modules/nixos/programs/nixvim/default.nix
Executable file
|
@ -0,0 +1,163 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
programs.nixvim = {
|
||||
enable = true;
|
||||
colorschemes.catppuccin = {
|
||||
enable = true;
|
||||
settings.flavour = "macchiato";
|
||||
};
|
||||
globals.mapleader = " ";
|
||||
keymaps = [
|
||||
{
|
||||
action = "<cmd>Neotree toggle<CR>";
|
||||
key = "<leader>e";
|
||||
mode = "n";
|
||||
options.silent = true;
|
||||
}
|
||||
];
|
||||
|
||||
plugins = {
|
||||
avante = {
|
||||
enable = true;
|
||||
settings = {
|
||||
claude = {
|
||||
model = "claude-3-5-sonnet-latest";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
trouble.enable = true;
|
||||
web-devicons.enable = true;
|
||||
conform-nvim = {
|
||||
enable = true;
|
||||
settings = {
|
||||
formatters_by_ft = {
|
||||
|
||||
css = [
|
||||
"prettierd"
|
||||
"prettier"
|
||||
];
|
||||
html = [
|
||||
"prettierd"
|
||||
"prettier"
|
||||
];
|
||||
javascript = [
|
||||
"prettierd"
|
||||
"prettier"
|
||||
];
|
||||
javascriptreact = [ "prettier" ];
|
||||
json = [ "prettier" ];
|
||||
markdown = [ "prettier" ];
|
||||
nix = [ "nixfmt" ];
|
||||
rust = [ "rustfmt" ];
|
||||
sh = [ "shfmt" ];
|
||||
typescript = [
|
||||
"prettierd"
|
||||
"prettier"
|
||||
];
|
||||
typescriptreact = [ "prettier" ];
|
||||
yaml = [
|
||||
"prettierd"
|
||||
"prettier"
|
||||
];
|
||||
};
|
||||
formatters = {
|
||||
asmfmt = {
|
||||
command = "asmfmt";
|
||||
stdin = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
settings.format_on_save = {
|
||||
lspFallback = true;
|
||||
timeoutMs = 2000;
|
||||
};
|
||||
};
|
||||
direnv = {
|
||||
enable = true;
|
||||
};
|
||||
treesitter = {
|
||||
enable = true;
|
||||
};
|
||||
lean.enable = true;
|
||||
nix.enable = true;
|
||||
markdown-preview.enable = true;
|
||||
zellij.enable = true;
|
||||
zellij-nav.enable = true;
|
||||
yazi.enable = true;
|
||||
gitsigns = {
|
||||
enable = true;
|
||||
settings = {
|
||||
current_line_blame = true;
|
||||
trouble = true;
|
||||
};
|
||||
};
|
||||
copilot-chat = {
|
||||
enable = true;
|
||||
};
|
||||
nvim-tree = {
|
||||
enable = true;
|
||||
openOnSetupFile = true;
|
||||
autoReloadOnWrite = true;
|
||||
};
|
||||
nix-develop.enable = true;
|
||||
lazygit.enable = true;
|
||||
haskell-scope-highlighting.enable = true;
|
||||
lsp = {
|
||||
enable = true;
|
||||
servers = {
|
||||
elmls.enable = true;
|
||||
hls = {
|
||||
enable = true;
|
||||
installGhc = true;
|
||||
};
|
||||
ghcide.enable = true;
|
||||
leanls.enable = true;
|
||||
markdown_oxide.enable = true;
|
||||
nixd.enable = true;
|
||||
nushell.enable = true;
|
||||
rls.enable = true;
|
||||
rust_analyzer = {
|
||||
enable = true;
|
||||
installCargo = true;
|
||||
installRustc = true;
|
||||
};
|
||||
yamlls.enable = true;
|
||||
java_language_server = {
|
||||
package = "java-language-server";
|
||||
cmd = [ "java-language-server" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
opts = {
|
||||
updatetime = 100;
|
||||
number = true;
|
||||
relativenumber = true;
|
||||
splitbelow = true;
|
||||
splitright = true;
|
||||
scrolloff = 4;
|
||||
|
||||
autoindent = true;
|
||||
clipboard = "unnamedplus";
|
||||
expandtab = true;
|
||||
shiftwidth = 2;
|
||||
smartindent = true;
|
||||
tabstop = 2;
|
||||
|
||||
ignorecase = true;
|
||||
incsearch = true;
|
||||
smartcase = true;
|
||||
wildmode = "list:longest";
|
||||
|
||||
swapfile = false;
|
||||
undofile = true;
|
||||
};
|
||||
clipboard.providers.wl-copy.enable = true;
|
||||
extraPlugins = builtins.attrValues {
|
||||
inherit (pkgs)
|
||||
|
||||
;
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue