nix-configs/modules/helix.nix

52 lines
1.3 KiB
Nix
Raw Normal View History

2023-05-14 10:07:54 +00:00
{ config, lib, ... }:
let cfg = config.jade.helix;
in with lib; {
options.jade.helix = {
enable = mkEnableOption "Enable helix";
};
config = mkIf cfg.enable {
home-manager.users.jade = { pkgs, ... }: {
2023-05-14 10:07:54 +00:00
home = {
sessionVariables.EDITOR = "hx";
packages = [
pkgs.nil
2023-05-25 07:03:43 +00:00
pkgs.haskell-language-server
2023-05-14 10:07:54 +00:00
pkgs.nodePackages_latest.vscode-html-languageserver-bin
pkgs.nodePackages_latest.vscode-json-languageserver-bin
pkgs.nodePackages_latest.vscode-css-languageserver-bin
pkgs.nodePackages_latest.bash-language-server
];
};
programs.helix = {
enable = true;
settings = {
theme = "gruvbox";
editor = {
line-number = "relative";
lsp.display-messages = true;
};
2023-05-14 10:07:54 +00:00
keys.normal = {
space."=" = ":fmt";
};
};
2023-07-29 15:19:17 +00:00
languages = {
2023-09-08 23:10:22 +00:00
language = [
{
name = "rust";
}
{
name = "php";
file-types = [ "php" ];
language-server = {
command = "psalm";
args = ["--language-server"];
};
}
];
2023-07-29 15:19:17 +00:00
};
};
};
};
}