From 924986f1c1af7113d44a566c47d1a20bb3b61dae Mon Sep 17 00:00:00 2001 From: Filippo Berto Date: Tue, 12 Dec 2023 00:03:01 +0100 Subject: [PATCH] Helix: simplified config --- modules/hm/helix.nix | 219 +++++++++++++++++++++---------------------- 1 file changed, 108 insertions(+), 111 deletions(-) diff --git a/modules/hm/helix.nix b/modules/hm/helix.nix index 6043b75..1bf40c3 100644 --- a/modules/hm/helix.nix +++ b/modules/hm/helix.nix @@ -1,124 +1,121 @@ { pkgs, ... }: { home = { sessionVariables = { EDITOR = "hx"; VISUAL = "hx"; }; + shellAliases = { x = "hx"; }; packages = builtins.attrValues { inherit (pkgs) nil; # Nix language server # inherit desktopItem; }; }; - programs = { - bash.shellAliases = { x = "hx"; }; - zsh.shellAliases = { x = "hx"; }; - helix = { - enable = true; - package = pkgs.unstable_pkgs.helix; - languages.language = [{ - name = "nix"; - auto-format = true; - }]; - languages.language-server = { - nil.config.nil = { - formatting.command = [ "nixpkgs-fmt" ]; - autoEvalInputs = true; - }; - texlab.config.texlab = { - formatterLineLength = 0; - bibtexFormatter = "latexindent"; - latexindent.modifyLineBreaks = false; - # chktex.onOpenAndSave = true; - chktex.onEdit = true; - }; - yaml-language-server.config.yaml = { - keyOrdering = false; - schemas = { - kubernetes = "*.yaml"; - "http://json.schemastore.org/github-workflow" = ".github/workflows/*"; - "http://json.schemastore.org/github-action" = ".github/action.{yml,yaml}"; - "http://json.schemastore.org/ansible-stable-2.9" = "roles/tasks/*.{yml,yaml}"; - "http://json.schemastore.org/prettierrc" = ".prettierrc.{yml,yaml}"; - "http://json.schemastore.org/kustomization" = "kustomization.{yml,yaml}"; - "http://json.schemastore.org/ansible-playbook" = "*play*.{yml,yaml}"; - "http://json.schemastore.org/chart" = "Chart.{yml,yaml}"; - "https://json.schemastore.org/dependabot-v2" = ".github/dependabot.{yml,yaml}"; - "https://gitlab.com/gitlab-org/gitlab/-/raw/master/app/assets/javascripts/editor/schema/ci.json" = "*gitlab-ci*.{yml,yaml}"; - "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.1/schema.json" = "*api*.{yml,yaml}"; - "https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json" = "*docker-compose*.{yml,yaml}"; - "https://raw.githubusercontent.com/argoproj/argo-workflows/master/api/jsonschema/schema.json" = "*flow*.{yml,yaml}"; - }; + programs.helix = { + enable = true; + package = pkgs.unstable_pkgs.helix; + languages.language = [{ + name = "nix"; + auto-format = true; + }]; + languages.language-server = { + nil.config.nil = { + formatting.command = [ "nixpkgs-fmt" ]; + autoEvalInputs = true; + }; + texlab.config.texlab = { + formatterLineLength = 0; + bibtexFormatter = "latexindent"; + latexindent.modifyLineBreaks = false; + # chktex.onOpenAndSave = true; + chktex.onEdit = true; + }; + yaml-language-server.config.yaml = { + keyOrdering = false; + schemas = { + kubernetes = "*.yaml"; + "http://json.schemastore.org/github-workflow" = ".github/workflows/*"; + "http://json.schemastore.org/github-action" = ".github/action.{yml,yaml}"; + "http://json.schemastore.org/ansible-stable-2.9" = "roles/tasks/*.{yml,yaml}"; + "http://json.schemastore.org/prettierrc" = ".prettierrc.{yml,yaml}"; + "http://json.schemastore.org/kustomization" = "kustomization.{yml,yaml}"; + "http://json.schemastore.org/ansible-playbook" = "*play*.{yml,yaml}"; + "http://json.schemastore.org/chart" = "Chart.{yml,yaml}"; + "https://json.schemastore.org/dependabot-v2" = ".github/dependabot.{yml,yaml}"; + "https://gitlab.com/gitlab-org/gitlab/-/raw/master/app/assets/javascripts/editor/schema/ci.json" = "*gitlab-ci*.{yml,yaml}"; + "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/main/schemas/v3.1/schema.json" = "*api*.{yml,yaml}"; + "https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json" = "*docker-compose*.{yml,yaml}"; + "https://raw.githubusercontent.com/argoproj/argo-workflows/master/api/jsonschema/schema.json" = "*flow*.{yml,yaml}"; }; }; - settings = { - theme = "nightfox"; - editor = { - lsp.display-messages = true; - lsp.display-inlay-hints = true; - scrolloff = 5; - soft-wrap.enable = true; - true-color = true; - }; - keys.normal = { - "C-A-l" = ":format"; - "A-r" = ":reload"; - "C-A-r" = ":reload-all"; - }; - }; - themes = - let - transparent = "none"; - gray = "#665c54"; - dark-gray = "#3c3836"; - white = "#fbf1c7"; - black = "#282828"; - red = "#fb4934"; - green = "#b8bb26"; - yellow = "#fabd2f"; - orange = "#fe8019"; - blue = "#83a598"; - magenta = "#d3869b"; - cyan = "#8ec07c"; - in - { - base16 = { - "ui.menu" = transparent; - "ui.menu.selected" = { modifiers = [ "reversed" ]; }; - "ui.linenr" = { fg = gray; bg = dark-gray; }; - "ui.popup" = { modifiers = [ "reversed" ]; }; - "ui.linenr.selected" = { fg = white; bg = black; modifiers = [ "bold" ]; }; - "ui.selection" = { fg = black; bg = blue; }; - "ui.selection.primary" = { modifiers = [ "reversed" ]; }; - "comment" = { fg = gray; }; - "ui.statusline" = { fg = white; bg = dark-gray; }; - "ui.statusline.inactive" = { fg = dark-gray; bg = white; }; - "ui.help" = { fg = dark-gray; bg = white; }; - "ui.cursor" = { modifiers = [ "reversed" ]; }; - "variable" = red; - "variable.builtin" = orange; - "constant.numeric" = orange; - "constant" = orange; - "attributes" = yellow; - "type" = yellow; - "ui.cursor.match" = { fg = yellow; modifiers = [ "underlined" ]; }; - "string" = green; - "variable.other.member" = red; - "constant.character.escape" = cyan; - "function" = blue; - "constructor" = blue; - "special" = blue; - "keyword" = magenta; - "label" = magenta; - "namespace" = blue; - "diff.plus" = green; - "diff.delta" = yellow; - "diff.minus" = red; - "diagnostic" = { modifiers = [ "underlined" ]; }; - "ui.gutter" = { bg = black; }; - "info" = blue; - "hint" = dark-gray; - "debug" = dark-gray; - "warning" = yellow; - "error" = red; - }; - }; }; + settings = { + theme = "nightfox"; + editor = { + lsp.display-messages = true; + lsp.display-inlay-hints = true; + scrolloff = 5; + soft-wrap.enable = true; + true-color = true; + }; + keys.normal = { + "C-A-l" = ":format"; + "A-r" = ":reload"; + "C-A-r" = ":reload-all"; + }; + }; + themes = + let + transparent = "none"; + gray = "#665c54"; + dark-gray = "#3c3836"; + white = "#fbf1c7"; + black = "#282828"; + red = "#fb4934"; + green = "#b8bb26"; + yellow = "#fabd2f"; + orange = "#fe8019"; + blue = "#83a598"; + magenta = "#d3869b"; + cyan = "#8ec07c"; + in + { + base16 = { + "ui.menu" = transparent; + "ui.menu.selected" = { modifiers = [ "reversed" ]; }; + "ui.linenr" = { fg = gray; bg = dark-gray; }; + "ui.popup" = { modifiers = [ "reversed" ]; }; + "ui.linenr.selected" = { fg = white; bg = black; modifiers = [ "bold" ]; }; + "ui.selection" = { fg = black; bg = blue; }; + "ui.selection.primary" = { modifiers = [ "reversed" ]; }; + "comment" = { fg = gray; }; + "ui.statusline" = { fg = white; bg = dark-gray; }; + "ui.statusline.inactive" = { fg = dark-gray; bg = white; }; + "ui.help" = { fg = dark-gray; bg = white; }; + "ui.cursor" = { modifiers = [ "reversed" ]; }; + "variable" = red; + "variable.builtin" = orange; + "constant.numeric" = orange; + "constant" = orange; + "attributes" = yellow; + "type" = yellow; + "ui.cursor.match" = { fg = yellow; modifiers = [ "underlined" ]; }; + "string" = green; + "variable.other.member" = red; + "constant.character.escape" = cyan; + "function" = blue; + "constructor" = blue; + "special" = blue; + "keyword" = magenta; + "label" = magenta; + "namespace" = blue; + "diff.plus" = green; + "diff.delta" = yellow; + "diff.minus" = red; + "diagnostic" = { modifiers = [ "underlined" ]; }; + "ui.gutter" = { bg = black; }; + "info" = blue; + "hint" = dark-gray; + "debug" = dark-gray; + "warning" = yellow; + "error" = red; + }; + }; }; }