diff --git a/home/programs/terminal/editors/default.nix b/home/programs/terminal/editors/default.nix index 48dfee4..eef3419 100644 --- a/home/programs/terminal/editors/default.nix +++ b/home/programs/terminal/editors/default.nix @@ -1,6 +1,6 @@ _: { imports = [ ./neovim + ./helix ]; } - diff --git a/home/programs/terminal/editors/helix/default.nix b/home/programs/terminal/editors/helix/default.nix new file mode 100644 index 0000000..86b77dd --- /dev/null +++ b/home/programs/terminal/editors/helix/default.nix @@ -0,0 +1,42 @@ +{pkgs, ...}: { + programs.helix = { + enable = true; + + settings = { + theme = "tokyonight"; + editor = { + line-number = "relative"; + lsp.display-messages = true; + }; + }; + + languages = { + language = [ + { + name = "python"; + scope = "source.python"; + injection-regex = "python"; + file-types = ["py" "pyi" "py3" "pyw" ".pythonstartup" ".pythonrc"]; + shebangs = ["python"]; + roots = ["." "pyproject.toml" "pyrightconfig.json"]; + comment-token = "#"; + language-servers = ["basedpyright" "ruff"]; + indent = { + tab-width = 4; + unit = " "; + }; + auto-format = true; + } + ]; + language-server = { + ruff = { + command = "ruff-lsp"; + }; + basedpyright = { + command = "basedpyright-langserver"; + args = ["--stdio"]; + }; + }; + }; + }; +}