Let's copy Lotte's helix config <3

This commit is contained in:
Lillian Violet 2024-04-27 14:55:46 +02:00
parent dfea857bb6
commit 284f4199ed

View file

@ -1,14 +1,88 @@
{
inputs,
outputs,
lib,
config,
lib,
pkgs,
...
}: {
programs.helix = {
enable = true;
catppuccin.enable = true;
catppuccin.flavour = "macchiato";
defaultEditor = true;
settings = {
theme = "catppuccin_macchiato";
editor = {
line-number = "relative";
lsp.display-messages = true;
cursor-shape = {
insert = "bar";
normal = "block";
select = "underline";
};
cursorline = true;
bufferline = "always";
color-modes = true;
soft-wrap = {
enable = true;
max-wrap = 25;
wrap-indicator = "";
};
};
};
languages = {
language = [
{
name = "python";
language-id = "python";
auto-format = true;
file-types = ["py"];
language-servers = ["python-lsp"];
formatter = {
command = "ruff";
args = ["-q"];
};
}
{
name = "typst";
language-id = "typst";
auto-format = false;
file-types = ["typ"];
language-servers = ["typst-lsp"];
}
{
name = "rust";
language-id = "rust";
auto-format = true;
file-types = ["rs"];
roots = ["Cargo.lock"];
language-servers = ["rust-analyzer"];
}
{
name = "nix";
language-id = "nix";
auto-format = true;
file-types = ["nix"];
roots = ["flake.lock" "flake.nix"];
language-servers = ["nil"];
formatter = {
command = "nix";
args = ["fmt"];
};
}
];
language-server = {
python-lsp = {
command = "pylsp";
};
typst-lsp = {
command = "typst-lsp";
};
rust-analyzer = {
command = "rust-analyzer";
};
nil = {
command = "nil";
};
};
};
};
}