aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArpit Chakladar <54011232+arpitchakladar@users.noreply.github.com>2025-12-13 23:45:45 +0530
committerArpit Chakladar <54011232+arpitchakladar@users.noreply.github.com>2025-12-13 23:45:45 +0530
commitf0a384027b7765597ab7a3410a65e25673aa4835 (patch)
tree10ad5d651e6cce984fb644df71671614f77799cb
parent80d9462da696d4143f63c5c0fdd29c3c799754b5 (diff)
downloadhome-manager-config-f0a384027b7765597ab7a3410a65e25673aa4835.tar.gz
home-manager-config-f0a384027b7765597ab7a3410a65e25673aa4835.zip
Added auto completion to nixvim
-rw-r--r--flake.lock18
-rw-r--r--modules/tools/nixvim/default.nix1
-rw-r--r--modules/tools/nixvim/plugins/cmp.nix17
-rw-r--r--modules/tools/nixvim/plugins/default.nix2
-rw-r--r--modules/tools/nixvim/plugins/lsp.nix44
-rw-r--r--modules/tools/nixvim/plugins/notify.nix2
6 files changed, 74 insertions, 10 deletions
diff --git a/flake.lock b/flake.lock
index 994c221..9a777c5 100644
--- a/flake.lock
+++ b/flake.lock
@@ -5,11 +5,11 @@
"fromYaml": "fromYaml"
},
"locked": {
- "lastModified": 1746562888,
- "narHash": "sha256-YgNJQyB5dQiwavdDFBMNKk1wyS77AtdgDk/VtU6wEaI=",
+ "lastModified": 1755819240,
+ "narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
"owner": "SenchoPens",
"repo": "base16.nix",
- "rev": "806a1777a5db2a1ef9d5d6f493ef2381047f2b89",
+ "rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
"type": "github"
},
"original": {
@@ -41,11 +41,11 @@
]
},
"locked": {
- "lastModified": 1764361670,
- "narHash": "sha256-jgWzgpIaHbL3USIq0gihZeuy1lLf2YSfwvWEwnfAJUw=",
+ "lastModified": 1765606130,
+ "narHash": "sha256-KOP4QnkiRwiD5KEOr6ceF67rfTP1OqPmCCft6xDC3k4=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "780be8ef503a28939cf9dc7996b48ffb1a3e04c6",
+ "rev": "d787ec69c3216ea33be1c0424fe65cb23aa8fb31",
"type": "github"
},
"original": {
@@ -57,11 +57,11 @@
},
"nixpkgs": {
"locked": {
- "lastModified": 1764242076,
- "narHash": "sha256-sKoIWfnijJ0+9e4wRvIgm/HgE27bzwQxcEmo2J/gNpI=",
+ "lastModified": 1765472234,
+ "narHash": "sha256-9VvC20PJPsleGMewwcWYKGzDIyjckEz8uWmT0vCDYK0=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "2fad6eac6077f03fe109c4d4eb171cf96791faa4",
+ "rev": "2fbfb1d73d239d2402a8fe03963e37aab15abe8b",
"type": "github"
},
"original": {
diff --git a/modules/tools/nixvim/default.nix b/modules/tools/nixvim/default.nix
index 921dbe8..bca3451 100644
--- a/modules/tools/nixvim/default.nix
+++ b/modules/tools/nixvim/default.nix
@@ -30,6 +30,7 @@ in {
list = true;
laststatus = 3;
foldlevel = 99;
+ clipboard = "unnamedplus";
};
clipboard.providers.xclip.enable = true;
extraConfigLuaPre = with config.scheme.withHashtag; ''
diff --git a/modules/tools/nixvim/plugins/cmp.nix b/modules/tools/nixvim/plugins/cmp.nix
new file mode 100644
index 0000000..e74f468
--- /dev/null
+++ b/modules/tools/nixvim/plugins/cmp.nix
@@ -0,0 +1,17 @@
+{ config, lib, ... }:
+
+{
+ config.programs.nixvim.plugins.cmp = lib.mkIf config.tools.nixvim.enable {
+ enable = true;
+ autoEnableSources = true;
+ settings = {
+ snippet.expand = "function(args) require('luasnip').lsp_expand(args.body) end";
+ mapping = {
+ "<C-Space>" = "cmp.mapping.complete()";
+ "<CR>" = "cmp.mapping.confirm({ select = true })";
+ "<Tab>" = "cmp.mapping.select_next_item()";
+ "<S-Tab>" = "cmp.mapping.select_prev_item()";
+ };
+ };
+ };
+}
diff --git a/modules/tools/nixvim/plugins/default.nix b/modules/tools/nixvim/plugins/default.nix
index b1a9e04..65131fb 100644
--- a/modules/tools/nixvim/plugins/default.nix
+++ b/modules/tools/nixvim/plugins/default.nix
@@ -2,7 +2,9 @@
{
imports = [
+ ./cmp.nix
./comment.nix
+ ./lsp.nix
./lualine.nix
./noice.nix
./notify.nix
diff --git a/modules/tools/nixvim/plugins/lsp.nix b/modules/tools/nixvim/plugins/lsp.nix
new file mode 100644
index 0000000..be9cc15
--- /dev/null
+++ b/modules/tools/nixvim/plugins/lsp.nix
@@ -0,0 +1,44 @@
+{ config, lib, ... }:
+
+{
+ config.programs.nixvim.plugins.lsp = lib.mkIf config.tools.nixvim.enable {
+ enable = true;
+ servers = {
+ nil_ls = {
+ enable = true;
+ };
+ lua_ls = {
+ enable = true;
+ package = null;
+ };
+ nixd = {
+ enable = true;
+ package = null;
+ };
+ pyright = {
+ enable = true;
+ package = null;
+ };
+ ts_ls = {
+ enable = true;
+ package = null;
+ };
+ clangd = {
+ enable = true;
+ package = null;
+ };
+ jsonls = {
+ enable = true;
+ package = null;
+ };
+ yamlls = {
+ enable = true;
+ package = null;
+ };
+ bash-language-server = {
+ enable = true;
+ package = null;
+ };
+ };
+ };
+}
diff --git a/modules/tools/nixvim/plugins/notify.nix b/modules/tools/nixvim/plugins/notify.nix
index cb19102..09ac9cb 100644
--- a/modules/tools/nixvim/plugins/notify.nix
+++ b/modules/tools/nixvim/plugins/notify.nix
@@ -2,6 +2,6 @@
{
config.programs.nixvim.plugins.notify = lib.mkIf config.tools.nixvim.enable {
- enable = true;
+ enable = false;
};
}