home/{kakoune,helix}: small maintenance

This commit is contained in:
chayleaf 2023-06-29 08:17:19 +07:00
parent f1f95891c7
commit 32b448eda6
2 changed files with 39 additions and 27 deletions

View file

@ -1,6 +1,6 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let let
wrapHelix = { extraPackages ? [ ], withPython3 ? true, extraPython3Packages ? (_: []) }: wrapHelix = { extraPackages ? [ ], withPython3 ? true, extraPython3Packages ? (_: [ ]) }:
pkgs.symlinkJoin { pkgs.symlinkJoin {
postBuild = '' postBuild = ''
rm $out/bin/hx rm $out/bin/hx
@ -28,9 +28,14 @@ in {
]; ];
extraPython3Packages = (pypkgs: with pypkgs; [ python-lsp-server ]); extraPython3Packages = (pypkgs: with pypkgs; [ python-lsp-server ]);
}; };
# languages = []; # languages = [ ];
settings = { settings = {
theme = "base16_terminal"; theme = "base16_terminal";
editor.cursor-shape = {
insert = "bar";
normal = "block";
select = "block";
};
}; };
}; };
} }

View file

@ -1,6 +1,6 @@
{ pkgs, lib, ... }: { pkgs, lib, ... }:
let let
wrapKakoune = { extraPackages ? [ ], withPython3 ? true, extraPython3Packages ? (_: []) }: wrapKakoune = { extraPackages ? [ ], withPython3 ? true, extraPython3Packages ? (_: [ ]) }:
pkgs.symlinkJoin { pkgs.symlinkJoin {
postBuild = '' postBuild = ''
rm $out/bin/kak rm $out/bin/kak
@ -40,28 +40,35 @@ in {
''; '';
plugins = with pkgs.kakounePlugins; [ kak-lsp smarttab-kak tabs-kak ]; plugins = with pkgs.kakounePlugins; [ kak-lsp smarttab-kak tabs-kak ];
}; };
xdg.configFile."kak-lsp/kak-lsp.toml".text = '' xdg.configFile."kak-lsp/kak-lsp.toml".source = (pkgs.formats.toml { }).generate "kak-lsp.toml" {
# bash, clangd, json, html, css, python work out of the box language = {
[language.rust] # bash, clangd, json, html, css, python work out of the box
filetypes = ["rust"] rust = {
roots = ["rust-toolchain.toml", "rust-toolchain", "Cargo.toml"] filetypes = [ "rust" ];
command = "rust-analyzer" roots = [ "rust-toolchain.toml" "rust-toolchain" "Cargo.toml" ];
[language.typescript] command = "rust-analyzer";
filetypes = ["typescript"] };
roots = ["package.json"] typescript = {
command = "typescript-language-server" filetypes = [ "typescript" ];
args = ["--stdio"] roots = [ "package.json" ];
[language.nix] command = "typescript-language-server";
filetypes = ["nix"] args = [ "--stdio" ];
roots = ["flake.nix"] };
command = "nil" nix = {
[language.markdown] filetypes = [ "nix" ];
filetypes = ["markdown"] roots = [ "flake.nix" ];
roots = [] command = "nil";
command = "marksman" };
[language.toml] markdown = {
filetypes = ["toml"] filetypes = [ "markdown" ];
roots = [] roots = [ ];
command = "taplo" command = "marksman";
''; };
toml = {
filetypes = [ "toml" ];
roots = [ ];
command = "taplo";
};
};
};
} }