dotfiles.nix/home/programs/helix.nix
2024-12-07 06:25:17 -08:00

51 lines
1.2 KiB
Nix

{
inputs,
pkgs,
...
}: {
programs.helix = {
enable = true;
languages.language = [
{
name = "nix";
auto-format = true;
# language-servers = ["nixd-lsp"];
formatter = {command = "${pkgs.alejandra}/bin/alejandra";};
}
];
# languages.language-server.nixd-lsp.command = "${inputs.nixd.packages.${pkgs.system}.default}/bin/nixd";
settings.editor.line-number = "relative";
settings.keys = {
normal = {
space.w = ":w";
space.q = ":q";
/*
remap for colemak
*/
n = "move_line_down";
N = "keep_selections";
k = "search_next";
K = "search_prev";
# E <=> J (swap actions)
j = "move_next_word_end";
J = "move_next_long_word_end";
e = "move_line_up";
E = "join_selections";
# ILU loop
# I => L
i = "move_char_right";
I = "no_op";
# U => I (QWERTY position)
u = "insert_mode";
U = "insert_at_line_start";
# L => U (QWERTY position)
l = "undo";
L = "redo";
/*
end colemak remap
*/
};
};
};
}