Compare commits

...

2 commits

Author SHA1 Message Date
Anthony Cicchetti
4ad096e4f0 fix rust-analyzer, updates 2024-08-08 09:11:06 -04:00
Anthony Cicchetti
7adaf10cb0 nixvim - whichkey still giving trouble 2024-08-05 15:27:41 -04:00
5 changed files with 673 additions and 378 deletions

View file

@ -1,5 +1,25 @@
{ {
"nodes": { "nodes": {
"awesome-neovim-plugins": {
"inputs": {
"flake-compat": "flake-compat",
"flake-utils": "flake-utils",
"nixpkgs": "nixpkgs"
},
"locked": {
"lastModified": 1723051501,
"narHash": "sha256-Qp+Ib/Z6K6GlyH0ZeYtwZ7I5rtExF1bmxWfi4E0DRMA=",
"owner": "m15a",
"repo": "flake-awesome-neovim-plugins",
"rev": "da307685168d89b5e3ebda0efa019a3ae3cc2c64",
"type": "github"
},
"original": {
"owner": "m15a",
"repo": "flake-awesome-neovim-plugins",
"type": "github"
}
},
"crane": { "crane": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -8,11 +28,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1720975002, "lastModified": 1722960479,
"narHash": "sha256-1i521ecK2MFg+lxSk9oRx/C0SsdlI6GS6eYT79nA6TA=", "narHash": "sha256-NhCkJJQhD5GUib8zN9JrmYGMwt4lCRp6ZVNzIiYCl0Y=",
"owner": "ipetkov", "owner": "ipetkov",
"repo": "crane", "repo": "crane",
"rev": "1791a5b98d2c1bf143ad85469abcfa2426f3f087", "rev": "4c6c77920b8d44cd6660c1621dea6b3fc4b4c4f4",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -21,6 +41,27 @@
"type": "github" "type": "github"
} }
}, },
"devshell": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1722113426,
"narHash": "sha256-Yo/3loq572A8Su6aY5GP56knpuKYRvM2a1meP9oJZCw=",
"owner": "numtide",
"repo": "devshell",
"rev": "67cce7359e4cd3c45296fb4aaf6a19e2a9c757ae",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "devshell",
"type": "github"
}
},
"fenix": { "fenix": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
@ -29,11 +70,11 @@
"rust-analyzer-src": "rust-analyzer-src" "rust-analyzer-src": "rust-analyzer-src"
}, },
"locked": { "locked": {
"lastModified": 1722839439, "lastModified": 1723098624,
"narHash": "sha256-AwQv9kstzEOYjzuC9uY8jECqFJPuV/UxPLa30L3DLqo=", "narHash": "sha256-TFg+lq7pHgCnsB4nRmMeTxSnZXHvzYJ2IHyEiw8zEF8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "fenix", "repo": "fenix",
"rev": "1388e72dd8562c8b2908fd655dee0c797df9e930", "rev": "d6022ac563f2f48d8eeff89ca3589c8adc5235f6",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -42,6 +83,57 @@
"type": "github" "type": "github"
} }
}, },
"flake-compat": {
"flake": false,
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"owner": "edolstra",
"repo": "flake-compat",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"type": "github"
},
"original": {
"owner": "edolstra",
"repo": "flake-compat",
"type": "github"
}
},
"flake-compat_2": {
"locked": {
"lastModified": 1696426674,
"narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=",
"rev": "0f9255e01c2351cc7d116c072cb317785dd33b33",
"revCount": 57,
"type": "tarball",
"url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.0.1/018afb31-abd1-7bff-a5e4-cff7e18efb7a/source.tar.gz"
},
"original": {
"type": "tarball",
"url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz"
}
},
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1722555600,
"narHash": "sha256-XOQkdLafnb/p9ij77byFQjDf5m5QYl9b2REiVClC+x4=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "8471fe90ad337a8074e957b69ca4d0089218391d",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-utils": { "flake-utils": {
"inputs": { "inputs": {
"systems": "systems" "systems": "systems"
@ -60,22 +152,91 @@
"type": "github" "type": "github"
} }
}, },
"haumea": { "flake-utils_2": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs" "systems": "systems_2"
}, },
"locked": { "locked": {
"lastModified": 1685133229, "lastModified": 1710146030,
"narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=", "narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "nix-community", "owner": "numtide",
"repo": "haumea", "repo": "flake-utils",
"rev": "34dd58385092a23018748b50f9b23de6266dffc2", "rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "numtide",
"ref": "v0.2.2", "repo": "flake-utils",
"repo": "haumea", "type": "github"
}
},
"flake-utils_3": {
"inputs": {
"systems": "systems_3"
},
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"git-hooks": {
"inputs": {
"flake-compat": [
"nixvim",
"flake-compat"
],
"gitignore": "gitignore",
"nixpkgs": [
"nixvim",
"nixpkgs"
],
"nixpkgs-stable": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1722857853,
"narHash": "sha256-3Zx53oz/MSIyevuWO/SumxABkrIvojnB7g9cimxkhiE=",
"owner": "cachix",
"repo": "git-hooks.nix",
"rev": "06939f6b7ec4d4f465bf3132a05367cccbbf64da",
"type": "github"
},
"original": {
"owner": "cachix",
"repo": "git-hooks.nix",
"type": "github"
}
},
"gitignore": {
"inputs": {
"nixpkgs": [
"nixvim",
"git-hooks",
"nixpkgs"
]
},
"locked": {
"lastModified": 1709087332,
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "gitignore.nix",
"type": "github" "type": "github"
} }
}, },
@ -86,11 +247,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1722630065, "lastModified": 1723015306,
"narHash": "sha256-QfM/9BMRkCmgWzrPDK+KbgJOUlSJnfX4OvsUupEUZvA=", "narHash": "sha256-jQnFEtH20/OsDPpx71ntZzGdRlpXhUENSQCGTjn//NA=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "afc892db74d65042031a093adb6010c4c3378422", "rev": "b3d5ea65d88d67d4ec578ed11d4d2d51e3de525e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -99,40 +260,24 @@
"type": "github" "type": "github"
} }
}, },
"nix-flake-tests": { "nix-darwin": {
"locked": {
"lastModified": 1677844186,
"narHash": "sha256-ErJZ/Gs1rxh561CJeWP5bohA2IcTq1rDneu1WT6CVII=",
"owner": "antifuchs",
"repo": "nix-flake-tests",
"rev": "bbd9216bd0f6495bb961a8eb8392b7ef55c67afb",
"type": "github"
},
"original": {
"owner": "antifuchs",
"repo": "nix-flake-tests",
"type": "github"
}
},
"nix-github-actions": {
"inputs": { "inputs": {
"nixpkgs": [ "nixpkgs": [
"nixneovimplugins", "nixvim",
"poetry2nix",
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1688870561, "lastModified": 1722924007,
"narHash": "sha256-4UYkifnPEw1nAzqqPOTL2MvWtm3sNGw1UTYTalkTcGY=", "narHash": "sha256-+CQDamNwqO33REJLft8c26NbUi2Td083hq6SvAm2xkU=",
"owner": "nix-community", "owner": "lnl7",
"repo": "nix-github-actions", "repo": "nix-darwin",
"rev": "165b1650b753316aa7f1787f3005a8d2da0f5301", "rev": "91010a5613ffd7ee23ee9263213157a1c422b705",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "lnl7",
"repo": "nix-github-actions", "repo": "nix-darwin",
"type": "github" "type": "github"
} }
}, },
@ -156,86 +301,29 @@
"type": "github" "type": "github"
} }
}, },
"nixneovim": {
"inputs": {
"flake-utils": [
"flake-utils"
],
"haumea": "haumea",
"home-manager": [
"home-manager"
],
"nix-flake-tests": "nix-flake-tests",
"nixneovimplugins": [
"nixneovimplugins"
],
"nixpkgs": [
"nixpkgs"
],
"nmd": "nmd",
"nmt": "nmt"
},
"locked": {
"lastModified": 1718612773,
"narHash": "sha256-Uzw1jJhriSwctKZvEc9vwUfKHSvnX7YGKJxYv8JPG14=",
"owner": "nixneovim",
"repo": "nixneovim",
"rev": "2ae81f2ed61ebf4ca4d4b36ea9e8eb5163380d44",
"type": "github"
},
"original": {
"owner": "nixneovim",
"repo": "nixneovim",
"rev": "2ae81f2ed61ebf4ca4d4b36ea9e8eb5163380d44",
"type": "github"
}
},
"nixneovimplugins": {
"inputs": {
"flake-utils": [
"flake-utils"
],
"nixpkgs": [
"nixpkgs"
],
"poetry2nix": "poetry2nix"
},
"locked": {
"lastModified": 1722781338,
"narHash": "sha256-uVK3J4g1JfQvDG9O0p7hGmfBNLBlD1arrK0KLGHYZTg=",
"owner": "NixNeovim",
"repo": "NixNeovimPlugins",
"rev": "303f0ea30708f3bc647e1ebe7a398aceaf31c33d",
"type": "github"
},
"original": {
"owner": "NixNeovim",
"repo": "NixNeovimPlugins",
"type": "github"
}
},
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1681001314, "lastModified": 1722415718,
"narHash": "sha256-5sDnCLdrKZqxLPK4KA8+f4A3YKO/u6ElpMILvX0g72c=", "narHash": "sha256-5US0/pgxbMksF92k1+eOa8arJTJiPvsdZj9Dl+vJkM4=",
"owner": "nix-community", "owner": "NixOS",
"repo": "nixpkgs.lib", "repo": "nixpkgs",
"rev": "367c0e1086a4eb4502b24d872cea2c7acdd557f4", "rev": "c3392ad349a5227f4a3464dce87bcc5046692fce",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "NixOS",
"repo": "nixpkgs.lib", "ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github" "type": "github"
} }
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1722862185, "lastModified": 1723121067,
"narHash": "sha256-bDt4jvQK9pgKzkL/EJ+fAb6dW+QM1O4RHgjgqZCeYx8=", "narHash": "sha256-VS7xn/tpZ9KfeqPAPNkNJaB7KkAWSl//E1B41zFNWiE=",
"owner": "nixOS", "owner": "nixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "dd34fb5e692a611eee3f984da0d3271f261109b8", "rev": "7b81395d99201e90e73b873f2609ca7e7b255db5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -244,85 +332,78 @@
"type": "github" "type": "github"
} }
}, },
"nmd": { "nixvim": {
"flake": false,
"locked": {
"lastModified": 1672949361,
"narHash": "sha256-WWg1kbilAb3sA+RoJtSYfAZvyYu1Nk79ocHaerwbQxQ=",
"owner": "~rycee",
"repo": "nmd",
"rev": "fb9cf8e991487c6923f3c654b8ae51b6f0f205ce",
"type": "sourcehut"
},
"original": {
"owner": "~rycee",
"repo": "nmd",
"rev": "fb9cf8e991487c6923f3c654b8ae51b6f0f205ce",
"type": "sourcehut"
}
},
"nmt": {
"flake": false,
"locked": {
"lastModified": 1709382952,
"narHash": "sha256-n/BvuWVcQxaXCU30feNRqWWqabhIIO2+tRFnhLIhjiQ=",
"owner": "jooooscha",
"repo": "nmt",
"rev": "86a09994d1007c39a1f4d386e3caea9b4681d9d6",
"type": "github"
},
"original": {
"owner": "jooooscha",
"repo": "nmt",
"type": "github"
}
},
"poetry2nix": {
"inputs": { "inputs": {
"flake-utils": [ "devshell": "devshell",
"nixneovimplugins", "flake-compat": "flake-compat_2",
"flake-utils" "flake-parts": "flake-parts",
"git-hooks": "git-hooks",
"home-manager": [
"home-manager"
], ],
"nix-github-actions": "nix-github-actions", "nix-darwin": "nix-darwin",
"nixpkgs": [ "nixpkgs": [
"nixneovimplugins", "nixpkgs"
],
"nuschtosSearch": "nuschtosSearch",
"treefmt-nix": "treefmt-nix"
},
"locked": {
"lastModified": 1723097923,
"narHash": "sha256-DtE5JfdxpPraCuDBFDsOc6typ+t1l4IL1HYiyTLcjYM=",
"owner": "nix-community",
"repo": "nixvim",
"rev": "78abafe280b1ea102fda879799b590da5d84725f",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "nixvim",
"type": "github"
}
},
"nuschtosSearch": {
"inputs": {
"flake-utils": "flake-utils_3",
"nixpkgs": [
"nixvim",
"nixpkgs" "nixpkgs"
] ]
}, },
"locked": { "locked": {
"lastModified": 1689849924, "lastModified": 1722772237,
"narHash": "sha256-d259Z2S7CS7Na04qQNQ6LYQILuI7cf4Rpe76qc4mz40=", "narHash": "sha256-3eCYmzeLngX8eutIsTZAG8DIvT/0DWQQxiszTQz8n0s=",
"owner": "nix-community", "owner": "NuschtOS",
"repo": "poetry2nix", "repo": "search",
"rev": "1d7eda9336f336392d24e9602be5cb9be7ae405c", "rev": "aa5f6246565cc9b1e697d2c9d6ed2c842b17fff6",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "nix-community", "owner": "NuschtOS",
"repo": "poetry2nix", "repo": "search",
"type": "github" "type": "github"
} }
}, },
"root": { "root": {
"inputs": { "inputs": {
"awesome-neovim-plugins": "awesome-neovim-plugins",
"fenix": "fenix", "fenix": "fenix",
"flake-utils": "flake-utils", "flake-utils": "flake-utils_2",
"home-manager": "home-manager", "home-manager": "home-manager",
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nixneovim": "nixneovim",
"nixneovimplugins": "nixneovimplugins",
"nixpkgs": "nixpkgs_2", "nixpkgs": "nixpkgs_2",
"nixvim": "nixvim",
"zjstatus": "zjstatus" "zjstatus": "zjstatus"
} }
}, },
"rust-analyzer-src": { "rust-analyzer-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1722798820, "lastModified": 1723042912,
"narHash": "sha256-/Bd0VzlutcxTwSNouS/iC6BDv395NoO4XmBJaS2vQLg=", "narHash": "sha256-Ff4nCgmlSWVOMvRVVf6gTYgmZjGw9EjIFHG0aUFg+D8=",
"owner": "rust-lang", "owner": "rust-lang",
"repo": "rust-analyzer", "repo": "rust-analyzer",
"rev": "c9109f23de57359df39db6fa36b5ca4c64b671e1", "rev": "935883fd826c46e7e7e6de19cf24377c21f1b2ba",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -340,11 +421,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1721010111, "lastModified": 1722997267,
"narHash": "sha256-GuPw2xhJZ+eszIJFu7z7AtqUmirSWPHpxuCpG6dSOic=", "narHash": "sha256-8Pncp8IKd0f0N711CRrCGTC4iLfBE+/5kaMqyWxnYic=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "3ef018b6d0f62eb59580a8e9fe141e37bf1d972d", "rev": "d720bf3cebac38c2426d77ee2e59943012854cb8",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -368,6 +449,57 @@
"type": "github" "type": "github"
} }
}, },
"systems_2": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"systems_3": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"treefmt-nix": {
"inputs": {
"nixpkgs": [
"nixvim",
"nixpkgs"
]
},
"locked": {
"lastModified": 1722330636,
"narHash": "sha256-uru7JzOa33YlSRwf9sfXpJG+UAV+bnBEYMjrzKrQZFw=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "768acdb06968e53aa1ee8de207fd955335c754b7",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"zjstatus": { "zjstatus": {
"inputs": { "inputs": {
"crane": "crane", "crane": "crane",
@ -380,11 +512,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1721054167, "lastModified": 1723031177,
"narHash": "sha256-0ZplHtEXoqytnDExvNoDWoTt1KjcobKVGXv5zmY3jrk=", "narHash": "sha256-bjiFmTOpd42a15NTtn8taQxUzCD+7+XbR+HklijsVO4=",
"owner": "dj95", "owner": "dj95",
"repo": "zjstatus", "repo": "zjstatus",
"rev": "924f821cf1a1800baa90a443a7150ca795ad93c7", "rev": "e1e3b566268fbf6c80d6544f38b06368d23b4b46",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -18,21 +18,37 @@
url = "github:Mic92/nix-index-database"; url = "github:Mic92/nix-index-database";
inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs.follows = "nixpkgs";
}; };
nixneovim = { # nixneovim = {
url = "github:nixneovim/nixneovim/2ae81f2ed61ebf4ca4d4b36ea9e8eb5163380d44"; # url = "github:nixneovim/nixneovim/2ae81f2ed61ebf4ca4d4b36ea9e8eb5163380d44";
# inputs = {
# nixpkgs.follows = "nixpkgs";
# home-manager.follows = "home-manager";
# flake-utils.follows = "flake-utils";
# nixneovimplugins.follows = "nixneovimplugins";
# };
# };
# nixneovimplugins = {
# url = "github:NixNeovim/NixNeovimPlugins";
# inputs = {
# nixpkgs.follows = "nixpkgs";
# flake-utils.follows = "flake-utils";
# };
# };
nixvim = {
url = "github:nix-community/nixvim";
inputs = { inputs = {
nixpkgs.follows = "nixpkgs"; nixpkgs.follows = "nixpkgs";
home-manager.follows = "home-manager"; home-manager.follows = "home-manager";
flake-utils.follows = "flake-utils"; flake-utils.follows = "flake-utils";
nixneovimplugins.follows = "nixneovimplugins";
}; };
}; };
nixneovimplugins = { awesome-neovim-plugins = {
url = "github:NixNeovim/NixNeovimPlugins"; url = "github:m15a/flake-awesome-neovim-plugins";
inputs = { # inputs = {
nixpkgs.follows = "nixpkgs"; # nixpkgs.follows = "nixpkgs";
flake-utils.follows = "flake-utils"; # home-manager.follows = "home-manager";
}; # flake-utils.follows = "flake-utils";
# };
}; };
zjstatus = { zjstatus = {
url = "github:dj95/zjstatus"; url = "github:dj95/zjstatus";
@ -54,8 +70,8 @@
nixpkgs, nixpkgs,
home-manager, home-manager,
nix-index-database, nix-index-database,
nixneovim, nixvim,
nixneovimplugins, awesome-neovim-plugins,
zjstatus, zjstatus,
fenix, fenix,
... ...
@ -72,8 +88,8 @@
(_final: prev: { (_final: prev: {
zjstatus = zjstatus.packages.${prev.system}.default; zjstatus = zjstatus.packages.${prev.system}.default;
}) })
nixneovimplugins.overlays.default
fenix.overlays.default fenix.overlays.default
awesome-neovim-plugins.overlays.default
]; ];
} }
); );
@ -84,7 +100,7 @@
modules = [ modules = [
{ {
imports = [ imports = [
nixneovim.nixosModules.${system}.homeManager nixvim.homeManagerModules.nixvim
]; ];
} }
nix-index-database.hmModules.nix-index nix-index-database.hmModules.nix-index

View file

@ -1,12 +1,11 @@
{pkgs, ...}: { {pkgs, ...}: {
programs.nixneovim = { programs.nixvim = {
enable = true; enable = true;
defaultEditor = true; defaultEditor = true;
viAlias = true; viAlias = true;
vimAlias = true; vimAlias = true;
extraLuaPreConfig = builtins.readFile ./neovim/pre.lua; extraConfigLuaPre = builtins.readFile ./neovim/pre.lua;
extraConfigLua = builtins.readFile ./neovim/core.lua; extraConfigLuaPost = builtins.readFile ./neovim/core.lua;
colorscheme = "onedark";
colorschemes = { colorschemes = {
onedark.enable = true; onedark.enable = true;
}; };
@ -29,21 +28,40 @@
right = ""; right = "";
}; };
sections = { sections = {
lualine_a = ["mode" {separator = {left = "";};} {right_padding = 2;}]; lualine_a = [
{
name = "mode";
separator = {
left = "";
};
padding = {
right = 2;
left = 0;
};
}
];
lualine_b = ["filename" "branch"]; lualine_b = ["filename" "branch"];
lualine_c = ["%="]; lualine_c = ["%="];
lualine_x = []; lualine_x = [];
lualine_y = ["filetype" "progress"]; lualine_y = ["filetype" "progress"];
lualine_z = ["location" {separator = {right = "";};} {left_padding = 2;}]; lualine_z = [
{
name = "location";
separator = {
right = "";
};
padding = {
right = 0;
left = 2;
};
}
];
}; };
}; };
# luasnip = {
# enable = true;
# };
lsp-lines = { lsp-lines = {
enable = true; enable = true;
}; };
lspconfig = { lsp = {
enable = true; enable = true;
preConfig = '' preConfig = ''
''; '';
@ -52,225 +70,310 @@
gopls.enable = true; gopls.enable = true;
jsonls.enable = true; jsonls.enable = true;
pyright.enable = true; # In preference to attempting to use pylyzer pyright.enable = true; # In preference to attempting to use pylyzer
nil.enable = true; nil-ls.enable = true;
rust-analyzer.enable = true; rust-analyzer = let
fenix = fenix.latest.withComponents ["cargo" "rustc"];
in {
enable = true;
installCargo = false;
installRustc = false;
cargoPackage = fenix.cargo;
rustcPackage = fenix.rustc;
};
taplo.enable = true; taplo.enable = true;
terraform-ls.enable = true; terraformls.enable = true;
}; };
}; };
lspkind = { lspkind = {
enable = true; enable = true;
mode = "symbol"; mode = "symbol";
cmp.enable = true;
symbolMap = {
# TODO
"Text" = "";
};
}; };
mini = { mini = {
enable = true; enable = true;
ai.enable = true; modules = {
align.enable = true; ai.enable = true;
animate.enable = true; align.enable = true;
comment.enable = true; animate.enable = true;
completion.enable = true; comment.enable = true;
indentscope.enable = true; completion.enable = true;
jump.enable = true; indentscope.enable = true;
jump2d = { jump.enable = true;
enable = true; jump2d = {
extraConfig = { enable = true;
mappings.start_jumping = "<leader>a"; mappings.start_jumping = "<leader>a";
}; };
splitjoin.enable = true;
surround.enable = true;
tabline.enable = true;
}; };
splitjoin.enable = true;
surround.enable = true;
tabline.enable = true;
}; };
nvim-cmp = { cmp = {
enable = true; enable = true;
formatting = { settings = {
format = '' # formatting = {
function(entry, vim_item) # format = ''
vim_item.kind = string.format("%s %s", kind_icons[vim_item.kind], vim_item.kind) # function(entry, vim_item)
vim_item.menu = ({ # vim_item.kind = string.format("%s %s", kind_icons[vim_item.kind], vim_item.kind)
buffer = "[Buffer]", # vim_item.menu = ({
nvim_lsp = "[LSP]", # buffer = "[Buffer]",
luasnip = "[LuaSnip]", # nvim_lsp = "[LSP]",
nvim_lua = "[Lua]", # luasnip = "[LuaSnip]",
latex_symbols = "[LaTeX]", # nvim_lua = "[Lua]",
})[entry.source.name] # latex_symbols = "[LaTeX]",
return vim_item # })[entry.source.name]
end # return vim_item
''; # end
}; # '';
mappingPresets = ["insert"]; # };
mapping = { mapping = {
"<CR>" = "cmp.mapping.confirm({ select = true})"; "<CR>" = "cmp.mapping.confirm({ select = true})";
"<C-Space>" = "cmp.mapping.complete()"; "<C-Space>" = "cmp.mapping.complete()";
"<Tab>" = { "<Tab>" = ''
modes = ["i" "s" "c"]; cmp.mapping(function(fallback)
action = '' if cmp.visible() then
function(fallback)
local entry = cmp.get_selected_entry() local entry = cmp.get_selected_entry()
if not entry then if not entry then
cmp.select_next_item({ behavior = cmp.SelectBehavior.Select }) cmp.select_next_item({ behavior = cmp.SelectBehavior.Select })
cmp.confirm()
elseif entry then
cmp.confirm()
elseif luasnip.expandable() then
luasnip.expand()
elseif luasnip.expand_or_jumpable() then
luasnip.expand_or_jump()
elseif check_backspace() then
fallback()
else
fallback()
end end
end cmp.confirm()
'';
};
"<S-Tab>" = {
modes = ["i" "s" "c"];
action = ''
function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else else
fallback() fallback()
end end
end end, {"i", "s", "c"})
'';
"<S-Tab>" = ''
cmp.mapping(function(fallback)
if cmp.visible() then
cmp.select_prev_item()
elseif luasnip.jumpable(-1) then
luasnip.jump(-1)
else
fallback()
end
end, {"i", "s", "c"})
''; '';
}; };
}; # sources = {
# cmdline = {
snippet = { # enable = true;
luasnip.enable = false; # };
}; # emoji.enable = true;
sources = { # fuzzy_path.enable = true;
cmdline = { # # luasnip.enable = true;
enable = true; # nvim_lsp.enable = true;
# nvim_lsp_document_symbol.enable = true;
# nvim_lsp_signature_help.enable = true;
# treesitter.enable = true;
# };
view = {
entries.name = "custom";
}; };
emoji.enable = true;
fuzzy_path.enable = true;
# luasnip.enable = true;
nvim_lsp.enable = true;
nvim_lsp_document_symbol.enable = true;
nvim_lsp_signature_help.enable = true;
treesitter.enable = true;
};
view = {
entries = "custom";
}; };
}; };
project-nvim = { project-nvim = {
enable = true; enable = true;
enableTelescope = true;
detectionMethods = ["lsp" "pattern"];
}; };
telescope = { telescope = {
enable = true; enable = true;
extraLua = { enabledExtensions = [
post = builtins.readFile ./neovim/telescope.lua; "zf-native" #TODO
"projects" #TODO
"egrepify" #TODO
];
# extraLua = {
# post = builtins.readFile ./neovim/telescope.lua;
# };
keymaps = {
"<leader>ff" = {
mode = "n";
action = "find_files";
options.desc = "Find Files";
};
"<leader>fg" = {
mode = "n";
action = "require(\"telescope\").extensions.egrepify.egrepify";
options.desc = "Live Grep";
};
"<leader>fb" = {
mode = "n";
action = "buffers";
options.desc = "Find Buffers";
};
"<leader>r" = {
mode = "n";
action = "registers";
options.desc = "View Registers";
};
"<leader>pr" = {
mode = "n";
action = "lsp_references";
options.desc = "(LSP) References";
};
"<leader>pi" = {
mode = "n";
action = "lsp_implementations";
options.desc = "(LSP) Implementations";
};
"<leader>pd" = {
mode = "n";
action = "lsp_definitions";
options.desc = "(LSP) Definitions";
};
"<leader>ps" = {
mode = "n";
action = "lsp_document_symbols";
options.desc = "(LSP) Document Symbols";
};
"<leader>pws" = {
mode = "n";
action = "lsp_workspace_symbols";
options.desc = "(LSP) Workspace Symbols";
};
"<leader>pwd" = {
mode = "n";
action = "lsp_dynamic_workspace_symbols";
options.desc = "(LSP) Dynamic Workspace Symbols";
};
}; };
}; };
treesitter = { treesitter = {
enable = true; enable = true;
indent = true; settings = {
folding = true; indent = {
incrementalSelection = { enable = true;
enable = true; };
incremental_selection = {
enable = true;
};
}; };
folding = true;
}; };
trouble = { trouble = {
enable = true; enable = true;
}; };
ufo = { ts-context-commentstring = {
enable = true; enable = true;
extraLua.pre = ''
require('ufo').setup({ provider_selector = function(bufnr, filetype, buftype)
return {'treesitter', 'indent' }
end
})
'';
}; };
# ufo = { # TODO
# enable = true;
# extraLua.pre = ''
# require('ufo').setup({ provider_selector = function(bufnr, filetype, buftype)
# return {'treesitter', 'indent' }
# end
# })
# '';
# };
undotree = { undotree = {
enable = true; enable = true;
}; };
vim-bbye = {
enable = true;
};
which-key = { which-key = {
enable = true; enable = true;
groups = { settings.spec = [
normal = { {
"<leader>f" = "Telescope - Find"; __unkeyed-1 = "<leader>f";
"<leader>r" = "View registers"; group = "Telescope - Find";
"<leader>p" = "Telescope - LSP"; }
}; {
}; __unkeyed-1 = "<leader>p";
group = "Telescope - LSP";
}
];
}; };
}; };
extraPlugins = extraPlugins =
( (
with pkgs.vimPlugins; [ with pkgs.vimPlugins; [
fuzzy-nvim rainbow-delimiters-nvim
nvim-ts-context-commentstring telescope-symbols-nvim
overseer-nvim
nvim-web-devicons
telescope-zf-native-nvim telescope-zf-native-nvim
vim-ReplaceWithRegister vim-ReplaceWithRegister
vim-bbye
vim-dispatch-neovim vim-dispatch-neovim
vim-expand-region vim-expand-region
nvim-ufo
] ]
) )
++ (with pkgs.vimExtraPlugins; [ ++ (with pkgs.awesomeNeovimPlugins; [
rainbow-delimiters-nvim linrongbin16-gitlinker-nvim
gitlinker-linrongbin16
telescope-symbols-nvim
overseer-nvim
officer-nvim officer-nvim
nvim-web-devicons
lsp-signature-nvim lsp-signature-nvim
nvim-rg
nvim-biscuits nvim-biscuits
telescope-egrepify-nvim telescope-egrepify-nvim
]); ]);
mappings = { keymaps = [
normal = { {
"<leader>u" = { action = "vim.cmd.UndotreeToggle";
action = "vim.cmd.UndotreeToggle"; key = "<leader>u";
desc = "Toggle undotree"; options.desc = "Toggle undotree";
}; mode = "n";
"<leader>h" = { }
action = "function() vim.api.nvim_command('wincmd h') end"; {
desc = "Cursor - Window left"; action = "function() vim.api.nvim_command('wincmd h') end";
}; key = "<leader>h";
"<leader>j" = { options.desc = "Cursor - Window left";
action = "function() vim.api.nvim_command('wincmd j') end"; mode = "n";
desc = "Cursor - Window down"; }
}; {
"<leader>k" = { action = "function() vim.api.nvim_command('wincmd j') end";
action = "function() vim.api.nvim_command('wincmd k') end"; key = "<leader>j";
desc = "Cursor - Window up"; options.desc = "Cursor - Window down";
}; mode = "n";
"<leader>l" = { }
action = "function() vim.api.nvim_command('wincmd l') end"; {
desc = "Cursor - Window right"; action = "function() vim.api.nvim_command('wincmd k') end";
}; key = "<leader>k";
"<c-k>" = { options.desc = "Cursor - Window up";
action = "'<c-u>'"; mode = "n";
}; }
"<c-j>" = { {
action = "'<c-d>'"; action = "function() vim.api.nvim_command('wincmd l') end";
}; key = "<leader>l";
"<leader>n" = { options.desc = "Cursor - Window right";
action = "function() vim.api.nvim_command('nohl') end"; mode = "n";
desc = "nohl"; }
}; {
"<leader>t" = { key = "<c-k>";
action = "'<cmd>Telescope<cr>'"; action = "'<c-u>'";
desc = "Open Telescope"; mode = "n";
}; }
}; {
visual = { key = "<c-j>";
"<c-k>" = { action = "'<c-d>'";
action = "'<c-u>'"; mode = "n";
}; }
"<c-j>" = { {
action = "'<c-d>'"; key = "<leader>n";
}; action = "function() vim.api.nvim_command('nohl') end";
}; options.desc = "nohl";
}; mode = "n";
}
{
action = "'<cmd>Telescope<cr>'";
key = "<leader>t";
options.desc = "Open Telescope";
mode = "n";
}
{
action = "'<c-u>'";
key = "<c-k>";
mode = "v";
}
{
key = "<c-j>";
action = "'<c-d>'";
mode = "v";
}
];
}; };
} }

