oxidizing
This commit is contained in:
parent
a46356a178
commit
a9eadc52f3
35 changed files with 726 additions and 1223 deletions
|
|
@ -1,191 +1,222 @@
|
|||
{
|
||||
pkgs,
|
||||
inputs,
|
||||
...
|
||||
}: {
|
||||
imports = [
|
||||
inputs.nvf.homeManagerModules.default
|
||||
];
|
||||
|
||||
programs.nvf = {
|
||||
{pkgs, ...}: {
|
||||
programs.helix = {
|
||||
enable = true;
|
||||
enableManpages = true;
|
||||
|
||||
settings.vim = {
|
||||
extraPackages = [pkgs.netcoredbg];
|
||||
settings = {
|
||||
theme = "catppuccin_mocha";
|
||||
|
||||
luaConfigRC.netcoredbg = ''
|
||||
local dap = require("dap")
|
||||
dap.adapters.coreclr = {
|
||||
type = "executable",
|
||||
command = "${pkgs.netcoredbg}/bin/netcoredbg",
|
||||
args = {"--interpreter=vscode"}
|
||||
}
|
||||
dap.configurations.cs = {
|
||||
{
|
||||
type = "coreclr",
|
||||
name = "Launch",
|
||||
request = "launch",
|
||||
program = function()
|
||||
return vim.fn.input("Path to dll: ", vim.fn.getcwd() .. "/bin/Debug/", "file")
|
||||
end,
|
||||
},
|
||||
}
|
||||
'';
|
||||
editor = {
|
||||
# options
|
||||
indent-guides.render = true;
|
||||
cursorline = true;
|
||||
color-modes = true;
|
||||
|
||||
theme = {
|
||||
enable = true;
|
||||
transparent = true;
|
||||
|
||||
name = "catppuccin";
|
||||
style = "mocha";
|
||||
};
|
||||
|
||||
lsp = {
|
||||
enable = true;
|
||||
null-ls.enable = false;
|
||||
|
||||
inlayHints.enable = true;
|
||||
formatOnSave = true;
|
||||
lspkind.enable = true;
|
||||
lspsaga.enable = true;
|
||||
trouble.enable = true;
|
||||
lightbulb.enable = false;
|
||||
};
|
||||
|
||||
debugger = {
|
||||
nvim-dap = {
|
||||
enable = true;
|
||||
ui.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
options = {
|
||||
tabstop = 2;
|
||||
expandtab = false;
|
||||
autoindent = true;
|
||||
shiftwidth = 2;
|
||||
};
|
||||
|
||||
clipboard = {
|
||||
enable = true;
|
||||
registers = "unnamedplus";
|
||||
providers = {
|
||||
wl-copy = {
|
||||
enable = true;
|
||||
package = pkgs.wl-clipboard;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
languages = {
|
||||
enableFormat = true;
|
||||
enableTreesitter = true;
|
||||
enableExtraDiagnostics = true;
|
||||
|
||||
nix.enable = true;
|
||||
markdown.enable = true;
|
||||
toml.enable = true;
|
||||
|
||||
nu.enable = true;
|
||||
bash.enable = true;
|
||||
typst.enable = true;
|
||||
|
||||
css.enable = true;
|
||||
html = {
|
||||
enable = true;
|
||||
format.enable = true;
|
||||
lsp.servers = [
|
||||
"emmet-ls"
|
||||
"superhtml"
|
||||
];
|
||||
indent = {
|
||||
tab-width = 2;
|
||||
unit = "\t";
|
||||
};
|
||||
|
||||
python.enable = true;
|
||||
|
||||
sql.enable = false;
|
||||
ts.enable = true;
|
||||
zig.enable = true;
|
||||
|
||||
csharp = {
|
||||
enable = true;
|
||||
lsp.servers = ["omnisharp"];
|
||||
lsp = {
|
||||
display-inlay-hints = true;
|
||||
display-messages = true;
|
||||
};
|
||||
|
||||
clang.enable = true;
|
||||
rust = {
|
||||
enable = true;
|
||||
extensions.crates-nvim.enable = true;
|
||||
cursor-shape = {
|
||||
insert = "bar";
|
||||
normal = "block";
|
||||
select = "underline";
|
||||
};
|
||||
};
|
||||
|
||||
visuals = {
|
||||
nvim-web-devicons.enable = true;
|
||||
nvim-cursorline.enable = true;
|
||||
cinnamon-nvim.enable = true;
|
||||
fidget-nvim.enable = true;
|
||||
clipboard-provider = "wayland";
|
||||
|
||||
highlight-undo.enable = true;
|
||||
indent-blankline.enable = true;
|
||||
};
|
||||
|
||||
statusline = {
|
||||
lualine = {
|
||||
enable = true;
|
||||
statusline = {
|
||||
left = ["mode" "spinner" "file-name" "file-modification-indicator"];
|
||||
right = ["diagnostics" "selections" "position" "file-encoding" "file-type"];
|
||||
center = ["workspace-diagnostics"];
|
||||
};
|
||||
};
|
||||
|
||||
autopairs.nvim-autopairs.enable = true;
|
||||
auto-pairs = true;
|
||||
|
||||
autocomplete = {
|
||||
nvim-cmp.enable = true;
|
||||
blink-cmp.enable = false;
|
||||
};
|
||||
|
||||
snippets.luasnip.enable = true;
|
||||
|
||||
telescope.enable = true;
|
||||
|
||||
git = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
dashboard.alpha.enable = true;
|
||||
|
||||
notify.nvim-notify.enable = true;
|
||||
|
||||
projects.project-nvim.enable = true;
|
||||
|
||||
utility = {
|
||||
ccc.enable = true;
|
||||
diffview-nvim.enable = true;
|
||||
icon-picker.enable = true;
|
||||
surround.enable = true;
|
||||
|
||||
motion = {
|
||||
hop.enable = true;
|
||||
leap.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
comments.comment-nvim.enable = true;
|
||||
|
||||
ui = {
|
||||
noice.enable = true;
|
||||
colorizer.enable = true;
|
||||
illuminate.enable = true;
|
||||
|
||||
fastaction.enable = true;
|
||||
file-picker.hidden = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
xdg.desktopEntries.nvim-foot = {
|
||||
name = "Neovim (foot)";
|
||||
comment = "Edit text files with Neovim in foot terminal";
|
||||
icon = "nvim";
|
||||
exec = "foot -e nvim %F";
|
||||
categories = ["Utility" "TextEditor" "Development"];
|
||||
mimeType = ["text/plain" "text/x-makefile" "application/x-shellscript"];
|
||||
languages = {
|
||||
language-server = {
|
||||
nil = {
|
||||
command = "nil";
|
||||
config.nil.formatting.command = ["nixfmt"];
|
||||
};
|
||||
marksman = {command = "marksman";};
|
||||
taplo = {
|
||||
command = "taplo";
|
||||
args = ["lsp" "stdio"];
|
||||
};
|
||||
bash-ls = {
|
||||
command = "bash-language-server";
|
||||
args = ["start"];
|
||||
};
|
||||
tinymist = {command = "tinymist";}; # typst
|
||||
vscode-css = {
|
||||
command = "vscode-css-language-server";
|
||||
args = ["--stdio"];
|
||||
};
|
||||
vscode-html = {
|
||||
command = "vscode-html-language-server";
|
||||
args = ["--stdio"];
|
||||
};
|
||||
emmet-ls = {
|
||||
command = "emmet-ls";
|
||||
args = ["--stdio"];
|
||||
};
|
||||
pyright = {
|
||||
command = "pyright-langserver";
|
||||
args = ["--stdio"];
|
||||
};
|
||||
ts-ls = {
|
||||
command = "typescript-language-server";
|
||||
args = ["--stdio"];
|
||||
};
|
||||
zls = {command = "zls";};
|
||||
omnisharp = {
|
||||
command = "OmniSharp";
|
||||
args = ["--languageserver"];
|
||||
};
|
||||
clangd = {command = "clangd";};
|
||||
rust-analyzer = {
|
||||
command = "rust-analyzer";
|
||||
config.rust-analyzer = {
|
||||
check.command = "clippy";
|
||||
cargo.allFeatures = true;
|
||||
};
|
||||
};
|
||||
nu = {
|
||||
command = "nu";
|
||||
args = ["--lsp"];
|
||||
};
|
||||
};
|
||||
|
||||
language = [
|
||||
{
|
||||
name = "nix";
|
||||
auto-format = true;
|
||||
language-servers = ["nil"];
|
||||
formatter.command = "nixfmt";
|
||||
}
|
||||
{
|
||||
name = "markdown";
|
||||
auto-format = true;
|
||||
language-servers = ["marksman"];
|
||||
}
|
||||
{
|
||||
name = "toml";
|
||||
auto-format = true;
|
||||
language-servers = ["taplo"];
|
||||
}
|
||||
{
|
||||
name = "nu";
|
||||
language-servers = ["nu"];
|
||||
}
|
||||
{
|
||||
name = "bash";
|
||||
auto-format = true;
|
||||
language-servers = ["bash-ls"];
|
||||
}
|
||||
{
|
||||
name = "typst";
|
||||
auto-format = true;
|
||||
language-servers = ["tinymist"];
|
||||
}
|
||||
{
|
||||
name = "css";
|
||||
auto-format = true;
|
||||
language-servers = ["vscode-css"];
|
||||
}
|
||||
{
|
||||
name = "html";
|
||||
auto-format = true;
|
||||
language-servers = ["vscode-html" "emmet-ls"];
|
||||
}
|
||||
{
|
||||
name = "python";
|
||||
auto-format = true;
|
||||
language-servers = ["pyright"];
|
||||
}
|
||||
{
|
||||
name = "typescript";
|
||||
auto-format = true;
|
||||
language-servers = ["ts-ls"];
|
||||
}
|
||||
{
|
||||
name = "tsx";
|
||||
auto-format = true;
|
||||
language-servers = ["ts-ls"];
|
||||
}
|
||||
{
|
||||
name = "zig";
|
||||
auto-format = true;
|
||||
language-servers = ["zls"];
|
||||
}
|
||||
{
|
||||
name = "c-sharp";
|
||||
auto-format = true;
|
||||
language-servers = ["omnisharp"];
|
||||
debugger = {
|
||||
name = "netcoredbg";
|
||||
transport = "tcp";
|
||||
command = "netcoredbg";
|
||||
port-arg = "--server={port}";
|
||||
templates = [
|
||||
{
|
||||
name = "launch";
|
||||
request = "launch";
|
||||
completion = [
|
||||
{
|
||||
name = "DLL path";
|
||||
completion = "filename";
|
||||
default = "bin/Debug/net8.0/App.dll";
|
||||
}
|
||||
];
|
||||
args = {
|
||||
type = "coreclr";
|
||||
request = "launch";
|
||||
program = "{0}";
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "attach";
|
||||
request = "attach";
|
||||
completion = [
|
||||
{
|
||||
name = "PID";
|
||||
completion = "pid";
|
||||
}
|
||||
];
|
||||
args = {
|
||||
type = "coreclr";
|
||||
request = "attach";
|
||||
processId = "{0}";
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
{
|
||||
name = "c";
|
||||
auto-format = true;
|
||||
language-servers = ["clangd"];
|
||||
}
|
||||
{
|
||||
name = "cpp";
|
||||
auto-format = true;
|
||||
language-servers = ["clangd"];
|
||||
}
|
||||
{
|
||||
name = "rust";
|
||||
auto-format = true;
|
||||
language-servers = ["rust-analyzer"];
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue