parent
57e1f9a17c
commit
ae8e828514
11 changed files with 62 additions and 20 deletions
flake.lockflake.nix
homeManagerModules/neovim/langs
inputs
17
flake.lock
generated
17
flake.lock
generated
|
@ -1141,6 +1141,22 @@
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nix-develop-nvim-src": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1734885934,
|
||||||
|
"narHash": "sha256-qaopTh0a0JkM8GnVbOOx6vwRBEfxLiazrpa01N70ptI=",
|
||||||
|
"owner": "matt1432",
|
||||||
|
"repo": "nix-develop.nvim",
|
||||||
|
"rev": "66e82ed6d377fc94dd57bcbd1942b7ca7d3502f6",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "matt1432",
|
||||||
|
"repo": "nix-develop.nvim",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nix-eval-jobs": {
|
"nix-eval-jobs": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-parts": [
|
"flake-parts": [
|
||||||
|
@ -1713,6 +1729,7 @@
|
||||||
"mpv-touch-gestures-src": "mpv-touch-gestures-src",
|
"mpv-touch-gestures-src": "mpv-touch-gestures-src",
|
||||||
"netdaemon-src": "netdaemon-src",
|
"netdaemon-src": "netdaemon-src",
|
||||||
"nh": "nh",
|
"nh": "nh",
|
||||||
|
"nix-develop-nvim-src": "nix-develop-nvim-src",
|
||||||
"nix-eval-jobs": "nix-eval-jobs",
|
"nix-eval-jobs": "nix-eval-jobs",
|
||||||
"nix-fast-build": "nix-fast-build",
|
"nix-fast-build": "nix-fast-build",
|
||||||
"nix-gaming": "nix-gaming",
|
"nix-gaming": "nix-gaming",
|
||||||
|
|
|
@ -273,6 +273,12 @@
|
||||||
repo = "nh";
|
repo = "nh";
|
||||||
type = "github";
|
type = "github";
|
||||||
};
|
};
|
||||||
|
nix-develop-nvim-src = {
|
||||||
|
flake = false;
|
||||||
|
owner = "matt1432";
|
||||||
|
repo = "nix-develop.nvim";
|
||||||
|
type = "github";
|
||||||
|
};
|
||||||
nix-eval-jobs = {
|
nix-eval-jobs = {
|
||||||
inputs = {
|
inputs = {
|
||||||
flake-parts.follows = "flake-parts";
|
flake-parts.follows = "flake-parts";
|
||||||
|
|
|
@ -29,8 +29,9 @@ in {
|
||||||
if (devShells['c-lang'] == nil) then
|
if (devShells['c-lang'] == nil) then
|
||||||
devShells['c-lang'] = 1;
|
devShells['c-lang'] = 1;
|
||||||
|
|
||||||
require('nix-develop').nix_develop({'${flakeEnv}#c-lang'});
|
require('nix-develop').nix_develop({'${flakeEnv}#c-lang'}, vim.schedule_wrap(function()
|
||||||
vim.cmd[[LspStart]];
|
vim.cmd[[LspStart]];
|
||||||
|
end));
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
});
|
});
|
||||||
|
|
|
@ -70,11 +70,10 @@ in {
|
||||||
if (devShells['csharp'] == nil) then
|
if (devShells['csharp'] == nil) then
|
||||||
devShells['csharp'] = 1;
|
devShells['csharp'] = 1;
|
||||||
|
|
||||||
require('nix-develop').nix_develop({'${flakeEnv}#csharp'});
|
require('nix-develop').nix_develop({'${flakeEnv}#csharp'}, vim.schedule_wrap(function()
|
||||||
startRoslyn();
|
startRoslyn();
|
||||||
|
vim.cmd[[e]]; -- reload to attach on current file
|
||||||
os.execute('sleep 1')
|
end));
|
||||||
vim.cmd[[e]]; -- reload to attach on current file
|
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
});
|
});
|
||||||
|
|
|
@ -4,6 +4,9 @@ self: {
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
|
inherit (self.inputs) nix-develop-nvim-src;
|
||||||
|
inherit (self.lib.${pkgs.system}) mkVersion;
|
||||||
|
|
||||||
inherit (lib) fileContents mkBefore mkIf;
|
inherit (lib) fileContents mkBefore mkIf;
|
||||||
|
|
||||||
cfg = config.programs.neovim;
|
cfg = config.programs.neovim;
|
||||||
|
@ -63,7 +66,6 @@ in {
|
||||||
# lsp plugins
|
# lsp plugins
|
||||||
nvim-lspconfig
|
nvim-lspconfig
|
||||||
lsp-status-nvim
|
lsp-status-nvim
|
||||||
nix-develop-nvim
|
|
||||||
# completion plugins
|
# completion plugins
|
||||||
cmp-buffer
|
cmp-buffer
|
||||||
cmp-nvim-lsp
|
cmp-nvim-lsp
|
||||||
|
@ -73,6 +75,12 @@ in {
|
||||||
;
|
;
|
||||||
})
|
})
|
||||||
++ [
|
++ [
|
||||||
|
# FIXME: defer inside plugin instead
|
||||||
|
(pkgs.vimPlugins.nix-develop-nvim.overrideAttrs (o: {
|
||||||
|
name = "vimplugin-${o.pname}-${mkVersion nix-develop-nvim-src}";
|
||||||
|
src = nix-develop-nvim-src;
|
||||||
|
}))
|
||||||
|
|
||||||
{
|
{
|
||||||
plugin = pkgs.vimPlugins.nvim-cmp;
|
plugin = pkgs.vimPlugins.nvim-cmp;
|
||||||
type = "lua";
|
type = "lua";
|
||||||
|
|
|
@ -23,8 +23,9 @@ in {
|
||||||
if (devShells['json'] == nil) then
|
if (devShells['json'] == nil) then
|
||||||
devShells['json'] = 1;
|
devShells['json'] = 1;
|
||||||
|
|
||||||
require('nix-develop').nix_develop({'${flakeEnv}#json'});
|
require('nix-develop').nix_develop({'${flakeEnv}#json'}, vim.schedule_wrap(function()
|
||||||
vim.cmd[[LspStart]];
|
vim.cmd[[LspStart]];
|
||||||
|
end));
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
});
|
});
|
||||||
|
|
|
@ -31,8 +31,9 @@ in {
|
||||||
if (devShells['lua'] == nil) then
|
if (devShells['lua'] == nil) then
|
||||||
devShells['lua'] = 1;
|
devShells['lua'] = 1;
|
||||||
|
|
||||||
require('nix-develop').nix_develop({'${flakeEnv}#lua'});
|
require('nix-develop').nix_develop({'${flakeEnv}#lua'}, vim.schedule_wrap(function()
|
||||||
vim.cmd[[LspStart]];
|
vim.cmd[[LspStart]];
|
||||||
|
end));
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
});
|
});
|
||||||
|
|
|
@ -35,8 +35,9 @@ in {
|
||||||
if (devShells['markdown'] == nil) then
|
if (devShells['markdown'] == nil) then
|
||||||
devShells['markdown'] = 1;
|
devShells['markdown'] = 1;
|
||||||
|
|
||||||
require('nix-develop').nix_develop({'${flakeEnv}#markdown'});
|
require('nix-develop').nix_develop({'${flakeEnv}#markdown'}, vim.schedule_wrap(function()
|
||||||
vim.cmd[[LspStart]];
|
vim.cmd[[LspStart]];
|
||||||
|
end));
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
});
|
});
|
||||||
|
|
|
@ -23,8 +23,9 @@ in {
|
||||||
if (devShells['rust'] == nil) then
|
if (devShells['rust'] == nil) then
|
||||||
devShells['rust'] = 1;
|
devShells['rust'] = 1;
|
||||||
|
|
||||||
require('nix-develop').nix_develop({'${flakeEnv}#rust'});
|
require('nix-develop').nix_develop({'${flakeEnv}#rust'}, vim.schedule_wrap(function()
|
||||||
vim.cmd[[LspStart]];
|
vim.cmd[[LspStart]];
|
||||||
|
end));
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
});
|
});
|
||||||
|
|
|
@ -29,8 +29,9 @@ in {
|
||||||
if (devShells['web'] == nil) then
|
if (devShells['web'] == nil) then
|
||||||
devShells['web'] = 1;
|
devShells['web'] = 1;
|
||||||
|
|
||||||
require('nix-develop').nix_develop({'${flakeEnv}#web'});
|
require('nix-develop').nix_develop({'${flakeEnv}#web'}, vim.schedule_wrap(function()
|
||||||
vim.cmd[[LspStart]];
|
vim.cmd[[LspStart]];
|
||||||
|
end));
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
});
|
});
|
||||||
|
@ -44,8 +45,9 @@ in {
|
||||||
if (devShells['web'] == nil) then
|
if (devShells['web'] == nil) then
|
||||||
devShells['web'] = 1;
|
devShells['web'] = 1;
|
||||||
|
|
||||||
require('nix-develop').nix_develop({'${flakeEnv}#web'});
|
require('nix-develop').nix_develop({'${flakeEnv}#web'}, vim.schedule_wrap(function()
|
||||||
vim.cmd[[LspStart]];
|
vim.cmd[[LspStart]];
|
||||||
|
end));
|
||||||
end
|
end
|
||||||
end,
|
end,
|
||||||
});
|
});
|
||||||
|
|
|
@ -281,6 +281,11 @@ let
|
||||||
owner = "seblj";
|
owner = "seblj";
|
||||||
repo = "roslyn.nvim";
|
repo = "roslyn.nvim";
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
name = "nix-develop-nvim-src";
|
||||||
|
owner = "matt1432";
|
||||||
|
repo = "nix-develop.nvim";
|
||||||
|
}
|
||||||
|
|
||||||
# Overlays & packages
|
# Overlays & packages
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Reference in a new issue