diff options
| author | triethyl <triethylammonium@pm.me> | 2025-09-02 10:48:21 -0400 |
|---|---|---|
| committer | triethyl <triethylammonium@pm.me> | 2025-09-02 10:48:21 -0400 |
| commit | 31c316d19cd974bb81a5d6de62142ff24db1c78e (patch) | |
| tree | cb941422c76cb8953830a8d58c8e14dca1a10319 /home-manager/features/cli/apps/helix.nix | |
| parent | 1c21018347aa277caba74e554cb8d1b1e7fc6bed (diff) | |
reorganized directory structure
Diffstat (limited to 'home-manager/features/cli/apps/helix.nix')
| -rw-r--r-- | home-manager/features/cli/apps/helix.nix | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/home-manager/features/cli/apps/helix.nix b/home-manager/features/cli/apps/helix.nix new file mode 100644 index 0000000..a267b23 --- /dev/null +++ b/home-manager/features/cli/apps/helix.nix @@ -0,0 +1,71 @@ +{ + config, + pkgs, + lib, + ... +}: let + cfg = config.features.cli.apps.helix; +in { + options.features.cli.apps.helix.enable = lib.mkEnableOption "helix"; + config = lib.mkIf cfg.enable { + home.packages = with pkgs; [ + wl-clipboard + ]; + programs.helix = { + enable = true; + extraPackages = with pkgs; [ + markdown-oxide + python312Packages.black + vscode-langservers-extracted + nil + ]; + settings = { + editor = { + color-modes = true; + true-color = true; + line-number = "relative"; + mouse = false; + lsp.display-messages = true; + statusline = { + left = ["file-name" "file-modification-indicator"]; + center = []; + right = []; + mode = { + normal = "NORMAL"; + insert = "INSERT"; + select = "SELECT"; + }; + }; + cursor-shape = { + normal = "block"; + insert = "bar"; + select = "underline"; + }; + soft-wrap = { + enable = true; + wrap-indicator = ""; + }; + }; + keys = { + normal = { + esc = ["collapse_selection" "keep_primary_selection"]; + space = { + v = "file_picker_in_current_buffer_directory"; + h = ":lsp-workspace-command"; + }; + }; + }; + }; + languages = { + language = [ + { + name = "nix"; + auto-format = true; + formatter.command = "${pkgs.alejandra}/bin/alejandra"; + language-servers = ["nil"]; + } + ]; + }; + }; + }; +} |
