diff --git a/docs/manual/manual.md b/docs/manual/manual.md index 3d80b0c..905a724 100644 --- a/docs/manual/manual.md +++ b/docs/manual/manual.md @@ -17,6 +17,10 @@ configuring.md hacking.md ``` +```{=include=} appendix html:into-file=//plugins.html +plugins.md +``` + ```{=include=} appendix html:into-file=//options.html options.md ``` diff --git a/docs/manual/plugins.md b/docs/manual/plugins.md new file mode 100644 index 0000000..fa464d1 --- /dev/null +++ b/docs/manual/plugins.md @@ -0,0 +1,16 @@ +# Plugin specific quirks {#ch-plugins} + +At times, certain plugins refuse to play nicely. Be it as a result of generating +lua from Nix, or the state of packaging. This page shall list any plugins that +are known to misbehave, and potential workarounds. + +```{=include=} chapters +plugins/nodejs.md +``` + diff --git a/docs/manual/plugins/nodejs.md b/docs/manual/plugins/nodejs.md new file mode 100644 index 0000000..36b4c79 --- /dev/null +++ b/docs/manual/plugins/nodejs.md @@ -0,0 +1,18 @@ +# NodeJS {#ch-plugins-nodejs} + +## eslint-plugin-prettier {#sec-eslint-plugin-prettier} + +When working with NodeJS, everything works as expected, but some projects have settings that can fool nvf. + +If [this plugin](https://github.com/prettier/eslint-plugin-prettier) or similar is included, you might get a situation where your eslint configuration diagnoses your formatting according to its own config (usually `.eslintrc.js`). + +The issue there is your formatting is made via prettierd. + +This results in auto-formating relying on your prettier config, while your eslint config diagnoses formatting [which it's not supposed to](https://prettier.io/docs/en/comparison.html)) + +In the end, you get discrepancies between what your editor does and what it wants. + +Solutions are: + +1. Don't add a formatting config to eslint, and separate prettier and eslint. +2. PR this repo to add an ESLint formatter and configure nvf to use it. diff --git a/docs/release-notes/rl-0.7.md b/docs/release-notes/rl-0.7.md index 1dc5bc0..ca49c7d 100644 --- a/docs/release-notes/rl-0.7.md +++ b/docs/release-notes/rl-0.7.md @@ -6,7 +6,7 @@ Release notes for release 0.7 [ItsSorae](https://github.com/ItsSorae): -- Added support for [typst](https://typst.app/) under `vim.languages.typst` This +- Add support for [typst](https://typst.app/) under `vim.languages.typst` This will enable the `typst-lsp` language server, and the `typstfmt` formatter [frothymarrow](https://github.com/frothymarrow): @@ -15,6 +15,9 @@ Release notes for release 0.7 [](#opt-vim.visuals.fidget-nvim.setupOpts.progress.display.overrides) from `anything` to a `submodule` for better type checking. - Fix null `vim.lsp.mappings` generating an error and not being filtered out. +- Add basic transparency support for `oxocarbon` theme by setting the + highlight group for `Normal`, `NormalFloat`, `LineNr`, `SignColumn` and + optionally `NvimTreeNormal` to `none`. [horriblename](https://github.com/horriblename): @@ -38,9 +41,9 @@ Release notes for release 0.7 - Remove vim-tidal and friends -- Cleaned up Lualine module to reduce theme dependency on Catppuccin, and fixed +- Clean 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. +- Add [ocaml-lsp](https://github.com/ocaml/ocaml-lsp) support. diff --git a/flake.lock b/flake.lock index 1569668..11a42ab 100644 --- a/flake.lock +++ b/flake.lock @@ -114,11 +114,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1716041078, - "narHash": "sha256-ewjE7eVBVmjh8faip3RW+I3WzQZ3iywQVyxZfjunfH0=", + "lastModified": 1716749035, + "narHash": "sha256-mdBp0b4VIQ71aUK2uBRROUkENk93RUUubjlQkvskNO0=", "owner": "nixos", "repo": "nixpkgs", - "rev": "04496f014fcf27fdcede464d5de8558e12b5710c", + "rev": "b5995681aa319d0e33a6d83a31710d6c6f092820", "type": "github" }, "original": { @@ -223,11 +223,11 @@ "plugin-catppuccin": { "flake": false, "locked": { - "lastModified": 1715167632, - "narHash": "sha256-aRrhVHQSCyo1Ti1j8ogWJ8e0eJWiTw5+abIpyUxky/M=", + "lastModified": 1716704960, + "narHash": "sha256-UDPS+1o8FQGkfqiG4GX4DNUI2pU5hIvagmfnWTKDb44=", "owner": "catppuccin", "repo": "nvim", - "rev": "d97387aea8264f484bb5d5e74f2182a06c83e0d8", + "rev": "5215ea59df6d0a7e27da9a5cd1165e06d1b04cbe", "type": "github" }, "original": { @@ -495,11 +495,11 @@ "plugin-diffview-nvim": { "flake": false, "locked": { - "lastModified": 1716052902, - "narHash": "sha256-jbAeMJRybHQnsmTY2xeca4QJXXxdYVEK83d8NUSSnfQ=", + "lastModified": 1716569036, + "narHash": "sha256-sCrswSN/ERirije4hukg81t+X8sVG6EnG8SPK/P1Bts=", "owner": "sindrets", "repo": "diffview.nvim", - "rev": "9bdd5537575c2ea7925b71ae06585b934beea13d", + "rev": "1ec7b56b959dab18f7030f541c33ae60e18a6f88", "type": "github" }, "original": { @@ -527,11 +527,11 @@ "plugin-dressing-nvim": { "flake": false, "locked": { - "lastModified": 1715888396, - "narHash": "sha256-zL+u9SUwzPZEYxaGZiRnezNUkcr8ZkdOMyGKSXF5xcQ=", + "lastModified": 1716410905, + "narHash": "sha256-AXY1+nA6Q/kWbuwOAqwVdd3QrjkHGVdVMHShvSIfLwM=", "owner": "stevearc", "repo": "dressing.nvim", - "rev": "572314728cb1ce012e825fd66331f52c94acac12", + "rev": "3c38ac861e1b8d4077ff46a779cde17330b29f3a", "type": "github" }, "original": { @@ -543,11 +543,11 @@ "plugin-elixir-tools": { "flake": false, "locked": { - "lastModified": 1714657398, - "narHash": "sha256-U6db1n/RIpT7Dd54e9iI/PjO1BhDpMyNPfaph+dUk7k=", + "lastModified": 1716478469, + "narHash": "sha256-ESL/H/l5Yarcuo3MjBplKwox8E6CBxvWrpciyJeaES0=", "owner": "elixir-tools", "repo": "elixir-tools.nvim", - "rev": "51eddb03a7a8c9f00d6415b356a4d3b75d8e75b6", + "rev": "815cf0b0aab0421f8490199c0dd7442d22a7c1b7", "type": "github" }, "original": { @@ -559,11 +559,11 @@ "plugin-fidget-nvim": { "flake": false, "locked": { - "lastModified": 1716068358, - "narHash": "sha256-WT1KnFXC/jjd9tQEiJ7f5mU9FMK++TSOItxZyl6G8GM=", + "lastModified": 1716093309, + "narHash": "sha256-Gpk/G0ByOAIE8uX4Xr94CvAjJBSJMEOwBuvrhmYYGsg=", "owner": "j-hui", "repo": "fidget.nvim", - "rev": "a2ece932b663898d4015f458ce7ad92c389690ba", + "rev": "ef99df04a1c53a453602421bc0f756997edc8289", "type": "github" }, "original": { @@ -575,11 +575,11 @@ "plugin-flutter-tools": { "flake": false, "locked": { - "lastModified": 1716029468, - "narHash": "sha256-nMP1LVUViKeL2BaYr/oAbqVKmOZ1SomWozKz4OYaovU=", + "lastModified": 1716114535, + "narHash": "sha256-dRcWCqFHtDMOEGjKji3lxYQZKBhlhss/i51pX6FZxuI=", "owner": "akinsho", "repo": "flutter-tools.nvim", - "rev": "c19f94576f866888f1b84aa73c690b30de4b86fb", + "rev": "990a1349c29f7d474a0cd51355aba773ccc9deea", "type": "github" }, "original": { @@ -607,11 +607,11 @@ "plugin-gitsigns-nvim": { "flake": false, "locked": { - "lastModified": 1715007445, - "narHash": "sha256-v21qTJfiv57vSUDGCJ4wM+L0Ixwh2b3pkoESFAHBrDM=", + "lastModified": 1716453598, + "narHash": "sha256-TTC3uvRsq4v6PBdS/3YAGpyhVt0w3/SGkPE3fu1zW94=", "owner": "lewis6991", "repo": "gitsigns.nvim", - "rev": "805610a9393fa231f2c2b49cb521bfa413fadb3d", + "rev": "cdfcd9d39d23c46ae9a040de2c6a8b8bf868746e", "type": "github" }, "original": { @@ -639,11 +639,11 @@ "plugin-gruvbox": { "flake": false, "locked": { - "lastModified": 1715974972, - "narHash": "sha256-BDBNeXf189K7l53IaWKWo0eta79cAuYKW0kP6jYfV1w=", + "lastModified": 1716072809, + "narHash": "sha256-BLhZGijGF03UFiyMJ66C1ZLDRqAo1C80ekHcBm1PGoY=", "owner": "ellisonleao", "repo": "gruvbox.nvim", - "rev": "4f8e2dc9e8cdfdd3a988227c2c347043a46f51a4", + "rev": "96a8ec336fb48a11cefbd57508888361431aac26", "type": "github" }, "original": { @@ -703,11 +703,11 @@ "plugin-image-nvim": { "flake": false, "locked": { - "lastModified": 1715966662, - "narHash": "sha256-2f7ss/QTohYSp0EqaFnBtQeOjI+3fIn+Wmgy/TcfbDk=", + "lastModified": 1716308282, + "narHash": "sha256-6nFzUchDQIvaTOv4lZ10q66m/ntU3dgVnlfBRodW+0Y=", "owner": "3rd", "repo": "image.nvim", - "rev": "da64ce69598875c9af028afe129f916b02ccc42e", + "rev": "2a618c86d9f8fd9f7895d12b55ec2f31fd14fa05", "type": "github" }, "original": { @@ -719,11 +719,11 @@ "plugin-indent-blankline": { "flake": false, "locked": { - "lastModified": 1716042154, - "narHash": "sha256-qlFoZ/GDsbnIhMoT+esNxheC3I9guxiV2DQYlY9kcMM=", + "lastModified": 1716449809, + "narHash": "sha256-K5y0UQAXc0N6+1kqncX2eClpvZb7jlg7GhSerHQVZX0=", "owner": "lukas-reineke", "repo": "indent-blankline.nvim", - "rev": "ece00d5fb44d196680a81fd2761062d2fa44663b", + "rev": "d98f537c3492e87b6dc6c2e3f66ac517528f406f", "type": "github" }, "original": { @@ -735,11 +735,11 @@ "plugin-leap-nvim": { "flake": false, "locked": { - "lastModified": 1715716911, - "narHash": "sha256-vRL++RVDywO6nP5dHQiO1NSQ17SMmHm4AgjTQfv642o=", + "lastModified": 1716207448, + "narHash": "sha256-O/wN5v8GhlEECBIhJQvWhKcpQrqT7J+BNkd/fIh0TIQ=", "owner": "ggandor", "repo": "leap.nvim", - "rev": "b1ecfb63c0b8babfd0dcd6b5ca6de37bbf3526cd", + "rev": "8f4d3ab9fe5c906c5745150191831c5ee0a427a0", "type": "github" }, "original": { @@ -751,11 +751,11 @@ "plugin-lsp-lines": { "flake": false, "locked": { - "lastModified": 1715965937, - "narHash": "sha256-C3m91uwldDwaZlYjb6j2sPlvO6ADqhl0AmUWZVYEDHo=", + "lastModified": 1716108775, + "narHash": "sha256-QsvmPOer7JgO7Y+N/iaNJD7Kmy69gnlV4CeyaQesNvA=", "owner": "~whynothugo", "repo": "lsp_lines.nvim", - "rev": "d2facc98064934ebd480cd563212a84d957075fe", + "rev": "7d9e2748b61bff6ebba6e30adbc7173ccf21c055", "type": "sourcehut" }, "original": { @@ -767,11 +767,11 @@ "plugin-lsp-signature": { "flake": false, "locked": { - "lastModified": 1715342515, - "narHash": "sha256-f4AuZnt2m2VA90baSbZt6+elzjXmJKPFTO28v8auoYc=", + "lastModified": 1716637798, + "narHash": "sha256-4Abo4HGwzZtqEHcS9lsQdw+Dsn7tkQoeq5QyfTEEwnA=", "owner": "ray-x", "repo": "lsp_signature.nvim", - "rev": "aed5d1162b0f07bb3af34bedcc5f70a2b6466ed8", + "rev": "529e8861d0410389f0163a5e5c2199d4a4ef5bf6", "type": "github" }, "original": { @@ -911,11 +911,11 @@ "plugin-noice-nvim": { "flake": false, "locked": { - "lastModified": 1716037348, - "narHash": "sha256-/dtOpAjzgMJHSjV9AZcR991I/r9xaMnpg0/1c6NdItg=", + "lastModified": 1716502618, + "narHash": "sha256-GrgFjVDIQcCfg5qyO6FnhlGUCrz6rwAFh81yZXUJra4=", "owner": "folke", "repo": "noice.nvim", - "rev": "9f6f6ba74f8bfbf7e43d6302cf86b070362f6203", + "rev": "f119045f38792ad5311e5f9be7a879e4c1a95fe0", "type": "github" }, "original": { @@ -960,11 +960,11 @@ "plugin-nvim-autopairs": { "flake": false, "locked": { - "lastModified": 1715818272, - "narHash": "sha256-qcfYChucUpRFKMfB+IphmIPzH/HgobVDK44wDtVXSnU=", + "lastModified": 1716158088, + "narHash": "sha256-YEAqjlzVrS/VLrkwGo3L7cNOE1LuyLYlBtkR2HA5oVk=", "owner": "windwp", "repo": "nvim-autopairs", - "rev": "b0b79e42a28f09719a7da9534c3731fa37319d9b", + "rev": "c15de7e7981f1111642e7e53799e1211d4606cb9", "type": "github" }, "original": { @@ -976,11 +976,11 @@ "plugin-nvim-bufferline-lua": { "flake": false, "locked": { - "lastModified": 1713769392, - "narHash": "sha256-bHlmaNXfZTlTm/8v48FwCde9ljZFLv25efYF5355bnw=", + "lastModified": 1716555412, + "narHash": "sha256-8PCkY1zrlMrPGnQOb7MjqDXNlkeX46jrT4ScIL+MOwM=", "owner": "akinsho", "repo": "nvim-bufferline.lua", - "rev": "73540cb95f8d95aa1af3ed57713c6720c78af915", + "rev": "99337f63f0a3c3ab9519f3d1da7618ca4f91cffe", "type": "github" }, "original": { @@ -1072,11 +1072,11 @@ "plugin-nvim-dap": { "flake": false, "locked": { - "lastModified": 1715872903, - "narHash": "sha256-UZm2DA19uBeL2L5JKAZilqBTTPSA5X3ZEcAVJUq65p8=", + "lastModified": 1716747841, + "narHash": "sha256-uzivFy0ZNLxAXDqkYNrNy1SSHPRrGv3OLVCNCRDiikU=", "owner": "mfussenegger", "repo": "nvim-dap", - "rev": "5a2f7121869394502521c52b2bc581ab22c69447", + "rev": "922ebc75c2fa9305e36402fbd8c984c8638770a0", "type": "github" }, "original": { @@ -1088,11 +1088,11 @@ "plugin-nvim-dap-ui": { "flake": false, "locked": { - "lastModified": 1714314733, - "narHash": "sha256-26g4dlxzTGaR5OrXpPo4A2erM/eSkgedb0Bl2pK362M=", + "lastModified": 1716237606, + "narHash": "sha256-paiyLNzqUq9G3U8qn8yl1AjHJzTTa17exA05QO09nGA=", "owner": "rcarriga", "repo": "nvim-dap-ui", - "rev": "5934302d63d1ede12c0b22b6f23518bb183fc972", + "rev": "334cf3038c4756e6ab999cbac67c847fb654c190", "type": "github" }, "original": { @@ -1136,11 +1136,11 @@ "plugin-nvim-lspconfig": { "flake": false, "locked": { - "lastModified": 1716002336, - "narHash": "sha256-Ofat8It2TCjxnMPHmQ5fZTeJDpMTIrDMGHXle66IWe8=", + "lastModified": 1716498901, + "narHash": "sha256-PMMqPDnq4Q8gWeKQ2WPE+pOf1R1G61wJ+bAWkHpQlzE=", "owner": "neovim", "repo": "nvim-lspconfig", - "rev": "6d2ae9fdc3111a6e8fd5db2467aca11737195a30", + "rev": "b972e7154bc94ab4ecdbb38c8edbccac36f83996", "type": "github" }, "original": { @@ -1152,11 +1152,11 @@ "plugin-nvim-navbuddy": { "flake": false, "locked": { - "lastModified": 1711239174, - "narHash": "sha256-EZXzFjGsZHkb2Ui5uvOottPHA8X15F6xyikab4dBlYk=", + "lastModified": 1716111817, + "narHash": "sha256-sZ1M27qNbLMHKR4Zu0NfJoBcQxJbhmW7Cx74Acirlww=", "owner": "SmiteshP", "repo": "nvim-navbuddy", - "rev": "f34237e8a41ebc6e2716af2ebf49854d8c5289c8", + "rev": "f22bac988f2dd073601d75ba39ea5636ab6e38cb", "type": "github" }, "original": { @@ -1200,11 +1200,11 @@ "plugin-nvim-nio": { "flake": false, "locked": { - "lastModified": 1714664267, - "narHash": "sha256-VfoJOXXtMhalFcnfhVzweq7TVmB8WjRP+Z5Z5Z24Pzc=", + "lastModified": 1716391538, + "narHash": "sha256-UffuTu7mF96LHk0MQRNrsgDyo1QWa/1i5eJKjZkuG8k=", "owner": "nvim-neotest", "repo": "nvim-nio", - "rev": "8765cbc4d0c629c8158a5341e1b4305fd93c3a90", + "rev": "632024157d01e8bc48fd7df6a7de8ffe3fdd4f3a", "type": "github" }, "original": { @@ -1232,11 +1232,11 @@ "plugin-nvim-session-manager": { "flake": false, "locked": { - "lastModified": 1715419340, - "narHash": "sha256-SrJJWC/newJRB879zMUbLzOJQ8qtcHfLF/7GLPFlSRQ=", + "lastModified": 1716560093, + "narHash": "sha256-A6oHIg8PG84L7QIRpo9WXKzMq4EUe92jQIxObOxpFmg=", "owner": "Shatur", "repo": "neovim-session-manager", - "rev": "a0b9d25154be573bc0f99877afb3f57cf881cce7", + "rev": "b552ee8667037be5d0291229279a35af25e515fb", "type": "github" }, "original": { @@ -1264,11 +1264,11 @@ "plugin-nvim-tree-lua": { "flake": false, "locked": { - "lastModified": 1715647490, - "narHash": "sha256-YqHAEztx6gEEm0GoDXC5djnIP030oGGRcskp8LPqVoc=", + "lastModified": 1716687243, + "narHash": "sha256-E6J9d0LJMK+Owj/iWbGVZBiVL/NI1xd5P0NNQpUmXj4=", "owner": "nvim-tree", "repo": "nvim-tree.lua", - "rev": "2bc725a3ebc23f0172fb0ab4d1134b81bcc13812", + "rev": "517e4fbb9ef3c0986da7047f44b4b91a2400f93c", "type": "github" }, "original": { @@ -1280,11 +1280,11 @@ "plugin-nvim-treesitter-context": { "flake": false, "locked": { - "lastModified": 1715954279, - "narHash": "sha256-CriN45mFfyjTt14RJnmzXidACHJXUaA6XPwAoEtQUzg=", + "lastModified": 1716388265, + "narHash": "sha256-EY5Si6t7LXcxOP3ubGAAMd3lgbeaCOCIybSKi1Ucx98=", "owner": "nvim-treesitter", "repo": "nvim-treesitter-context", - "rev": "55e29081e73d2e4b2d62fb4dc3eebe21bf66a1e2", + "rev": "f62bfe19e0fbc13ae95649dfb3cf22f4ff85b683", "type": "github" }, "original": { @@ -1296,11 +1296,11 @@ "plugin-nvim-ts-autotag": { "flake": false, "locked": { - "lastModified": 1716038325, - "narHash": "sha256-gh+DhC7+8O4z4lG/RIaMJgumnq/Vg5eWa6j/P8MQk0s=", + "lastModified": 1716420040, + "narHash": "sha256-gy6OVR2iH361XMDDo0dqxJsAxo+5nXr3wP42pieeCUg=", "owner": "windwp", "repo": "nvim-ts-autotag", - "rev": "aeb7090098722ffce16597bd0331105495640153", + "rev": "8ae54b90e36ef1fc5267214b30c2cbff71525fe4", "type": "github" }, "original": { @@ -1312,11 +1312,11 @@ "plugin-nvim-web-devicons": { "flake": false, "locked": { - "lastModified": 1715644375, - "narHash": "sha256-1trRSUVyWFl3K+7xHXQGNl/EwE0ggyigQpZ+kmRPsk8=", + "lastModified": 1716609001, + "narHash": "sha256-fmbsnNVZ6nBorBILwPfEgcDDWZCkh9YZH/aC343FxP4=", "owner": "nvim-tree", "repo": "nvim-web-devicons", - "rev": "e37bb1feee9e7320c76050a55443fa843b4b6f83", + "rev": "b77921fdc44833c994fdb389d658ccbce5490c16", "type": "github" }, "original": { @@ -1328,11 +1328,11 @@ "plugin-obsidian-nvim": { "flake": false, "locked": { - "lastModified": 1715965562, - "narHash": "sha256-PiaPmQ11Wx57ojCG4G50Rwr+phanvuoBqbPHg3N4eGw=", + "lastModified": 1716489161, + "narHash": "sha256-R7q3PmDMYQtDTE1JZgQtvArBq55MnvNdcChOsuivSCo=", "owner": "epwalsh", "repo": "obsidian.nvim", - "rev": "7b59d907a3ee6952c58e07139cf021a205692338", + "rev": "0890a3f4e1711d98b5aa78bf40d2c5b81ef3c39f", "type": "github" }, "original": { @@ -1360,11 +1360,11 @@ "plugin-orgmode-nvim": { "flake": false, "locked": { - "lastModified": 1715953175, - "narHash": "sha256-vhygnZNJceJHq4gQm6h0zv/Cgp9+fSeWuL1Varrws1U=", + "lastModified": 1716750850, + "narHash": "sha256-3xsdklkUuJwUzUieZT6eGIgDZUdVEGeyhxxUe99TOAA=", "owner": "nvim-orgmode", "repo": "orgmode", - "rev": "dbcff9e8d9df48bfff95f7204ca483c11864a755", + "rev": "cb3c9bf6caf3411af88a9a1a0b7eb9be57b9741c", "type": "github" }, "original": { @@ -1392,11 +1392,11 @@ "plugin-plenary-nvim": { "flake": false, "locked": { - "lastModified": 1714083960, - "narHash": "sha256-vy0MXEoSM4rvYpfwbc2PnilvMOA30Urv0FAxjXuvqQ8=", + "lastModified": 1716230027, + "narHash": "sha256-5Jf2mWFVDofXBcXLbMa417mqlEPWLA+cQIZH/vNEV1g=", "owner": "nvim-lua", "repo": "plenary.nvim", - "rev": "08e301982b9a057110ede7a735dd1b5285eb341f", + "rev": "a3e3bc82a3f95c5ed0d7201546d5d2c19b20d683", "type": "github" }, "original": { @@ -1440,11 +1440,11 @@ "plugin-rose-pine": { "flake": false, "locked": { - "lastModified": 1715697761, - "narHash": "sha256-AdPSz5+nCOnLWexBasHuxRxEKbL4WVg+uV78//W5nLs=", + "lastModified": 1716691958, + "narHash": "sha256-mpBx0R9tR4KrOMO9J0gg2aOeHtiU9zK8xoa7Ebkx0n8=", "owner": "rose-pine", "repo": "neovim", - "rev": "b6fe88c3282cf9f117a3e836d761c2d78d02f417", + "rev": "87aa437172357ad8f916942bca249ceadc6c68b1", "type": "github" }, "original": { @@ -1536,11 +1536,11 @@ "plugin-telescope": { "flake": false, "locked": { - "lastModified": 1715968939, - "narHash": "sha256-+h0L5vpwXFNDuzE5Dne5zWuKtZ1mquAhdplHcUxPg8w=", + "lastModified": 1716732931, + "narHash": "sha256-JXdpKfrSvrzpTqy+g9Bg85/vIDTUZfDr+ZhxH8wJDxA=", "owner": "nvim-telescope", "repo": "telescope.nvim", - "rev": "0c12735d5aff6a48ffd8111bf144dc2ff44e5975", + "rev": "349660c0d35da06459ee8589af77de2086b652ce", "type": "github" }, "original": { @@ -1552,11 +1552,11 @@ "plugin-todo-comments": { "flake": false, "locked": { - "lastModified": 1711553769, - "narHash": "sha256-BJNU01iTRDNrPv48fgiJRS+ouaHkoqw2AYXKDRgDzfw=", + "lastModified": 1716400082, + "narHash": "sha256-ZJp0emoHogSdhXPIH74MH4CznxhCmMbO243dqxAZMJo=", "owner": "folke", "repo": "todo-comments.nvim", - "rev": "a7e39ae9e74f2c8c6dc4eea6d40c3971ae84752d", + "rev": "e1549807066947818113a7d7ed48f637e49620d3", "type": "github" }, "original": { @@ -1568,11 +1568,11 @@ "plugin-toggleterm-nvim": { "flake": false, "locked": { - "lastModified": 1713792255, - "narHash": "sha256-mM5bGgAemsRJD9U6U5K6ia5qb8NaTusM99x6xrtEBfw=", + "lastModified": 1716115307, + "narHash": "sha256-h82zisizLm0FOt4l8lzgC/spFk3R5Gx25A5YgULwW8U=", "owner": "akinsho", "repo": "toggleterm.nvim", - "rev": "066cccf48a43553a80a210eb3be89a15d789d6e6", + "rev": "fee58a0473fd92b28c34f8f724e4918b15ba30a3", "type": "github" }, "original": { @@ -1584,11 +1584,11 @@ "plugin-tokyonight": { "flake": false, "locked": { - "lastModified": 1715879379, - "narHash": "sha256-lJjBsAguMDA765lfxfUwU0I0tWmAESLCv9yiVrhTYDo=", + "lastModified": 1716732360, + "narHash": "sha256-ZWxK0q8kUYHOk+ykH1m4901trnuHN8O9hkOZR6HdC+Y=", "owner": "folke", "repo": "tokyonight.nvim", - "rev": "634015fff1457ed66cf5364213a2bbbc51a82d6c", + "rev": "0fae425aaab04a5f97666bd431b96f2f19c36935", "type": "github" }, "original": { @@ -1600,11 +1600,11 @@ "plugin-trouble": { "flake": false, "locked": { - "lastModified": 1711693365, - "narHash": "sha256-kIQ72fqAsiMF9jq0MzC6peaHJddYn5PRNXfYFHTQB5Q=", + "lastModified": 1716133735, + "narHash": "sha256-D3dqI4NRgEG4BCDLQ3ci9lgYxt90XyWDQXlk4/uuR6M=", "owner": "folke", "repo": "trouble.nvim", - "rev": "b9cf677f20bb2faa2dacfa870b084e568dca9572", + "rev": "a8264a65a0b894832ea642844f5b7c30112c458f", "type": "github" }, "original": { @@ -1632,11 +1632,11 @@ "plugin-vim-fugitive": { "flake": false, "locked": { - "lastModified": 1715976636, - "narHash": "sha256-517q3oPvshwUBhXEDuB23S0RPuHvSZWK/1tr6wDhEyA=", + "lastModified": 1716130336, + "narHash": "sha256-nyNtb3nsS/zFdSNRyXabcGIabAwgivJIUFB2c62vXmA=", "owner": "tpope", "repo": "vim-fugitive", - "rev": "5a9bd42dd8dd127779f3cd8982a0419b7ca9c7f5", + "rev": "4f59455d2388e113bd510e85b310d15b9228ca0d", "type": "github" }, "original": { @@ -1947,11 +1947,11 @@ "nixpkgs": "nixpkgs_3" }, "locked": { - "lastModified": 1715775020, - "narHash": "sha256-CCqc3c3yvXgRaTW18epSHlF2HeikwNXqxnlrRs2sl3Y=", + "lastModified": 1716725305, + "narHash": "sha256-LIz08gALt2wlutGXAEhNroEoIuPV5ePQB8LI4WzXcy8=", "owner": "mitchellh", "repo": "zig-overlay", - "rev": "03303bf01701b04ec87c55ce5d8d6f5ecf86d0a7", + "rev": "93b02a697561ecd438cfa5779727b5a1c300cb4c", "type": "github" }, "original": { diff --git a/modules/plugins/statusline/lualine/lualine.nix b/modules/plugins/statusline/lualine/lualine.nix index 7db43e0..5135794 100644 --- a/modules/plugins/statusline/lualine/lualine.nix +++ b/modules/plugins/statusline/lualine/lualine.nix @@ -153,6 +153,13 @@ in { }, } '' + '' + { + "", + draw_empty = true, + separator = { left = '', right = '' } + } + '' ]; }; @@ -175,6 +182,13 @@ in { separator = {right = ''} } '' + '' + { + "", + draw_empty = true, + separator = { left = '', right = '' } + } + '' ]; }; @@ -263,6 +277,13 @@ in { type = listOf str; description = "active config for: | A | B | C X | (Y) | Z |"; default = [ + '' + { + "", + draw_empty = true, + separator = { left = '', right = '' } + } + '' '' { 'searchcount', @@ -285,6 +306,13 @@ in { type = listOf str; description = "active config for: | A | B | C X | Y | (Z) |"; default = [ + '' + { + "", + draw_empty = true, + separator = { left = '', right = '' } + } + '' '' { "progress", diff --git a/modules/plugins/theme/supported_themes.nix b/modules/plugins/theme/supported_themes.nix index dbddd11..4ffebd9 100644 --- a/modules/plugins/theme/supported_themes.nix +++ b/modules/plugins/theme/supported_themes.nix @@ -1,4 +1,10 @@ -{lib}: { +{ + config, + lib, +}: let + inherit (lib.strings) optionalString; + inherit (lib.trivial) boolToString warnIf; +in { onedark = { setup = { style ? "dark", @@ -19,7 +25,7 @@ transparent, }: '' require('tokyonight').setup { - transparent = ${lib.boolToString transparent}; + transparent = ${boolToString transparent}; } vim.cmd[[colorscheme tokyonight-${style}]] ''; @@ -32,7 +38,7 @@ transparent, }: '' require('dracula').setup({ - transparent_bg = ${lib.boolToString transparent}, + transparent_bg = ${boolToString transparent}, }); require('dracula').load(); ''; @@ -46,11 +52,11 @@ -- Catppuccin theme require('catppuccin').setup { flavour = "${style}", - transparent_background = ${lib.boolToString transparent}, + transparent_background = ${boolToString transparent}, integrations = { nvimtree = { enabled = true, - transparent_panel = ${lib.boolToString transparent}, + transparent_panel = ${boolToString transparent}, show_root = true, }, @@ -85,11 +91,20 @@ transparent ? false, }: let style' = - lib.warnIf (style == "light") "oxocarbon: light theme is not well-supported" style; + warnIf (style == "light") "oxocarbon: light theme is not well-supported" style; in '' - require('oxocarbon') - vim.opt.background = "${style'}" - vim.cmd.colorscheme = "oxocarbon" + require('oxocarbon') + vim.opt.background = "${style'}" + vim.cmd.colorscheme = "oxocarbon" + ${optionalString transparent '' + vim.api.nvim_set_hl(0, "Normal", { bg = "none" }) + vim.api.nvim_set_hl(0, "NormalFloat", { bg = "none" }) + vim.api.nvim_set_hl(0, "LineNr", { bg = "none" }) + vim.api.nvim_set_hl(0, "SignColumn", { bg = "none" }) + ${optionalString config.vim.filetree.nvimTree.enable '' + vim.api.nvim_set_hl(0, "NvimTreeNormal", { bg = "none" }) + ''} + ''} ''; styles = ["dark" "light"]; }; @@ -122,7 +137,7 @@ palette_overrides = {}, overrides = {}, dim_inactive = false, - transparent_mode = ${lib.boolToString transparent}, + transparent_mode = ${boolToString transparent}, }) vim.o.background = "${style}" vim.cmd("colorscheme gruvbox") @@ -147,7 +162,7 @@ styles = { bold = false, italic = false, -- I would like to add more options for this - transparency = ${lib.boolToString transparent}, + transparency = ${boolToString transparent}, }, }) diff --git a/modules/plugins/theme/theme.nix b/modules/plugins/theme/theme.nix index 2ae3e45..9426378 100644 --- a/modules/plugins/theme/theme.nix +++ b/modules/plugins/theme/theme.nix @@ -10,7 +10,9 @@ inherit (lib.nvim.dag) entryBefore; cfg = config.vim.theme; - supported_themes = import ./supported_themes.nix {inherit lib;}; + supported_themes = import ./supported_themes.nix { + inherit lib config; + }; in { options.vim.theme = { enable = mkOption { diff --git a/modules/plugins/ui/colorizer/colorizer.nix b/modules/plugins/ui/colorizer/colorizer.nix index 364abb9..02ab967 100644 --- a/modules/plugins/ui/colorizer/colorizer.nix +++ b/modules/plugins/ui/colorizer/colorizer.nix @@ -4,100 +4,128 @@ ... }: let inherit (lib.options) mkOption mkEnableOption; - inherit (lib.types) attrsOf attrs bool enum; + inherit (lib.types) attrsOf enum nullOr submodule bool str; inherit (lib.modules) mkRenamedOptionModule; inherit (lib.nvim.types) mkPluginSetupOption; + + settingSubmodule = submodule { + options = { + RGB = mkOption { + description = "Colorize #RGB hex codes"; + default = null; + type = nullOr bool; + }; + + RRGGBB = mkOption { + description = "Colorize #RRGGBB hex codes"; + default = null; + type = nullOr bool; + }; + + names = mkOption { + description = ''Colorize "Name" codes like Blue''; + default = null; + type = nullOr bool; + }; + + RRGGBBAA = mkOption { + description = "Colorize #RRGGBBAA hex codes"; + default = null; + type = nullOr bool; + }; + + AARRGGBB = mkOption { + description = "Colorize 0xAARRGGBB hex codes"; + default = null; + type = nullOr bool; + }; + + rgb_fn = mkOption { + description = "Colorize CSS rgb() and rgba() functions"; + default = null; + type = nullOr bool; + }; + + hsl_fn = mkOption { + description = "Colorize CSS hsl() and hsla() functions"; + default = null; + type = nullOr bool; + }; + + css = mkOption { + description = "Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB"; + default = null; + type = nullOr bool; + }; + + css_fn = mkOption { + description = "Enable all CSS *functions*: rgb_fn, hsl_fn"; + default = null; + type = nullOr bool; + }; + + tailwind = mkOption { + description = "Enable tailwind colors"; + default = null; + type = nullOr bool; + }; + + sass = mkOption { + description = "Enable sass colors"; + default = null; + type = nullOr bool; + }; + + virtualtext = mkOption { + description = "String to display as virtualtext"; + type = nullOr str; + default = null; + }; + + mode = mkOption { + description = "Set the display mode"; + type = nullOr (enum ["foreground" "background"]); + default = null; + }; + + always_update = mkOption { + description = "Update color values even if buffer is not focused. Example use: cmp_menu, cmp_docs"; + default = null; + type = nullOr bool; + }; + }; + }; in { imports = [ - (mkRenamedOptionModule ["vim" "ui" "colorizer" "options"] ["vim" "ui" "colorizer" "setupOpts" "user_default_options"]) + (mkRenamedOptionModule ["vim" "ui" "colorizer" "options"] ["vim" "ui" "colorizer" "setupOpts" "defaultOptions"]) (mkRenamedOptionModule ["vim" "ui" "colorizer" "filetypes"] ["vim" "ui" "colorizer" "setupOpts" "filetypes"]) ]; options.vim.ui.colorizer = { enable = mkEnableOption "color highlighting [nvim-colorizer.lua]"; - setupOpts = mkPluginSetupOption "nvim-colorizer" { + setupOpts = mkPluginSetupOption "colorizer" { filetypes = mkOption { - type = attrsOf attrs; - default = { - css = {}; - scss = {}; + description = '' + Filetypes to enable on and their option overrides. + + "*" means enable on all filetypes. Filetypes prefixed with "!" are disabled. + ''; + default = {}; + example = { + "*" = {}; + "!vim" = {}; + javascript = { + AARRGGBB = false; + }; }; - description = "Filetypes to highlight on"; + type = attrsOf settingSubmodule; }; - user_default_options = { - rgb = mkOption { - type = bool; - default = true; - description = "#RGB hex codes"; - }; - - rrggbb = mkOption { - type = bool; - default = true; - description = "#RRGGBB hex codes"; - }; - - names = mkOption { - type = bool; - default = true; - description = ''"Name" codes such as "Blue"''; - }; - - rgb_fn = mkOption { - type = bool; - default = false; - description = "CSS rgb() and rgba() functions"; - }; - - rrggbbaa = mkOption { - type = bool; - default = false; - description = "#RRGGBBAA hex codes"; - }; - - hsl_fn = mkOption { - type = bool; - default = false; - description = "CSS hsl() and hsla() functions"; - }; - - css = mkOption { - type = bool; - default = false; - description = "Enable all CSS features: rgb_fn, hsl_fn, names, RGB, RRGGBB"; - }; - - css_fn = mkOption { - type = bool; - default = false; - description = "Enable all CSS *functions*: rgb_fn, hsl_fn"; - }; - - mode = mkOption { - type = enum ["foreground" "background"]; - default = "background"; - description = "Set the display mode"; - }; - - tailwind = mkOption { - type = bool; - default = false; - description = "Enable tailwind colors"; - }; - - sass = mkOption { - type = bool; - default = false; - description = "Enable sass colors"; - }; - - alwaysUpdate = mkOption { - type = bool; - default = false; - description = "Update color values even if buffer is not focused, like when using cmp_menu, cmp_docs"; - }; + user_default_options = mkOption { + description = "Default options"; + default = {}; + type = settingSubmodule; }; }; };