home-manager/helix/default.nix

86 lines
1.7 KiB
Nix
Raw Normal View History

2023-10-10 03:55:56 +00:00
{ config, pkgs, inputs, ... }:
{
imports = [
./languages.nix
];
programs.helix = {
enable = true;
# package = inputs.helix.packages."x86_64-linux".default;
package = inputs.helix.packages.${pkgs.system}.default.overrideAttrs (self: {
makeWrapperArgs = with pkgs;
self.makeWrapperArgs
or []
++ [
"--suffix"
"PATH"
":"
(lib.makeBinPath [
clang-tools
marksman
nil
nodePackages.bash-language-server
nodePackages.vscode-css-languageserver-bin
nodePackages.vscode-langservers-extracted
shellcheck
])
];
});
settings = {
theme = "rose_pine_moon";
editor = {
line-number = "relative";
lsp.display-messages = true;
scrolloff = 5;
middle-click-paste = false;
cursorline = true;
auto-format = false;
idle-timeout = 400;
color-modes = true;
soft-wrap.enable = true;
whitespace = {
render = {
space = "none";
tab = "none";
newline = "none";
};
};
indent-guides = {
render = true;
character = "";
};
};
};
# languages = {
# language = [{
# name = "nix";
# scope = "flake.nix";
# roots = [ "flake.nix" "flake.lock" ];
# injection-regex = "nix";
# auto-format = false;
# file-types = [ "nix" ];
# comment-token = "#";
# indent = {
# tab-width = 2;
# unit = " ";
# };
# language-servers = [ "${pkgs.nil}" ];
# formatter = {
# command = "${pkgs.nixpkgs-fmt}";
# };
# }];
# grammar = [{
# name = "nix";
# source = {
# git = "https://github.com/nix-community/tree-sitter-nix";
# rev = "66e3e9ce9180ae08fc57372061006ef83f0abde7";
# };
# }];
# };
};
}