Compare commits

...

21 Commits

Author SHA1 Message Date
Ching Pei Yang 5b98cb5000
Merge af72dc105d into f59a915da9 2024-05-18 21:51:38 +00:00
raf f59a915da9
Merge pull request #294 from NotAShelf/smaller-nixpkgs-input
flake: switch to nixos-unstable-small
2024-05-18 21:50:55 +00:00
NotAShelf 60d9ebb3f0
flake: bump plugin inputs 2024-05-19 00:44:13 +03:00
NotAShelf bb06827474
flake: switch to nixos-unstable-small 2024-05-18 16:45:56 +03:00
NotAShelf 9d0247c599
statusline/lualine: add a left separator to the `searchcount` component 2024-05-17 19:10:58 +03:00
NotAShelf f0f2c08e9f
lsp/null-ls: use string type for diagnostic format 2024-05-16 19:35:19 +03:00
NotAShelf cfbed8ceb1
modules/wrapper: remove redundant instances of `literalExpression` 2024-05-16 19:13:44 +03:00
NotAShelf 1ce25d7ca3
modules: reorder args 2024-05-16 19:11:39 +03:00
NotAShelf eefc7a9d1d
lsp/null-lsp: allow null-ls options to be configured
This should probably still be converted to setupOpts. Missing docs
2024-05-16 19:11:37 +03:00
NotAShelf 74c94b8a54
flake: fix recursive module alias 2024-05-16 19:11:36 +03:00
raf 74df3a5f03
Merge pull request #292 from jacekpoz/main
languages/ocaml: init
2024-05-16 13:32:44 +00:00
jacekpoz 7224c1e6af
languages/ocaml: add ocaml to maximal config 2024-05-16 14:39:43 +02:00
jacekpoz f343ab8b3a
languages/ocaml: add formatter to nvf's env 2024-05-16 14:25:23 +02:00
jacekpoz 208d1e6741
languages/ocaml: follow other languages' format 2024-05-16 14:25:07 +02:00
NotAShelf 493854e44f
lualine: improve consistency between components; add more diagnostic sources 2024-05-16 07:45:15 +03:00
jacekpoz cc0aba4e21
languages/ocaml: add formatting support 2024-05-15 21:09:46 +02:00
jacekpoz db810bbf9f
languages/ocaml: init 2024-05-15 20:40:15 +02:00
raf 1fd4a2a1b8
Merge pull request #291 from NotAShelf/lualine-refactor
lualine: increase theme compatibility; fix component definitions
2024-05-15 15:38:15 +00:00
NotAShelf 7cafa56cdb
docs: update 0.7 release notes 2024-05-15 13:09:46 +03:00
NotAShelf b5f38b8e5e
lualine: increase theme compatibility; fix component definitions 2024-05-15 13:09:45 +03:00
NotAShelf 355d4830e5
flake: update inputs 2024-05-15 13:09:19 +03:00
13 changed files with 398 additions and 259 deletions

View File

@ -73,6 +73,7 @@ inputs: let
go.enable = isMaximal;
elixir.enable = isMaximal;
zig.enable = isMaximal;
ocaml.enable = isMaximal;
python.enable = isMaximal;
dart.enable = isMaximal;
bash.enable = isMaximal;

View File