View file

@ -68,3 +68,25 @@ cmp.setup.cmdline(":", {
}), }),
matching = { disallow_symbol_nonprefix_matching = false }, matching = { disallow_symbol_nonprefix_matching = false },
}) })
do
function setup()
require("ufo").setup({
provider_selector = function(bufnr, filetype, buftype)
return { "treesitter", "indent" }
end,
})
require("ufo").setup({})
vim.o.foldcolumn = "1" -- '0' is not bad
vim.o.foldlevel = 99 -- Using ufo provider need a large value, feel free to decrease the value
vim.o.foldlevelstart = 99
vim.o.foldenable = true
end
success, output = pcall(setup) -- execute 'setup()' and catch any errors
if not success then
print("Error on setup for plugin: ufo")
print(output)
end
end

View file

@ -1,33 +1,33 @@
vim.g.mapleader = " " vim.g.mapleader = " "
vim.g.maplocalleader = "," vim.g.maplocalleader = ","
local kind_icons = { -- local kind_icons = {
Text = "", -- Text = "",
Method = "", -- Method = "",
Function = "", -- Function = "⨐",
Constructor = "", -- Constructor = "",
Field = "", -- Field = "",
Variable = "μ", -- Variable = "μ",
Class = "", -- Class = "",
Interface = "", -- Interface = "",
Module = "", -- Module = "",
Property = "", -- Property = "",
Unit = "", -- Unit = "",
Value = "", -- Value = "",
Enum = "", -- Enum = "",
Keyword = "", -- Keyword = "",
Snippet = "", -- Snippet = "",
Color = "", -- Color = "፨",
File = "", -- File = "",
Reference = "", -- Reference = "",
Folder = "", -- Folder = "",
EnumMember = "", -- EnumMember = "",
Constant = "", -- Constant = "",
Struct = "", -- Struct = "",
Event = "", -- Event = "",
Operator = "", -- Operator = "",
TypeParameter = "", -- TypeParameter = "",
} -- }
local colors = { local colors = {
blue = "#80a0ff", blue = "#80a0ff",
@ -56,3 +56,25 @@ local bubbles_theme = {
c = { fg = colors.white }, c = { fg = colors.white },
}, },
} }
do
function setup()
require("ufo").setup({
provider_selector = function(bufnr, filetype, buftype)
return { "treesitter", "indent" }
end,
})
require("ufo").setup({})
vim.o.foldcolumn = "1" -- '0' is not bad
vim.o.foldlevel = 99 -- Using ufo provider need a large value, feel free to decrease the value
vim.o.foldlevelstart = 99
vim.o.foldenable = true
end
success, output = pcall(setup) -- execute 'setup()' and catch any errors
if not success then
print("Error on setup for plugin: ufo")
print(output)
end
end