feat: editor updates
This commit is contained in:
@@ -1,18 +1,70 @@
|
|||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
flake.modules.homeManager.helix = { pkgs, ... }: {
|
flake.modules.homeManager.helix =
|
||||||
programs.helix = {
|
{ pkgs, ... }:
|
||||||
enable = true;
|
let
|
||||||
extraPackages = [ pkgs.svelte-language-server ];
|
svelteLanguageServer = pkgs.svelte-language-server.overrideAttrs (
|
||||||
|
finalAttrs: _: {
|
||||||
|
version = "0.18.3";
|
||||||
|
|
||||||
settings = {
|
src = pkgs.fetchFromGitHub {
|
||||||
theme = "kanagawa";
|
owner = "sveltejs";
|
||||||
editor.cursor-shape = {
|
repo = "language-tools";
|
||||||
insert = "bar";
|
tag = "svelte-language-server@${finalAttrs.version}";
|
||||||
normal = "block";
|
hash = "sha256-FTOkJPXbsG6R53yr4n0/IR2lzFCovrdV0+epOi07lBQ=";
|
||||||
select = "underline";
|
};
|
||||||
|
|
||||||
|
pnpmDeps = pkgs.fetchPnpmDeps {
|
||||||
|
inherit (finalAttrs)
|
||||||
|
pname
|
||||||
|
version
|
||||||
|
src
|
||||||
|
pnpmWorkspaces
|
||||||
|
;
|
||||||
|
pnpm = pkgs.pnpm_10;
|
||||||
|
fetcherVersion = 3;
|
||||||
|
hash = "sha256-fY3hrCkr/soJk1gp39/jec8lT2ZJI27xRBCZi006oWA=";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
);
|
||||||
|
in
|
||||||
|
{
|
||||||
|
programs.helix = {
|
||||||
|
enable = true;
|
||||||
|
extraPackages = with pkgs; [
|
||||||
|
svelteLanguageServer
|
||||||
|
nixd
|
||||||
|
nixfmt
|
||||||
|
oxfmt
|
||||||
|
];
|
||||||
|
|
||||||
|
languages = {
|
||||||
|
language = [
|
||||||
|
{
|
||||||
|
name = "svelte";
|
||||||
|
formatter = {
|
||||||
|
command = "oxfmt";
|
||||||
|
args = [ "--stdin-filepath=%{buffer_name}" ];
|
||||||
|
};
|
||||||
|
auto-format = true;
|
||||||
|
}
|
||||||
|
{
|
||||||
|
name = "nix";
|
||||||
|
auto-format = true;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
settings = {
|
||||||
|
theme = "kanagawa";
|
||||||
|
editor = {
|
||||||
|
cursor-shape = {
|
||||||
|
insert = "bar";
|
||||||
|
normal = "block";
|
||||||
|
select = "underline";
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,6 +20,30 @@ in
|
|||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
nvimTreesitter = pkgs.vimPlugins.nvim-treesitter;
|
nvimTreesitter = pkgs.vimPlugins.nvim-treesitter;
|
||||||
|
svelteLanguageServer = pkgs.svelte-language-server.overrideAttrs (
|
||||||
|
finalAttrs: _: {
|
||||||
|
version = "0.18.3";
|
||||||
|
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "sveltejs";
|
||||||
|
repo = "language-tools";
|
||||||
|
tag = "svelte-language-server@${finalAttrs.version}";
|
||||||
|
hash = "sha256-FTOkJPXbsG6R53yr4n0/IR2lzFCovrdV0+epOi07lBQ=";
|
||||||
|
};
|
||||||
|
|
||||||
|
pnpmDeps = pkgs.fetchPnpmDeps {
|
||||||
|
inherit (finalAttrs)
|
||||||
|
pname
|
||||||
|
version
|
||||||
|
src
|
||||||
|
pnpmWorkspaces
|
||||||
|
;
|
||||||
|
pnpm = pkgs.pnpm_10;
|
||||||
|
fetcherVersion = 3;
|
||||||
|
hash = "sha256-fY3hrCkr/soJk1gp39/jec8lT2ZJI27xRBCZi006oWA=";
|
||||||
|
};
|
||||||
|
}
|
||||||
|
);
|
||||||
svelteGrammar = nvimTreesitter.builtGrammars.svelte.overrideAttrs (_: {
|
svelteGrammar = nvimTreesitter.builtGrammars.svelte.overrideAttrs (_: {
|
||||||
version = "0.0.0+rev=c2457b9";
|
version = "0.0.0+rev=c2457b9";
|
||||||
src = pkgs.fetchFromGitHub {
|
src = pkgs.fetchFromGitHub {
|
||||||
@@ -80,7 +104,7 @@ in
|
|||||||
oxlint
|
oxlint
|
||||||
oxfmt
|
oxfmt
|
||||||
emmet-language-server
|
emmet-language-server
|
||||||
svelte-language-server
|
svelteLanguageServer
|
||||||
];
|
];
|
||||||
|
|
||||||
specs = {
|
specs = {
|
||||||
|
|||||||
Reference in New Issue
Block a user