Files
copnix/modules/home/helix/home-helix.ulu.nix
T
2026-08-27 16:45:54 +03:00

132 lines
3.0 KiB
Nix

{ ... }:
{
flake.homeModules.home-helix =
{ ... }:
{
programs.helix = {
enable = true;
defaultEditor = true;
settings = {
theme = "kemuri-copnix";
editor = {
line-number = "relative";
cursorline = true;
color-modes = true;
bufferline = "multiple";
scrolloff = 8;
rulers = [
80
100
];
text-width = 80;
true-color = true;
undercurl = true;
popup-border = "all";
shell = [
"nu"
"--no-config-file"
"-c"
];
idle-timeout = 50;
completion-timeout = 5;
completion-trigger-len = 1;
preview-completion-insert = true;
trim-trailing-whitespace = true;
trim-final-newlines = true;
end-of-line-diagnostics = "hint";
statusline = {
left = [
"mode"
"spinner"
"version-control"
"file-name"
"read-only-indicator"
"file-modification-indicator"
];
center = [ ];
right = [
"diagnostics"
"workspace-diagnostics"
"selections"
"register"
"position"
"position-percentage"
"file-type"
];
mode = {
normal = "NORMAL";
insert = "INSERT";
select = "SELECT";
};
};
lsp = {
display-messages = true;
display-progress-messages = true;
display-inlay-hints = true;
auto-signature-help = true;
};
cursor-shape = {
normal = "block";
insert = "bar";
select = "underline";
};
indent-guides = {
render = true;
character = "╎";
skip-levels = 1;
};
inline-diagnostics = {
cursor-line = "hint";
other-lines = "error";
};
soft-wrap = {
enable = true;
wrap-indicator = "↪ ";
};
auto-save = {
focus-lost = true;
after-delay = {
enable = false;
timeout = 3000;
};
};
file-picker = {
hidden = false;
git-ignore = true;
};
whitespace.characters = {
nbsp = "⍽";
tab = "→";
tabpad = "·";
};
};
};
ignores = [
"!.gitignore"
"!.envrc"
".direnv/"
".jj/"
"result"
"result-*"
"target/"
"node_modules/"
];
};
};
}