@ -35,3 +35,10 @@ Release notes for release 0.7
to nixpkgs. A pull request is currently open.
- Remove vim-tidal and friends
- Cleaned up Lualine module to reduce theme dependency on Catppuccin, and fixed
blending issues in component separators.
[jacekpoz](https://github.com/jacekpoz):
- Added [ocaml-lsp](https://github.com/ocaml/ocaml-lsp) support.

View File

@ -21,11 +21,11 @@
"nixpkgs-lib": "nixpkgs-lib"
},
"locked": {
"lastModified": 1714641030,
"narHash": "sha256-yzcRNDoyVP7+SCNX0wmuDju1NUCt8Dz9+lyUXEI0dbI=",
"lastModified": 1715865404,
"narHash": "sha256-/GJvTdTpuDjNn84j82cU6bXztE0MSkdnTWClUCRub78=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "e5d10a24b66c3ea8f150e47dfdb0416ab7c3390e",
"rev": "8dc45382d5206bd292f9c2768b8058a8fd8311d9",
"type": "github"
},
"original": {
@ -114,16 +114,16 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1715087517,
"narHash": "sha256-CLU5Tsg24Ke4+7sH8azHWXKd0CFd4mhLWfhYgUiDBpQ=",
"lastModified": 1716041078,
"narHash": "sha256-ewjE7eVBVmjh8faip3RW+I3WzQZ3iywQVyxZfjunfH0=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "b211b392b8486ee79df6cdfb1157ad2133427a29",
"rev": "04496f014fcf27fdcede464d5de8558e12b5710c",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"ref": "nixos-unstable-small",
"repo": "nixpkgs",
"type": "github"
}
@ -335,11 +335,11 @@
"plugin-cmp-nvim-lsp": {
"flake": false,
"locked": {
"lastModified": 1702205473,
"narHash": "sha256-/0sh9vJBD9pUuD7q3tNSQ1YLvxFMNykdg5eG+LjZAA8=",
"lastModified": 1715931395,
"narHash": "sha256-CT1+Z4XJBVsl/RqvJeGmyitD6x7So0ylXvvef5jh7I8=",
"owner": "hrsh7th",
"repo": "cmp-nvim-lsp",
"rev": "5af77f54de1b16c34b23cba810150689a3a90312",
"rev": "39e2eda76828d88b773cc27a3f61d2ad782c922d",
"type": "github"
},
"original": {
@ -367,11 +367,11 @@
"plugin-cmp-treesitter": {
"flake": false,
"locked": {
"lastModified": 1702163214,
"narHash": "sha256-K7F9iqmB13ONenwsbaND8F4010MvHQXp7DxMFfcsZ4A=",
"lastModified": 1715596479,
"narHash": "sha256-8WAk9S+/7vSz7bVHdEzjbKUokU144fvnByIeJ1gAWhU=",
"owner": "ray-x",
"repo": "cmp-treesitter",
"rev": "13e4ef8f4dd5639fca2eb9150e68f47639a9b37d",
"rev": "958fcfa0d8ce46d215e19cc3992c542f576c4123",
"type": "github"
},
"original": {
@ -463,11 +463,11 @@
"plugin-crates-nvim": {
"flake": false,
"locked": {
"lastModified": 1715069896,
"narHash": "sha256-AhjnPo3SM7o7foj5ppv0CW+jfJe6ACerq4YFgJfY3/8=",
"lastModified": 1715690194,
"narHash": "sha256-R1y1OIep4tcFd4mhylZ/A2zdwOmEQtCzuVBOBYu0qUI=",
"owner": "Saecki",
"repo": "crates.nvim",
"rev": "7d8541ec0e3b30ac2c43864d3ee13a632e1231ed",
"rev": "d556c00d60c9421c913ee54ff690df2a34f6264e",
"type": "github"
},
"original": {
@ -479,11 +479,11 @@
"plugin-dashboard-nvim": {
"flake": false,
"locked": {
"lastModified": 1714906999,
"narHash": "sha256-euIAtegnJTH2hpFP0OAuvl7VpEV0Xu91h+w9p1uC3+0=",
"lastModified": 1715952164,
"narHash": "sha256-mLQHRzt9vUJLOO15+u7EaE2FGzIm1Ba7fqwdu5zaTYA=",
"owner": "glepnir",
"repo": "dashboard-nvim",
"rev": "a0a78099658c7d4be3714f657b18ca8285d5d106",
"rev": "5182c09ac8085dc73b78ad0ea9f5479c9a866fc4",
"type": "github"
},
"original": {
@ -495,11 +495,11 @@
"plugin-diffview-nvim": {
"flake": false,
"locked": {
"lastModified": 1700506468,
"narHash": "sha256-3EdnBUka9Rh5Brl6TWpN6GlD9z32mmY3Ip+wyiKob/8=",
"lastModified": 1716052902,
"narHash": "sha256-jbAeMJRybHQnsmTY2xeca4QJXXxdYVEK83d8NUSSnfQ=",
"owner": "sindrets",
"repo": "diffview.nvim",
"rev": "3dc498c9777fe79156f3d32dddd483b8b3dbd95f",
"rev": "9bdd5537575c2ea7925b71ae06585b934beea13d",
"type": "github"
},
"original": {
@ -527,11 +527,11 @@
"plugin-dressing-nvim": {
"flake": false,
"locked": {
"lastModified": 1713925216,
"narHash": "sha256-46r7X8CNuMgSB9X1jFLTQAiiBVqszkBP6DPlo6nBAxI=",
"lastModified": 1715888396,
"narHash": "sha256-zL+u9SUwzPZEYxaGZiRnezNUkcr8ZkdOMyGKSXF5xcQ=",
"owner": "stevearc",
"repo": "dressing.nvim",
"rev": "5162edb1442a729a885c45455a07e9a89058be2f",
"rev": "572314728cb1ce012e825fd66331f52c94acac12",
"type": "github"
},
"original": {
@ -559,11 +559,11 @@
"plugin-fidget-nvim": {
"flake": false,
"locked": {
"lastModified": 1712242924,
"narHash": "sha256-fZhK5opGXRRryhNpdaEPLpBq4tTibZREelXmasMLHzw=",
"lastModified": 1716068358,
"narHash": "sha256-WT1KnFXC/jjd9tQEiJ7f5mU9FMK++TSOItxZyl6G8GM=",
"owner": "j-hui",
"repo": "fidget.nvim",
"rev": "1ba38e4cbb24683973e00c2e36f53ae64da38ef5",
"rev": "a2ece932b663898d4015f458ce7ad92c389690ba",
"type": "github"
},
"original": {
@ -575,11 +575,11 @@
"plugin-flutter-tools": {
"flake": false,
"locked": {
"lastModified": 1713525182,
"narHash": "sha256-krcaaDPJsftkrcEov1QdKQUQBH6+PgjNwFamWpmNFkU=",
"lastModified": 1716029468,
"narHash": "sha256-nMP1LVUViKeL2BaYr/oAbqVKmOZ1SomWozKz4OYaovU=",
"owner": "akinsho",
"repo": "flutter-tools.nvim",
"rev": "f04131d6b2c82c2a7624a8843642d6269b50b437",
"rev": "c19f94576f866888f1b84aa73c690b30de4b86fb",
"type": "github"
},
"original": {
@ -591,11 +591,11 @@
"plugin-gesture-nvim": {
"flake": false,
"locked": {
"lastModified": 1715081943,
"narHash": "sha256-h6alx5TjskXYQ3H9fFfC4QyxsGbpjQkoZFVvLi1sgFI=",
"lastModified": 1715776261,
"narHash": "sha256-XgF5BTKR5IiELNqYDvOPIGMw3HtkyNd3K5SOGfYFizY=",
"owner": "notomo",
"repo": "gesture.nvim",
"rev": "591b350bfc87932a748f4838ad724eea6fb073e0",
"rev": "3750313a40a752629e3e90f3c3e591969fdab388",
"type": "github"
},
"original": {
@ -639,11 +639,11 @@
"plugin-gruvbox": {
"flake": false,
"locked": {
"lastModified": 1715085640,
"narHash": "sha256-2Ad5I+peKCD2BCm4m/QIjqpW08qQvrY+o3bK5UEy1x8=",
"lastModified": 1715974972,
"narHash": "sha256-BDBNeXf189K7l53IaWKWo0eta79cAuYKW0kP6jYfV1w=",
"owner": "ellisonleao",
"repo": "gruvbox.nvim",
"rev": "c442515506caa166118e157980f62a9ac24fa8c3",
"rev": "4f8e2dc9e8cdfdd3a988227c2c347043a46f51a4",
"type": "github"
},
"original": {
@ -703,11 +703,11 @@
"plugin-image-nvim": {
"flake": false,
"locked": {
"lastModified": 1714464812,
"narHash": "sha256-UfJzROXnjaiF+kIaBYAt5GSL107vT5NrpXj+Gh535Yk=",
"lastModified": 1715966662,
"narHash": "sha256-2f7ss/QTohYSp0EqaFnBtQeOjI+3fIn+Wmgy/TcfbDk=",
"owner": "3rd",
"repo": "image.nvim",
"rev": "604692f493519128c58893c28273d4247bc71a4d",
"rev": "da64ce69598875c9af028afe129f916b02ccc42e",
"type": "github"
},
"original": {
@ -719,11 +719,11 @@
"plugin-indent-blankline": {
"flake": false,
"locked": {
"lastModified": 1710388427,
"narHash": "sha256-Xp8ZQBz0in2MX3l0bnLUsSbH0lDPE+QvdmFpBFry5yY=",
"lastModified": 1716042154,
"narHash": "sha256-qlFoZ/GDsbnIhMoT+esNxheC3I9guxiV2DQYlY9kcMM=",
"owner": "lukas-reineke",
"repo": "indent-blankline.nvim",
"rev": "3d08501caef2329aba5121b753e903904088f7e6",
"rev": "ece00d5fb44d196680a81fd2761062d2fa44663b",
"type": "github"
},
"original": {
@ -735,11 +735,11 @@
"plugin-leap-nvim": {
"flake": false,
"locked": {
"lastModified": 1714857300,
"narHash": "sha256-RodnRoiQTH/+XoPk30neLiYIptPJnCvL94keIQXjq2g=",
"lastModified": 1715716911,
"narHash": "sha256-vRL++RVDywO6nP5dHQiO1NSQ17SMmHm4AgjTQfv642o=",
"owner": "ggandor",
"repo": "leap.nvim",
"rev": "f1f19fc268b406b00b50091f51f16d9634fbe449",
"rev": "b1ecfb63c0b8babfd0dcd6b5ca6de37bbf3526cd",
"type": "github"
},
"original": {
@ -751,11 +751,11 @@
"plugin-lsp-lines": {
"flake": false,
"locked": {
"lastModified": 1709989705,
"narHash": "sha256-opViLzbwtyUgDoaVKz4z6SN06N8jCQ0YmoqPIht8e64=",
"lastModified": 1715965937,
"narHash": "sha256-C3m91uwldDwaZlYjb6j2sPlvO6ADqhl0AmUWZVYEDHo=",
"owner": "~whynothugo",
"repo": "lsp_lines.nvim",
"rev": "6f3defec73f7c87939e800e9afa5d0571b19b401",
"rev": "d2facc98064934ebd480cd563212a84d957075fe",
"type": "sourcehut"
},
"original": {
@ -767,11 +767,11 @@
"plugin-lsp-signature": {
"flake": false,
"locked": {
"lastModified": 1710647656,
"narHash": "sha256-O7y7pcCvF0xUFamG+wMLe4mC6hUQ679rJV+ZUoWB0oY=",
"lastModified": 1715342515,
"narHash": "sha256-f4AuZnt2m2VA90baSbZt6+elzjXmJKPFTO28v8auoYc=",
"owner": "ray-x",
"repo": "lsp_signature.nvim",
"rev": "c6aeb2f1d2538bbdfdaab1664d9d4c3c75aa9db8",
"rev": "aed5d1162b0f07bb3af34bedcc5f70a2b6466ed8",
"type": "github"
},
"original": {
@ -911,11 +911,11 @@
"plugin-noice-nvim": {
"flake": false,
"locked": {
"lastModified": 1714737209,
"narHash": "sha256-jR9tX6AhY+DXPqGXqGqCkG/sL9+mLxpwOqfwjHHN0Ac=",
"lastModified": 1716037348,
"narHash": "sha256-/dtOpAjzgMJHSjV9AZcR991I/r9xaMnpg0/1c6NdItg=",
"owner": "folke",
"repo": "noice.nvim",
"rev": "f4decbc7a80229ccc9f86026b74bdcf0c39e38a7",
"rev": "9f6f6ba74f8bfbf7e43d6302cf86b070362f6203",
"type": "github"
},
"original": {
@ -944,11 +944,11 @@
"plugin-nui-nvim": {
"flake": false,
"locked": {
"lastModified": 1714991123,
"narHash": "sha256-W5w8mWjZhf8rhFYDJX4vPAszxKX6uLgT7+8xg3dY4Ok=",
"lastModified": 1716019714,
"narHash": "sha256-JRVVRT1CZZTjr58L+gAer7eCg9/fMdAD0YD5ljNwl0Q=",
"owner": "MunifTanjim",
"repo": "nui.nvim",
"rev": "a3597dc88b53489d3fddbddbbd13787355253bb0",
"rev": "b1b3dcd6ed8f355c78bad3d395ff645be5f8b6ae",
"type": "github"
},
"original": {
@ -960,11 +960,11 @@
"plugin-nvim-autopairs": {
"flake": false,
"locked": {
"lastModified": 1714895218,
"narHash": "sha256-LMRt1XEoeHB3blfjI0SsQr4goMUmwjoMGS2LcR3ye20=",
"lastModified": 1715818272,
"narHash": "sha256-qcfYChucUpRFKMfB+IphmIPzH/HgobVDK44wDtVXSnU=",
"owner": "windwp",
"repo": "nvim-autopairs",
"rev": "14e97371b2aab6ee70054c1070a123dfaa3e217e",
"rev": "b0b79e42a28f09719a7da9534c3731fa37319d9b",
"type": "github"
},
"original": {
@ -992,11 +992,11 @@
"plugin-nvim-cmp": {
"flake": false,
"locked": {
"lastModified": 1715160812,
"narHash": "sha256-/zTOFwCSBETBgkILpP8h82ZjN7LiMV0Uk5d2TEnQVU4=",
"lastModified": 1715954188,
"narHash": "sha256-GhXfnWqpXFVM7Yi9+qEXHfA6LIMILcMG9pP4VYXuptE=",
"owner": "hrsh7th",
"repo": "nvim-cmp",
"rev": "cd2cf0c124d3de577fb5449746568ee8e601afc8",
"rev": "5260e5e8ecadaf13e6b82cf867a909f54e15fd07",
"type": "github"
},
"original": {
@ -1056,11 +1056,11 @@
"plugin-nvim-dap": {
"flake": false,
"locked": {
"lastModified": 1713432622,
"narHash": "sha256-kEn2INrNMQSLHY3gpSVV+cTx9f1nFeUCM6by9WGn5Sg=",
"lastModified": 1715872903,
"narHash": "sha256-UZm2DA19uBeL2L5JKAZilqBTTPSA5X3ZEcAVJUq65p8=",
"owner": "mfussenegger",
"repo": "nvim-dap",
"rev": "6ae8a14828b0f3bff1721a35a1dfd604b6a933bb",
"rev": "5a2f7121869394502521c52b2bc581ab22c69447",
"type": "github"
},
"original": {
@ -1120,11 +1120,11 @@
"plugin-nvim-lspconfig": {
"flake": false,
"locked": {
"lastModified": 1715152811,
"narHash": "sha256-LMzLDbkKVmRRhwaUaroCRGUsKe/fwzgwV1gbvr/t6WQ=",
"lastModified": 1716002336,
"narHash": "sha256-Ofat8It2TCjxnMPHmQ5fZTeJDpMTIrDMGHXle66IWe8=",
"owner": "neovim",
"repo": "nvim-lspconfig",
"rev": "a3d9395455f2b2e3b50a0b0f37b8b4c23683f44a",
"rev": "6d2ae9fdc3111a6e8fd5db2467aca11737195a30",
"type": "github"
},
"original": {
@ -1200,11 +1200,11 @@
"plugin-nvim-notify": {
"flake": false,
"locked": {
"lastModified": 1708161547,
"narHash": "sha256-xJYPOX4YLcWojMCdP1RO22/7FMrbcBQxqxrcVCE2TrU=",
"lastModified": 1715959703,
"narHash": "sha256-wxyHwL/uFdp6w32CVHgSOWkzRrIRuFvWh+J2401RAAA=",
"owner": "rcarriga",
"repo": "nvim-notify",
"rev": "5371f4bfc1f6d3adf4fe9d62cd3a9d44356bfd15",
"rev": "d333b6f167900f6d9d42a59005d82919830626bf",
"type": "github"
},
"original": {
@ -1216,11 +1216,11 @@
"plugin-nvim-session-manager": {
"flake": false,
"locked": {
"lastModified": 1714905094,
"narHash": "sha256-VduhmnnRPIdi6GZ+TZUnZfpY4Lt8z5JBTKgl7oobtdY=",
"lastModified": 1715419340,
"narHash": "sha256-SrJJWC/newJRB879zMUbLzOJQ8qtcHfLF/7GLPFlSRQ=",
"owner": "Shatur",
"repo": "neovim-session-manager",
"rev": "892c55f7256fe170301a1fdd21752982c75c3507",
"rev": "a0b9d25154be573bc0f99877afb3f57cf881cce7",
"type": "github"
},
"original": {
@ -1232,11 +1232,11 @@
"plugin-nvim-surround": {
"flake": false,
"locked": {
"lastModified": 1714506343,
"narHash": "sha256-PJdkmTzuRldPTdaoerdddOL0/+V/KyNSzFBBee6P4kU=",
"lastModified": 1715892699,
"narHash": "sha256-Mg60htwXPqNKu+JnexKiKF3Huvr7pBNdvc6f3Kt2FRA=",
"owner": "kylechui",
"repo": "nvim-surround",
"rev": "6d0dc3dbb557bcc6a024969da461df4ba803fc48",
"rev": "79aaa42da1f698ed31bcbe7f83081f69dca7ba17",
"type": "github"
},
"original": {
@ -1248,11 +1248,11 @@
"plugin-nvim-tree-lua": {
"flake": false,
"locked": {
"lastModified": 1714794673,
"narHash": "sha256-rY4FbuqBM4zOUkaA3QBc+UrpfTha8uGtp+lIzrYK+cg=",
"lastModified": 1715647490,
"narHash": "sha256-YqHAEztx6gEEm0GoDXC5djnIP030oGGRcskp8LPqVoc=",
"owner": "nvim-tree",
"repo": "nvim-tree.lua",
"rev": "64f61e4c913047a045ff90bd188dd3b54ee443cf",
"rev": "2bc725a3ebc23f0172fb0ab4d1134b81bcc13812",
"type": "github"
},
"original": {
@ -1264,11 +1264,11 @@
"plugin-nvim-treesitter-context": {
"flake": false,
"locked": {
"lastModified": 1714689136,
"narHash": "sha256-gHbLt0ApyPPQU8Q+lde0Zv8XBR6pESKzvIzIXHkd5eI=",
"lastModified": 1715954279,
"narHash": "sha256-CriN45mFfyjTt14RJnmzXidACHJXUaA6XPwAoEtQUzg=",
"owner": "nvim-treesitter",
"repo": "nvim-treesitter-context",
"rev": "2650e6431f7daba5d9c2c64134fa5eb2312eb3d7",
"rev": "55e29081e73d2e4b2d62fb4dc3eebe21bf66a1e2",
"type": "github"
},
"original": {
@ -1280,11 +1280,11 @@
"plugin-nvim-ts-autotag": {
"flake": false,
"locked": {
"lastModified": 1707265789,
"narHash": "sha256-cPIEIjcYxX3ZkOyou2mYlHMdhBxCoVTpJVXZtiWe9Ks=",
"lastModified": 1716038325,
"narHash": "sha256-gh+DhC7+8O4z4lG/RIaMJgumnq/Vg5eWa6j/P8MQk0s=",
"owner": "windwp",
"repo": "nvim-ts-autotag",
"rev": "531f48334c422222aebc888fd36e7d109cb354cd",
"rev": "aeb7090098722ffce16597bd0331105495640153",
"type": "github"
},
"original": {
@ -1296,11 +1296,11 @@
"plugin-nvim-web-devicons": {
"flake": false,
"locked": {
"lastModified": 1715028064,
"narHash": "sha256-DSUTxUFCesXuaJjrDNvurILUt1IrO5MI5ukbZ8D87zQ=",
"lastModified": 1715644375,
"narHash": "sha256-1trRSUVyWFl3K+7xHXQGNl/EwE0ggyigQpZ+kmRPsk8=",
"owner": "nvim-tree",
"repo": "nvim-web-devicons",
"rev": "5b9067899ee6a2538891573500e8fd6ff008440f",
"rev": "e37bb1feee9e7320c76050a55443fa843b4b6f83",
"type": "github"
},
"original": {
@ -1312,11 +1312,11 @@
"plugin-obsidian-nvim": {
"flake": false,
"locked": {
"lastModified": 1715192893,
"narHash": "sha256-lGnEEFp/MU5sciq6bH5YKAiFx7kf9tTYqE+eB8zvf7A=",
"lastModified": 1715965562,
"narHash": "sha256-PiaPmQ11Wx57ojCG4G50Rwr+phanvuoBqbPHg3N4eGw=",
"owner": "epwalsh",
"repo": "obsidian.nvim",
"rev": "2e1f03416583232899dc1b6e27673da5e705abef",
"rev": "7b59d907a3ee6952c58e07139cf021a205692338",
"type": "github"
},
"original": {
@ -1328,11 +1328,11 @@
"plugin-onedark": {
"flake": false,
"locked": {
"lastModified": 1706527208,
"narHash": "sha256-1+aO8vrUGEe/NIVI1C1xJyuQVPQZ1s510lopkEVP7No=",
"lastModified": 1715454207,
"narHash": "sha256-GERMsVNELbeRrKsiPeSKcwNI+bH4C79koTBRtRMGqvc=",
"owner": "navarasu",
"repo": "onedark.nvim",
"rev": "1230aaf2a427b2c5b73aba6e4a9a5881d3e69429",
"rev": "8e4b79b0e6495ddf29552178eceba1e147e6cecf",
"type": "github"
},
"original": {
@ -1344,11 +1344,11 @@
"plugin-orgmode-nvim": {
"flake": false,
"locked": {
"lastModified": 1715114055,
"narHash": "sha256-SmofuYt4fLhtl5qedYlmCRgOmZaw3nmlnMg0OMzyKnM=",
"lastModified": 1715953175,
"narHash": "sha256-vhygnZNJceJHq4gQm6h0zv/Cgp9+fSeWuL1Varrws1U=",
"owner": "nvim-orgmode",
"repo": "orgmode",
"rev": "cda615fa7c8607bfb7aaf7d2c9424dd5969f2625",
"rev": "dbcff9e8d9df48bfff95f7204ca483c11864a755",
"type": "github"
},
"original": {
@ -1424,11 +1424,11 @@
"plugin-rose-pine": {
"flake": false,
"locked": {
"lastModified": 1713451685,
"lastModified": 1715697761,
"narHash": "sha256-AdPSz5+nCOnLWexBasHuxRxEKbL4WVg+uV78//W5nLs=",
"owner": "rose-pine",
"repo": "neovim",
"rev": "17b466e79479758b332a3cac12544a3ad2be6241",
"rev": "b6fe88c3282cf9f117a3e836d761c2d78d02f417",
"type": "github"
},
"original": {
@ -1520,11 +1520,11 @@
"plugin-telescope": {
"flake": false,
"locked": {
"lastModified": 1714700089,
"narHash": "sha256-SoEetPE7f7Y0kUa4+7dH+EOs/0WBsMDxeOkbVNuoSjE=",
"lastModified": 1715968939,
"narHash": "sha256-+h0L5vpwXFNDuzE5Dne5zWuKtZ1mquAhdplHcUxPg8w=",
"owner": "nvim-telescope",
"repo": "telescope.nvim",
"rev": "fac83a556e7b710dc31433dec727361ca062dbe9",
"rev": "0c12735d5aff6a48ffd8111bf144dc2ff44e5975",
"type": "github"
},
"original": {
@ -1568,11 +1568,11 @@
"plugin-tokyonight": {
"flake": false,
"locked": {
"lastModified": 1713855116,
"narHash": "sha256-vUEPbgDen3ubcyJZdWCgnChOo1T0LFvZI++8RgGGx1Y=",
"lastModified": 1715879379,
"narHash": "sha256-lJjBsAguMDA765lfxfUwU0I0tWmAESLCv9yiVrhTYDo=",
"owner": "folke",
"repo": "tokyonight.nvim",
"rev": "67afeaf7fd6ebba000633e89f63c31694057edde",
"rev": "634015fff1457ed66cf5364213a2bbbc51a82d6c",
"type": "github"
},
"original": {
@ -1616,11 +1616,11 @@
"plugin-vim-fugitive": {
"flake": false,
"locked": {
"lastModified": 1714601825,
"narHash": "sha256-0ujueJ226zEmjkFwodSukO1Zu5gMvTmx/dCtT5VBhek=",
"lastModified": 1715976636,
"narHash": "sha256-517q3oPvshwUBhXEDuB23S0RPuHvSZWK/1tr6wDhEyA=",
"owner": "tpope",
"repo": "vim-fugitive",
"rev": "ce882460cf3db12e99f8bf579cbf99e331f6dd4f",
"rev": "5a9bd42dd8dd127779f3cd8982a0419b7ca9c7f5",
"type": "github"
},
"original": {
@ -1632,11 +1632,11 @@
"plugin-vim-illuminate": {
"flake": false,
"locked": {
"lastModified": 1713467568,
"narHash": "sha256-o0D1edrsHkaljrzBFZXjdxiK/5ziCGJxM/kYNJgBI1E=",
"lastModified": 1715960194,
"narHash": "sha256-DdJzTHxoOv+vjFymETa2MgXpM/qDwvZjpoo1W8OOBj0=",
"owner": "RRethy",
"repo": "vim-illuminate",
"rev": "e522e0dd742a83506db0a72e1ced68c9c130f185",
"rev": "5eeb7951fc630682c322e88a9bbdae5c224ff0aa",
"type": "github"
},
"original": {
@ -1930,11 +1930,11 @@
"nixpkgs": "nixpkgs_3"
},
"locked": {
"lastModified": 1715170163,
"narHash": "sha256-EuRzY3HI9sMMqPX7Yb7xkZaBoznP0mtS2O/Kk/r6fYk=",
"lastModified": 1715775020,
"narHash": "sha256-CCqc3c3yvXgRaTW18epSHlF2HeikwNXqxnlrRs2sl3Y=",
"owner": "mitchellh",
"repo": "zig-overlay",
"rev": "9c0a853edcab5d60d28784c10b13392d7fabb9d7",
"rev": "03303bf01701b04ec87c55ce5d8d6f5ecf86d0a7",
"type": "github"
},
"original": {

View File

@ -47,7 +47,7 @@
nixosModules.neovim-flake has been deprecated.
Please use the nixosModules.nvf instead
''
self.nixosModules.neovim-flake;
self.nixosModules.nvf;
nvf = {
imports = [(import ./flake/modules/nixos.nix self.packages inputs)];
@ -77,7 +77,7 @@
# Flake inputs
inputs = {
## Basic Inputs
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable-small";
flake-parts.url = "github:hercules-ci/flake-parts";
flake-utils.url = "github:numtide/flake-utils";
systems.url = "github:nix-systems/default";

View File

@ -25,7 +25,7 @@ inputs: {
# check can be disabled while calling this file is called
# to avoid checking in all modules
nvimModules = import ./modules.nix {
inherit check pkgs;
inherit pkgs check;
lib = extendedLib;
};

View File

@ -1,7 +1,7 @@
{
check ? true,
pkgs,
lib,
check ? true,
}: let
inherit (lib.modules) mkDefault;
inherit (lib.lists) concatLists;

View File

@ -14,6 +14,7 @@ in {
./markdown.nix
./nim.nix
./nix.nix
./ocaml.nix
./php.nix
./python.nix
./rust.nix

View File

@ -0,0 +1,105 @@
{
config,
pkgs,
lib,
...
}: let
inherit (builtins) attrNames;
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.meta) getExe;
inherit (lib.lists) isList;
inherit (lib.types) either enum listOf package str;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.lua) expToLua;
cfg = config.vim.languages.ocaml;
defaultServer = "ocaml-lsp";
servers = {
ocaml-lsp = {
package = pkgs.ocamlPackages.ocaml-lsp;
lspConfig = ''
lspconfig.ocamllsp.setup {
capabilities = capabilities,
on_attach = default_on_attach,
cmd = ${
if isList cfg.lsp.package
then expToLua cfg.lsp.package
else ''{"${getExe cfg.lsp.package}"}''
};
}
'';
};
};
defaultFormat = "ocamlformat";
formats = {
ocamlformat = {
package = pkgs.ocamlPackages.ocamlformat;
nullConfig = ''
table.insert(
ls_sources,
null_ls.builtins.formatting.ocamlformat.with({
command = "${cfg.format.package}/bin/ocamlformat",
})
)
'';
};
};
in {
options.vim.languages.ocaml = {
enable = mkEnableOption "OCaml language support";
treesitter = {
enable = mkEnableOption "OCaml treesitter" // {default = config.vim.languages.enableTreesitter;};
package = mkGrammarOption pkgs "ocaml";
};
lsp = {
enable = mkEnableOption "OCaml LSP support (ocaml-lsp)" // {default = config.vim.languages.enableLSP;};
server = mkOption {
description = "OCaml LSP server to user";
type = enum (attrNames servers);
default = defaultServer;
};
package = mkOption {
description = "OCaml language server package, or the command to run as a list of strings";
type = either package (listOf str);
default = servers.${cfg.lsp.server}.package;
};
};
format = {
enable = mkEnableOption "OCaml formatting support (ocamlformat)" // {default = config.vim.languages.enableFormat;};
type = mkOption {
description = "OCaml formatter to use";
type = enum (attrNames formats);
default = defaultFormat;
};
package = mkOption {
description = "OCaml formatter package";
type = package;
default = formats.${cfg.format.type}.package;
};
};
};
config = mkIf cfg.enable (mkMerge [
(mkIf cfg.lsp.enable {
vim.lsp.lspconfig.enable = true;
vim.lsp.lspconfig.sources.ocaml-lsp = servers.${cfg.lsp.server}.lspConfig;
})
(mkIf cfg.treesitter.enable {
vim.treesitter.enable = true;
vim.treesitter.grammars = [cfg.treesitter.package];
})
(mkIf cfg.format.enable {
vim.lsp.null-ls.enable = true;
vim.lsp.null-ls.sources.ocamlformat = formats.${cfg.format.type}.nullConfig;
vim.extraPackages = [formats.${cfg.format.type}.package];
})
]);
}

View File

@ -5,6 +5,7 @@
}: let
inherit (lib.modules) mkIf mkMerge;
inherit (lib.attrsets) mapAttrs;
inherit (lib.trivial) boolToString;
inherit (lib.nvim.dag) entryAnywhere entryAfter entryBetween;
cfg = config.vim.lsp;
@ -12,26 +13,36 @@ in {
config = mkIf cfg.null-ls.enable (mkMerge [
{
vim = {
startPlugins = [
"none-ls"
"plenary-nvim"
];
# null-ls implies LSP already being set up
# since it will hook into LSPs to receive information
lsp.enable = true;
startPlugins = ["none-ls"];
luaConfigRC.null_ls-setup = entryAnywhere ''
local null_ls = require("null-ls")
local null_helpers = require("null-ls.helpers")
local null_methods = require("null-ls.methods")
local ls_sources = {}
'';
luaConfigRC = {
# early setup for null-ls
null_ls-setup = entryAnywhere ''
local null_ls = require("null-ls")
local null_helpers = require("null-ls.helpers")
local null_methods = require("null-ls.methods")
local ls_sources = {}
'';
luaConfigRC.null_ls = entryAfter ["null_ls-setup" "lsp-setup"] ''
require('null-ls').setup({
debug = false,
diagnostics_format = "[#{m}] #{s} (#{c})",
debounce = 250,
default_timeout = 5000,
sources = ls_sources,
on_attach = default_on_attach
})
'';
# null-ls setup
null_ls = entryAfter ["null_ls-setup" "lsp-setup"] ''
require('null-ls').setup({
debug = ${boolToString cfg.null-ls.debug},
diagnostics_format = "${cfg.null-ls.diagnostics_format}",
debounce = ${toString cfg.null-ls.debounce},
default_timeout = ${toString cfg.null-ls.default_timeout},
sources = ls_sources,
on_attach = default_on_attach
})
'';
};
};
}
{

View File

@ -1,10 +1,30 @@
{lib, ...}: let
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.types) attrsOf str;
inherit (lib.types) attrsOf str int;
in {
options.vim.lsp.null-ls = {
enable = mkEnableOption "null-ls, also enabled automatically";
debug = mkEnableOption "debugging information for `null-ls";
diagnostics_format = mkOption {
type = str;
default = "[#{m}] #{s} (#{c})";
description = "Diagnostic output format for null-ls";
};
debounce = mkOption {
type = int;
default = 250;
description = "Default debounce";
};
default_timeout = mkOption {
type = int;
default = 5000;
description = "Default timeout value, in miliseconds";
};
sources = mkOption {
description = "null-ls sources";
type = attrsOf str;

View File

@ -3,6 +3,7 @@
lib,
...
}: let
inherit (builtins) map;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.trivial) boolToString;
inherit (lib.nvim.dag) entryAnywhere;
@ -31,44 +32,46 @@ in {
};
})
(mkIf cfg.enable {
vim.startPlugins = [
"lualine"
];
vim = {
startPlugins = ["lualine"];
vim.luaConfigRC.lualine = entryAnywhere ''
local lualine = require('lualine')
lualine.setup ${toLuaObject cfg.setupOpts}
'';
luaConfigRC.lualine = entryAnywhere ''
local lualine = require('lualine')
lualine.setup ${toLuaObject cfg.setupOpts}
'';
# this is for backwards-compatibility
vim.statusline.lualine.setupOpts = {
options = {
icons_enabled = cfg.icons.enable;
theme = cfg.theme;
component_separators = [cfg.componentSeparator.left cfg.componentSeparator.right];
section_separators = [cfg.sectionSeparator.left cfg.sectionSeparator.right];
globalstatus = cfg.globalStatus;
refresh = cfg.refresh;
};
# this is for backwards-compatibility
statusline.lualine.setupOpts = {
options = {
icons_enabled = cfg.icons.enable;
theme = cfg.theme;
component_separators = [cfg.componentSeparator.left cfg.componentSeparator.right];
section_separators = [cfg.sectionSeparator.left cfg.sectionSeparator.right];
globalstatus = cfg.globalStatus;
refresh = cfg.refresh;
};
sections = {
lualine_a = builtins.map mkLuaInline (cfg.activeSection.a ++ cfg.extraActiveSection.a);
lualine_b = builtins.map mkLuaInline (cfg.activeSection.b ++ cfg.extraActiveSection.b);
lualine_c = builtins.map mkLuaInline (cfg.activeSection.c ++ cfg.extraActiveSection.c);
lualine_x = builtins.map mkLuaInline (cfg.activeSection.x ++ cfg.extraActiveSection.x);
lualine_y = builtins.map mkLuaInline (cfg.activeSection.y ++ cfg.extraActiveSection.y);
lualine_z = builtins.map mkLuaInline (cfg.activeSection.z ++ cfg.extraActiveSection.z);
sections = {
lualine_a = map mkLuaInline (cfg.activeSection.a ++ cfg.extraActiveSection.a);
lualine_b = map mkLuaInline (cfg.activeSection.b ++ cfg.extraActiveSection.b);
lualine_c = map mkLuaInline (cfg.activeSection.c ++ cfg.extraActiveSection.c);
lualine_x = map mkLuaInline (cfg.activeSection.x ++ cfg.extraActiveSection.x);
lualine_y = map mkLuaInline (cfg.activeSection.y ++ cfg.extraActiveSection.y);
lualine_z = map mkLuaInline (cfg.activeSection.z ++ cfg.extraActiveSection.z);
};
inactive_sections = {
lualine_a = map mkLuaInline (cfg.inactiveSection.a ++ cfg.extraInactiveSection.a);
lualine_b = map mkLuaInline (cfg.inactiveSection.b ++ cfg.extraInactiveSection.b);
lualine_c = map mkLuaInline (cfg.inactiveSection.c ++ cfg.extraInactiveSection.c);
lualine_x = map mkLuaInline (cfg.inactiveSection.x ++ cfg.extraInactiveSection.x);
lualine_y = map mkLuaInline (cfg.inactiveSection.y ++ cfg.extraInactiveSection.y);
lualine_z = map mkLuaInline (cfg.inactiveSection.z ++ cfg.extraInactiveSection.z);
};
# probably don't need this?
tabline = [];
};
inactive_sections = {
lualine_a = builtins.map mkLuaInline (cfg.inactiveSection.a ++ cfg.extraInactiveSection.a);
lualine_b = builtins.map mkLuaInline (cfg.inactiveSection.b ++ cfg.extraInactiveSection.b);
lualine_c = builtins.map mkLuaInline (cfg.inactiveSection.c ++ cfg.extraInactiveSection.c);
lualine_x = builtins.map mkLuaInline (cfg.inactiveSection.x ++ cfg.extraInactiveSection.x);
lualine_y = builtins.map mkLuaInline (cfg.inactiveSection.y ++ cfg.extraInactiveSection.y);
lualine_z = builtins.map mkLuaInline (cfg.inactiveSection.z ++ cfg.extraInactiveSection.z);
};
# probably don't need this?
tabline = [];
};
})
];

View File

@ -10,19 +10,45 @@
inherit (lib.nvim.types) mkPluginSetupOption;
supported_themes = import ./supported_themes.nix;
colorPuccin =
if config.vim.statusline.lualine.theme == "catppuccin"
then "#181825"
else "none";
builtin_themes = [
"auto"
"16color"
"gruvbox"
"ayu_dark"
"ayu_light"
"ayu_mirage"
"codedark"
"dracula"
"everforest"
"gruvbox"
"gruvbox_light"
"gruvbox_material"
"horizon"
"iceberg_dark"
"iceberg_light"
"jellybeans"
"material"
"modus_vivendi"
"molokai"
"nightfly"
"nord"
"oceanicnext"
"onelight"
"palenight"
"papercolor_dark"
"papercolor_light"
"powerline"
"seoul256"
"solarized_dark"
"tomorrow"
"wombat"
];
in {
options.vim.statusline.lualine = {
enable = mkEnableOption "lualine statusline plugin";
setupOpts = mkPluginSetupOption "Lualine" {};
enable = mkEnableOption "lualine statusline plugin";
icons = {
enable = mkEnableOption "icons for lualine" // {default = true;};
};
icons.enable = mkEnableOption "icons for lualine" // {default = true;};
refresh = {
statusline = mkOption {
@ -73,47 +99,15 @@ in {
theme = let
themeSupported = elem config.vim.theme.name supported_themes;
themesConcatted = builtin_themes ++ optional themeSupported config.vim.theme.name;
in
mkOption {
description = "Theme for lualine";
type = enum ([
"auto"
"16color"
"gruvbox"
"ayu_dark"
"ayu_light"
"ayu_mirage"
"codedark"
"dracula"
"everforest"
"gruvbox"
"gruvbox_light"
"gruvbox_material"
"horizon"
"iceberg_dark"
"iceberg_light"
"jellybeans"
"material"
"modus_vivendi"
"molokai"
"nightfly"
"nord"
"oceanicnext"
"onelight"
"palenight"
"papercolor_dark"
"papercolor_light"
"powerline"
"seoul256"
"solarized_dark"
"tomorrow"
"wombat"
]
++ optional themeSupported config.vim.theme.name);
type = enum themesConcatted;
default = "auto";
# TODO: xml generation error if the closing '' is on a new line.
# issue: https://gitlab.com/rycee/nmd/-/issues/10
defaultText = ''`config.vim.theme.name` if theme supports lualine else "auto"'';
description = "Theme for lualine";
};
sectionSeparator = {
@ -171,15 +165,14 @@ in {
"filetype",
colored = true,
icon_only = true,
icon = { align = 'left' },
color = {bg='${colorPuccin}', fg='lavender'},
icon = { align = 'left' }
}
''
''
{
"filename",
color = {bg='${colorPuccin}'},
symbols = {modified = '', readonly = ''},
symbols = {modified = ' ', readonly = ' '},
separator = {right = ''}
}
''
];
@ -200,13 +193,7 @@ in {
removed = 'DiffDelete', -- Changes the diff's removed color you
},
symbols = {added = '+', modified = '~', removed = '-'}, -- Changes the diff symbols
color = {
bg='${colorPuccin}',
fg='lavender'
},
separator = {
right = ''
},
separator = {right = ''}
}
''
];
@ -251,18 +238,17 @@ in {
return msg
end,
icon = ' ',
color = {bg='${colorPuccin}', fg='lavender'},
separator = {
left = '',
},
separator = {left = ''},
}
''
''
{
"diagnostics",
sources = {'nvim_lsp', 'nvim_diagnostic', 'coc'},
sources = {'nvim_lsp', 'nvim_diagnostic', 'nvim_diagnostic', 'vim_lsp', 'coc'},
symbols = {error = '󰅙 ', warn = ' ', info = ' ', hint = '󰌵 '},
color = {bg='${colorPuccin}', fg='lavender'},
colored = true,
update_in_insert = false,
always_visible = false,
diagnostics_color = {
color_error = { fg = 'red' },
color_warn = { fg = 'yellow' },
@ -282,14 +268,14 @@ in {
'searchcount',
maxcount = 999,
timeout = 120,
color = {bg='${colorPuccin}', fg='lavender'}
separator = {left = ''}
}
''
''
{
"branch",
icon = ' ',
color = {bg='${colorPuccin}', fg='lavender'},
separator = {left = ''}
}
''
];
@ -302,15 +288,11 @@ in {
''
{
"progress",
separator = {
left = '',
},
separator = {left = ''}
}
''
''
{
"location",
}
{"location"}
''
''
{
@ -320,38 +302,44 @@ in {
unix = '', -- e712
dos = '', -- e70f
mac = '', -- e711
},
}
}
''
];
};
};
extraActiveSection = {
a = mkOption {
type = listOf str;
description = "Extra entries for activeSection.a";
default = [];
};
b = mkOption {
type = listOf str;
description = "Extra entries for activeSection.b";
default = [];
};
c = mkOption {
type = listOf str;
description = "Extra entries for activeSection.c";
default = [];
};
x = mkOption {
type = listOf str;
description = "Extra entries for activeSection.x";
default = [];
};
y = mkOption {
type = listOf str;
description = "Extra entries for activeSection.y";
default = [];
};
z = mkOption {
type = listOf str;
description = "Extra entries for activeSection.z";
@ -402,26 +390,31 @@ in {
description = "Extra entries for inactiveSection.a";
default = [];
};
b = mkOption {
type = listOf str;
description = "Extra entries for inactiveSection.b";
default = [];
};
c = mkOption {
type = listOf str;
description = "Extra entries for inactiveSection.c";
default = [];
};
x = mkOption {
type = listOf str;
description = "Extra entries for inactiveSection.x";
default = [];
};
y = mkOption {
type = listOf str;
description = "Extra entries for inactiveSection.y";
default = [];
};
z = mkOption {
type = listOf str;
description = "Extra entries for inactiveSection.z";

View File

@ -3,7 +3,7 @@
lib,
...
}: let
inherit (lib.options) mkOption mkEnableOption literalExpression;
inherit (lib.options) mkOption mkEnableOption literalMD;
inherit (lib.types) package bool str listOf attrsOf;
inherit (lib.nvim.types) pluginsOpt extraPluginType;
in {
@ -38,7 +38,7 @@ in {
startPlugins = pluginsOpt {
default = ["plenary-nvim"];
example = literalExpression ''
example = ''
[pkgs.vimPlugins.telescope-nvim]
'';
@ -54,7 +54,7 @@ in {
optPlugins = pluginsOpt {
default = [];
example = literalExpression ''
example = ''
[pkgs.vimPlugins.vim-ghost]
'';
description = ''
@ -80,7 +80,8 @@ in {
your custom plugins using nvf's modified DAG library.
'';
example = literalExpression ''
example = literalMD ''
```nix
with pkgs.vimPlugins; {
aerial = {
package = aerial-nvim;
@ -93,13 +94,14 @@ in {
after = ["aerial"]; # place harpoon configuration after aerial
};
}
```
'';
};
extraPackages = mkOption {
type = listOf package;
default = [];
example = literalExpression ''[pkgs.fzf pkgs.ripgrep]'';
example = ''[pkgs.fzf pkgs.ripgrep]'';
description = ''
List of additional packages to make available to the Neovim
wrapper.
@ -107,7 +109,7 @@ in {
};
# this defaults to `true` in the wrapper
# and since we passs this value to the wrapper
# and since we pass this value to the wrapper
# with an inherit, it should be `true` here as well
withRuby =
mkEnableOption ''
@ -118,29 +120,25 @@ in {
};
withNodeJs = mkEnableOption ''
NodeJs support in the Neovim wrapper.
NodeJs support in the Neovim wrapper
'';
luaPackages = mkOption {
type = listOf str;
default = [];
example = literalExpression ''["magick" "serpent"]'';
description = ''
List of lua packages to install.
'';
example = ''["magick" "serpent"]'';
description = "List of lua packages to install";
};
withPython3 = mkEnableOption ''
Python3 support in the Neovim wrapper.
Python3 support in the Neovim wrapper
'';
python3Packages = mkOption {
type = listOf str;
default = [];
example = literalExpression ''["pynvim"]'';
description = ''
List of python packages to install.
'';
example = ''["pynvim"]'';
description = "List of python packages to install";
};
};
}