Compare commits

...

51 Commits

Author SHA1 Message Date
Ching Pei Yang d53040dd34 docs: update release notes 2024-06-27 10:11:17 +02:00
Ching Pei Yang 718b48cfdb noice: use setupOpts 2024-06-27 10:10:30 +02:00
Ching Pei Yang 1b96dab877 noice: add filter 2024-06-27 10:10:30 +02:00
Ching Pei Yang 72e39a910c noice: add setupOpts 2024-06-27 10:10:30 +02:00
raf b0af809b95
Merge pull request #320 from diniamo/catppuccin-set-term-colors
themes/catppuccin: set term colors
2024-06-26 17:55:36 +00:00
NotAShelf 1bb901edeb
languages/clang: unpin clang-tools package 2024-06-25 22:32:12 +03:00
diniamo bb2a78272b themes/catppuccin: set term colors 2024-06-25 19:19:58 +02:00
raf 155bc8e1cc
Merge pull request #317 from diniamo/autopairs-use-booltostring
modules/autopairs: use boolToString instead of toLuaObject
2024-06-25 12:12:40 +00:00
diniamo a145f997f3 modules/autopairs: use boolToString instead of toLuaObject 2024-06-25 14:01:44 +02:00
raf 688a457a3d
Merge pull request #316 from diniamo/fix-autopairs-cr
modules/nvim-cmp: add edge case for autopairs in cr mapping
2024-06-25 09:09:04 +00:00
diniamo c2c85d70ee modules/nvim-cmp: add edge case for autopairs in cr mapping 2024-06-25 11:06:18 +02:00
raf 335fbea0c0
Merge pull request #315 from FrothyMarrow/fix-smartcolumn
ui/smartcolumn: change `custom_colorcolumn` type to expected type string
2024-06-24 20:06:54 +00:00
Frothy 216cb34caf docs: add entry for changed `smartcolumn.setupOpts.custom_colorcolumn` type 2024-06-24 14:26:00 -04:00
Frothy 2e99a21010 ui/smartcolumn: change `custom_colorcolumn` type to expected type string 2024-06-24 14:23:55 -04:00
raf 7b719d0044
Merge pull request #313 from NotAShelf/ts-error-translator
languages/ts: add `ts-error-translator.nvim` as an extension plugin
2024-06-24 17:40:06 +00:00
NotAShelf ba803c8684
docs: update release notes
Mention ts-error-translator's addition to the module system
2024-06-24 20:07:17 +03:00
NotAShelf f00ecd4eb9
languages/ts: add `ts-error-translator.nvim` as an extension plugin 2024-06-24 20:05:57 +03:00
raf 35c7327f81
Merge pull request #314 from diniamo/rustfmt
languages/rust: add format
2024-06-24 17:05:13 +00:00
diniamo 8a0cddd9bb languages/rust: add format 2024-06-24 19:02:04 +02:00
raf 923481640e
Merge pull request #306 from diniamo/fix-theme-dag
modules/theme: fix dag location
2024-06-24 16:29:53 +00:00
raf 2759b9caae
Merge pull request #310 from jacekpoz/orgmode
plugins/orgmode: remove deprecated ts setup call
2024-06-23 17:05:04 +00:00
jacekpoz abdcb62941
flake: bump nixpkgs input 2024-06-23 19:02:40 +02:00
jacekpoz d873bc0667
plugins/orgmode: remove deprecated ts setup call 2024-06-23 15:14:10 +02:00
raf f66c40b687
Merge pull request #309 from FrothyMarrow/nixpkgs-branch
flake: switch nixpkgs branch to nixpkgs-unstable
2024-06-22 23:45:01 +00:00
Frothy ad22bca3d7 flake: switch nixpkgs branch to nixpkgs-unstable 2024-06-22 19:28:54 -04:00
NotAShelf 95615ec308
flake: update nixpkgs; use new bash-language-server pkg 2024-06-21 02:18:54 +03:00
diniamo d6cd853520 modules/theme: fix dag location 2024-06-16 13:46:20 +02:00
raf a86c59457c
Merge pull request #303 from diniamo/which-key-register-allow-null
which-key: allow null in registers
2024-06-12 06:14:15 +00:00
diniamo a437dbd158 which-key: allow null in registers 2024-06-12 01:24:03 +02:00
raf c1b3900846
Merge pull request #302 from diniamo/fix-flake-nix-typo
flake: fix typo
2024-06-10 07:47:50 +00:00
diniamo 9cff1b03d6 flake: fix typo 2024-06-10 09:33:45 +02:00
NotAShelf dfa2718bb3
flake: bump nixpkgs input 2024-06-09 12:07:26 +03:00
raf fcab30e7bb
Merge pull request #301 from rice-cracker-dev/patch-1
languages: changed python lsp package to pyright
2024-06-09 09:06:15 +00:00
Phan Đăng Khoa 68b0647936
languages: changed python lsp package to pyright 2024-06-09 15:57:55 +07:00
NotAShelf c50522f6b0
languages: avoid using package aliases 2024-06-08 19:44:25 +03:00
raf ae45cdf92a
Merge pull request #300 from jacekpoz/main
Emac
2024-06-08 16:07:15 +00:00
jacekpoz 8eb8326bd6
plugins/orgmode: fix typo 2024-06-08 17:58:08 +02:00
NotAShelf 200a45ec73
flake: update inputs
Flake lock file updates:

• Updated input 'nixpkgs':
    'github:nixos/nixpkgs/04496f014fcf27fdcede464d5de8558e12b5710c?narHash=sha256-ewjE7eVBVmjh8faip3RW%2BI3WzQZ3iywQVyxZfjunfH0%3D' (2024-05-18)
  → 'github:nixos/nixpkgs/b5995681aa319d0e33a6d83a31710d6c6f092820?narHash=sha256-mdBp0b4VIQ71aUK2uBRROUkENk93RUUubjlQkvskNO0%3D' (2024-05-26)
• Updated input 'plugin-catppuccin':
    'github:catppuccin/nvim/d97387aea8264f484bb5d5e74f2182a06c83e0d8?narHash=sha256-aRrhVHQSCyo1Ti1j8ogWJ8e0eJWiTw5%2BabIpyUxky/M%3D' (2024-05-08)
  → 'github:catppuccin/nvim/5215ea59df6d0a7e27da9a5cd1165e06d1b04cbe?narHash=sha256-UDPS%2B1o8FQGkfqiG4GX4DNUI2pU5hIvagmfnWTKDb44%3D' (2024-05-26)
• Updated input 'plugin-diffview-nvim':
    'github:sindrets/diffview.nvim/9bdd5537575c2ea7925b71ae06585b934beea13d?narHash=sha256-jbAeMJRybHQnsmTY2xeca4QJXXxdYVEK83d8NUSSnfQ%3D' (2024-05-18)
  → 'github:sindrets/diffview.nvim/1ec7b56b959dab18f7030f541c33ae60e18a6f88?narHash=sha256-sCrswSN/ERirije4hukg81t%2BX8sVG6EnG8SPK/P1Bts%3D' (2024-05-24)
• Updated input 'plugin-dressing-nvim':
    'github:stevearc/dressing.nvim/572314728cb1ce012e825fd66331f52c94acac12?narHash=sha256-zL%2Bu9SUwzPZEYxaGZiRnezNUkcr8ZkdOMyGKSXF5xcQ%3D' (2024-05-16)
  → 'github:stevearc/dressing.nvim/3c38ac861e1b8d4077ff46a779cde17330b29f3a?narHash=sha256-AXY1%2BnA6Q/kWbuwOAqwVdd3QrjkHGVdVMHShvSIfLwM%3D' (2024-05-22)
• Updated input 'plugin-elixir-tools':
    'github:elixir-tools/elixir-tools.nvim/51eddb03a7a8c9f00d6415b356a4d3b75d8e75b6?narHash=sha256-U6db1n/RIpT7Dd54e9iI/PjO1BhDpMyNPfaph%2BdUk7k%3D' (2024-05-02)
  → 'github:elixir-tools/elixir-tools.nvim/815cf0b0aab0421f8490199c0dd7442d22a7c1b7?narHash=sha256-ESL/H/l5Yarcuo3MjBplKwox8E6CBxvWrpciyJeaES0%3D' (2024-05-23)
• Updated input 'plugin-fidget-nvim':
    'github:j-hui/fidget.nvim/a2ece932b663898d4015f458ce7ad92c389690ba?narHash=sha256-WT1KnFXC/jjd9tQEiJ7f5mU9FMK%2B%2BTSOItxZyl6G8GM%3D' (2024-05-18)
  → 'github:j-hui/fidget.nvim/ef99df04a1c53a453602421bc0f756997edc8289?narHash=sha256-Gpk/G0ByOAIE8uX4Xr94CvAjJBSJMEOwBuvrhmYYGsg%3D' (2024-05-19)
• Updated input 'plugin-flutter-tools':
    'github:akinsho/flutter-tools.nvim/c19f94576f866888f1b84aa73c690b30de4b86fb?narHash=sha256-nMP1LVUViKeL2BaYr/oAbqVKmOZ1SomWozKz4OYaovU%3D' (2024-05-18)
  → 'github:akinsho/flutter-tools.nvim/990a1349c29f7d474a0cd51355aba773ccc9deea?narHash=sha256-dRcWCqFHtDMOEGjKji3lxYQZKBhlhss/i51pX6FZxuI%3D' (2024-05-19)
• Updated input 'plugin-gitsigns-nvim':
    'github:lewis6991/gitsigns.nvim/805610a9393fa231f2c2b49cb521bfa413fadb3d?narHash=sha256-v21qTJfiv57vSUDGCJ4wM%2BL0Ixwh2b3pkoESFAHBrDM%3D' (2024-05-06)
  → 'github:lewis6991/gitsigns.nvim/cdfcd9d39d23c46ae9a040de2c6a8b8bf868746e?narHash=sha256-TTC3uvRsq4v6PBdS/3YAGpyhVt0w3/SGkPE3fu1zW94%3D' (2024-05-23)
• Updated input 'plugin-gruvbox':
    'github:ellisonleao/gruvbox.nvim/4f8e2dc9e8cdfdd3a988227c2c347043a46f51a4?narHash=sha256-BDBNeXf189K7l53IaWKWo0eta79cAuYKW0kP6jYfV1w%3D' (2024-05-17)
  → 'github:ellisonleao/gruvbox.nvim/96a8ec336fb48a11cefbd57508888361431aac26?narHash=sha256-BLhZGijGF03UFiyMJ66C1ZLDRqAo1C80ekHcBm1PGoY%3D' (2024-05-18)
• Updated input 'plugin-image-nvim':
    'github:3rd/image.nvim/da64ce69598875c9af028afe129f916b02ccc42e?narHash=sha256-2f7ss/QTohYSp0EqaFnBtQeOjI%2B3fIn%2BWmgy/TcfbDk%3D' (2024-05-17)
  → 'github:3rd/image.nvim/2a618c86d9f8fd9f7895d12b55ec2f31fd14fa05?narHash=sha256-6nFzUchDQIvaTOv4lZ10q66m/ntU3dgVnlfBRodW%2B0Y%3D' (2024-05-21)
• Updated input 'plugin-indent-blankline':
    'github:lukas-reineke/indent-blankline.nvim/ece00d5fb44d196680a81fd2761062d2fa44663b?narHash=sha256-qlFoZ/GDsbnIhMoT%2BesNxheC3I9guxiV2DQYlY9kcMM%3D' (2024-05-18)
  → 'github:lukas-reineke/indent-blankline.nvim/d98f537c3492e87b6dc6c2e3f66ac517528f406f?narHash=sha256-K5y0UQAXc0N6%2B1kqncX2eClpvZb7jlg7GhSerHQVZX0%3D' (2024-05-23)
• Updated input 'plugin-leap-nvim':
    'github:ggandor/leap.nvim/b1ecfb63c0b8babfd0dcd6b5ca6de37bbf3526cd?narHash=sha256-vRL%2B%2BRVDywO6nP5dHQiO1NSQ17SMmHm4AgjTQfv642o%3D' (2024-05-14)
  → 'github:ggandor/leap.nvim/8f4d3ab9fe5c906c5745150191831c5ee0a427a0?narHash=sha256-O/wN5v8GhlEECBIhJQvWhKcpQrqT7J%2BBNkd/fIh0TIQ%3D' (2024-05-20)
• Updated input 'plugin-lsp-lines':
    'sourcehut:~whynothugo/lsp_lines.nvim/d2facc98064934ebd480cd563212a84d957075fe?narHash=sha256-C3m91uwldDwaZlYjb6j2sPlvO6ADqhl0AmUWZVYEDHo%3D' (2024-05-17)
  → 'sourcehut:~whynothugo/lsp_lines.nvim/7d9e2748b61bff6ebba6e30adbc7173ccf21c055?narHash=sha256-QsvmPOer7JgO7Y%2BN/iaNJD7Kmy69gnlV4CeyaQesNvA%3D' (2024-05-19)
• Updated input 'plugin-lsp-signature':
    'github:ray-x/lsp_signature.nvim/aed5d1162b0f07bb3af34bedcc5f70a2b6466ed8?narHash=sha256-f4AuZnt2m2VA90baSbZt6%2BelzjXmJKPFTO28v8auoYc%3D' (2024-05-10)
  → 'github:ray-x/lsp_signature.nvim/529e8861d0410389f0163a5e5c2199d4a4ef5bf6?narHash=sha256-4Abo4HGwzZtqEHcS9lsQdw%2BDsn7tkQoeq5QyfTEEwnA%3D' (2024-05-25)
• Updated input 'plugin-noice-nvim':
    'github:folke/noice.nvim/9f6f6ba74f8bfbf7e43d6302cf86b070362f6203?narHash=sha256-/dtOpAjzgMJHSjV9AZcR991I/r9xaMnpg0/1c6NdItg%3D' (2024-05-18)
  → 'github:folke/noice.nvim/f119045f38792ad5311e5f9be7a879e4c1a95fe0?narHash=sha256-GrgFjVDIQcCfg5qyO6FnhlGUCrz6rwAFh81yZXUJra4%3D' (2024-05-23)
• Updated input 'plugin-nvim-autopairs':
    'github:windwp/nvim-autopairs/b0b79e42a28f09719a7da9534c3731fa37319d9b?narHash=sha256-qcfYChucUpRFKMfB%2BIphmIPzH/HgobVDK44wDtVXSnU%3D' (2024-05-16)
  → 'github:windwp/nvim-autopairs/c15de7e7981f1111642e7e53799e1211d4606cb9?narHash=sha256-YEAqjlzVrS/VLrkwGo3L7cNOE1LuyLYlBtkR2HA5oVk%3D' (2024-05-19)
• Updated input 'plugin-nvim-bufferline-lua':
    'github:akinsho/nvim-bufferline.lua/73540cb95f8d95aa1af3ed57713c6720c78af915?narHash=sha256-bHlmaNXfZTlTm/8v48FwCde9ljZFLv25efYF5355bnw%3D' (2024-04-22)
  → 'github:akinsho/nvim-bufferline.lua/99337f63f0a3c3ab9519f3d1da7618ca4f91cffe?narHash=sha256-8PCkY1zrlMrPGnQOb7MjqDXNlkeX46jrT4ScIL%2BMOwM%3D' (2024-05-24)
• Updated input 'plugin-nvim-dap':
    'github:mfussenegger/nvim-dap/5a2f7121869394502521c52b2bc581ab22c69447?narHash=sha256-UZm2DA19uBeL2L5JKAZilqBTTPSA5X3ZEcAVJUq65p8%3D' (2024-05-16)
  → 'github:mfussenegger/nvim-dap/922ebc75c2fa9305e36402fbd8c984c8638770a0?narHash=sha256-uzivFy0ZNLxAXDqkYNrNy1SSHPRrGv3OLVCNCRDiikU%3D' (2024-05-26)
• Updated input 'plugin-nvim-dap-ui':
    'github:rcarriga/nvim-dap-ui/5934302d63d1ede12c0b22b6f23518bb183fc972?narHash=sha256-26g4dlxzTGaR5OrXpPo4A2erM/eSkgedb0Bl2pK362M%3D' (2024-04-28)
  → 'github:rcarriga/nvim-dap-ui/334cf3038c4756e6ab999cbac67c847fb654c190?narHash=sha256-paiyLNzqUq9G3U8qn8yl1AjHJzTTa17exA05QO09nGA%3D' (2024-05-20)
• Updated input 'plugin-nvim-lspconfig':
    'github:neovim/nvim-lspconfig/6d2ae9fdc3111a6e8fd5db2467aca11737195a30?narHash=sha256-Ofat8It2TCjxnMPHmQ5fZTeJDpMTIrDMGHXle66IWe8%3D' (2024-05-18)
  → 'github:neovim/nvim-lspconfig/b972e7154bc94ab4ecdbb38c8edbccac36f83996?narHash=sha256-PMMqPDnq4Q8gWeKQ2WPE%2BpOf1R1G61wJ%2BbAWkHpQlzE%3D' (2024-05-23)
• Updated input 'plugin-nvim-navbuddy':
    'github:SmiteshP/nvim-navbuddy/f34237e8a41ebc6e2716af2ebf49854d8c5289c8?narHash=sha256-EZXzFjGsZHkb2Ui5uvOottPHA8X15F6xyikab4dBlYk%3D' (2024-03-24)
  → 'github:SmiteshP/nvim-navbuddy/f22bac988f2dd073601d75ba39ea5636ab6e38cb?narHash=sha256-sZ1M27qNbLMHKR4Zu0NfJoBcQxJbhmW7Cx74Acirlww%3D' (2024-05-19)
• Updated input 'plugin-nvim-nio':
    'github:nvim-neotest/nvim-nio/8765cbc4d0c629c8158a5341e1b4305fd93c3a90?narHash=sha256-VfoJOXXtMhalFcnfhVzweq7TVmB8WjRP%2BZ5Z5Z24Pzc%3D' (2024-05-02)
  → 'github:nvim-neotest/nvim-nio/632024157d01e8bc48fd7df6a7de8ffe3fdd4f3a?narHash=sha256-UffuTu7mF96LHk0MQRNrsgDyo1QWa/1i5eJKjZkuG8k%3D' (2024-05-22)
• Updated input 'plugin-nvim-session-manager':
    'github:Shatur/neovim-session-manager/a0b9d25154be573bc0f99877afb3f57cf881cce7?narHash=sha256-SrJJWC/newJRB879zMUbLzOJQ8qtcHfLF/7GLPFlSRQ%3D' (2024-05-11)
  → 'github:Shatur/neovim-session-manager/b552ee8667037be5d0291229279a35af25e515fb?narHash=sha256-A6oHIg8PG84L7QIRpo9WXKzMq4EUe92jQIxObOxpFmg%3D' (2024-05-24)
• Updated input 'plugin-nvim-tree-lua':
    'github:nvim-tree/nvim-tree.lua/2bc725a3ebc23f0172fb0ab4d1134b81bcc13812?narHash=sha256-YqHAEztx6gEEm0GoDXC5djnIP030oGGRcskp8LPqVoc%3D' (2024-05-14)
  → 'github:nvim-tree/nvim-tree.lua/517e4fbb9ef3c0986da7047f44b4b91a2400f93c?narHash=sha256-E6J9d0LJMK%2BOwj/iWbGVZBiVL/NI1xd5P0NNQpUmXj4%3D' (2024-05-26)
• Updated input 'plugin-nvim-treesitter-context':
    'github:nvim-treesitter/nvim-treesitter-context/55e29081e73d2e4b2d62fb4dc3eebe21bf66a1e2?narHash=sha256-CriN45mFfyjTt14RJnmzXidACHJXUaA6XPwAoEtQUzg%3D' (2024-05-17)
  → 'github:nvim-treesitter/nvim-treesitter-context/f62bfe19e0fbc13ae95649dfb3cf22f4ff85b683?narHash=sha256-EY5Si6t7LXcxOP3ubGAAMd3lgbeaCOCIybSKi1Ucx98%3D' (2024-05-22)
• Updated input 'plugin-nvim-ts-autotag':
    'github:windwp/nvim-ts-autotag/aeb7090098722ffce16597bd0331105495640153?narHash=sha256-gh%2BDhC7%2B8O4z4lG/RIaMJgumnq/Vg5eWa6j/P8MQk0s%3D' (2024-05-18)
  → 'github:windwp/nvim-ts-autotag/8ae54b90e36ef1fc5267214b30c2cbff71525fe4?narHash=sha256-gy6OVR2iH361XMDDo0dqxJsAxo%2B5nXr3wP42pieeCUg%3D' (2024-05-22)
• Updated input 'plugin-nvim-web-devicons':
    'github:nvim-tree/nvim-web-devicons/e37bb1feee9e7320c76050a55443fa843b4b6f83?narHash=sha256-1trRSUVyWFl3K%2B7xHXQGNl/EwE0ggyigQpZ%2BkmRPsk8%3D' (2024-05-13)
  → 'github:nvim-tree/nvim-web-devicons/b77921fdc44833c994fdb389d658ccbce5490c16?narHash=sha256-fmbsnNVZ6nBorBILwPfEgcDDWZCkh9YZH/aC343FxP4%3D' (2024-05-25)
• Updated input 'plugin-obsidian-nvim':
    'github:epwalsh/obsidian.nvim/7b59d907a3ee6952c58e07139cf021a205692338?narHash=sha256-PiaPmQ11Wx57ojCG4G50Rwr%2BphanvuoBqbPHg3N4eGw%3D' (2024-05-17)
  → 'github:epwalsh/obsidian.nvim/0890a3f4e1711d98b5aa78bf40d2c5b81ef3c39f?narHash=sha256-R7q3PmDMYQtDTE1JZgQtvArBq55MnvNdcChOsuivSCo%3D' (2024-05-23)
• Updated input 'plugin-orgmode-nvim':
    'github:nvim-orgmode/orgmode/dbcff9e8d9df48bfff95f7204ca483c11864a755?narHash=sha256-vhygnZNJceJHq4gQm6h0zv/Cgp9%2BfSeWuL1Varrws1U%3D' (2024-05-17)
  → 'github:nvim-orgmode/orgmode/cb3c9bf6caf3411af88a9a1a0b7eb9be57b9741c?narHash=sha256-3xsdklkUuJwUzUieZT6eGIgDZUdVEGeyhxxUe99TOAA%3D' (2024-05-26)
• Updated input 'plugin-plenary-nvim':
    'github:nvim-lua/plenary.nvim/08e301982b9a057110ede7a735dd1b5285eb341f?narHash=sha256-vy0MXEoSM4rvYpfwbc2PnilvMOA30Urv0FAxjXuvqQ8%3D' (2024-04-25)
  → 'github:nvim-lua/plenary.nvim/a3e3bc82a3f95c5ed0d7201546d5d2c19b20d683?narHash=sha256-5Jf2mWFVDofXBcXLbMa417mqlEPWLA%2BcQIZH/vNEV1g%3D' (2024-05-20)
• Updated input 'plugin-rose-pine':
    'github:rose-pine/neovim/b6fe88c3282cf9f117a3e836d761c2d78d02f417?narHash=sha256-AdPSz5%2BnCOnLWexBasHuxRxEKbL4WVg%2BuV78//W5nLs%3D' (2024-05-14)
  → 'github:rose-pine/neovim/87aa437172357ad8f916942bca249ceadc6c68b1?narHash=sha256-mpBx0R9tR4KrOMO9J0gg2aOeHtiU9zK8xoa7Ebkx0n8%3D' (2024-05-26)
• Updated input 'plugin-telescope':
    'github:nvim-telescope/telescope.nvim/0c12735d5aff6a48ffd8111bf144dc2ff44e5975?narHash=sha256-%2Bh0L5vpwXFNDuzE5Dne5zWuKtZ1mquAhdplHcUxPg8w%3D' (2024-05-17)
  → 'github:nvim-telescope/telescope.nvim/349660c0d35da06459ee8589af77de2086b652ce?narHash=sha256-JXdpKfrSvrzpTqy%2Bg9Bg85/vIDTUZfDr%2BZhxH8wJDxA%3D' (2024-05-26)
• Updated input 'plugin-todo-comments':
    'github:folke/todo-comments.nvim/a7e39ae9e74f2c8c6dc4eea6d40c3971ae84752d?narHash=sha256-BJNU01iTRDNrPv48fgiJRS%2BouaHkoqw2AYXKDRgDzfw%3D' (2024-03-27)
  → 'github:folke/todo-comments.nvim/e1549807066947818113a7d7ed48f637e49620d3?narHash=sha256-ZJp0emoHogSdhXPIH74MH4CznxhCmMbO243dqxAZMJo%3D' (2024-05-22)
• Updated input 'plugin-toggleterm-nvim':
    'github:akinsho/toggleterm.nvim/066cccf48a43553a80a210eb3be89a15d789d6e6?narHash=sha256-mM5bGgAemsRJD9U6U5K6ia5qb8NaTusM99x6xrtEBfw%3D' (2024-04-22)
  → 'github:akinsho/toggleterm.nvim/fee58a0473fd92b28c34f8f724e4918b15ba30a3?narHash=sha256-h82zisizLm0FOt4l8lzgC/spFk3R5Gx25A5YgULwW8U%3D' (2024-05-19)
• Updated input 'plugin-tokyonight':
    'github:folke/tokyonight.nvim/634015fff1457ed66cf5364213a2bbbc51a82d6c?narHash=sha256-lJjBsAguMDA765lfxfUwU0I0tWmAESLCv9yiVrhTYDo%3D' (2024-05-16)
  → 'github:folke/tokyonight.nvim/0fae425aaab04a5f97666bd431b96f2f19c36935?narHash=sha256-ZWxK0q8kUYHOk%2BykH1m4901trnuHN8O9hkOZR6HdC%2BY%3D' (2024-05-26)
• Updated input 'plugin-trouble':
    'github:folke/trouble.nvim/b9cf677f20bb2faa2dacfa870b084e568dca9572?narHash=sha256-kIQ72fqAsiMF9jq0MzC6peaHJddYn5PRNXfYFHTQB5Q%3D' (2024-03-29)
  → 'github:folke/trouble.nvim/a8264a65a0b894832ea642844f5b7c30112c458f?narHash=sha256-D3dqI4NRgEG4BCDLQ3ci9lgYxt90XyWDQXlk4/uuR6M%3D' (2024-05-19)
• Updated input 'plugin-vim-fugitive':
    'github:tpope/vim-fugitive/5a9bd42dd8dd127779f3cd8982a0419b7ca9c7f5?narHash=sha256-517q3oPvshwUBhXEDuB23S0RPuHvSZWK/1tr6wDhEyA%3D' (2024-05-17)
  → 'github:tpope/vim-fugitive/4f59455d2388e113bd510e85b310d15b9228ca0d?narHash=sha256-nyNtb3nsS/zFdSNRyXabcGIabAwgivJIUFB2c62vXmA%3D' (2024-05-19)
• Updated input 'zig':
    'github:mitchellh/zig-overlay/03303bf01701b04ec87c55ce5d8d6f5ecf86d0a7?narHash=sha256-CCqc3c3yvXgRaTW18epSHlF2HeikwNXqxnlrRs2sl3Y%3D' (2024-05-15)
  → 'github:mitchellh/zig-overlay/93b02a697561ecd438cfa5779727b5a1c300cb4c?narHash=sha256-LIz08gALt2wlutGXAEhNroEoIuPV5ePQB8LI4WzXcy8%3D' (2024-05-26)
2024-05-27 03:31:42 +03:00
Frothy 08547724e4
modules/theme: use inherited `optionalString` 2024-05-25 20:37:51 +03:00
raf 5748bb5eb9
Merge pull request #299 from FrothyMarrow/transparent-oxocarbon
theme: add minimal transparency support for oxocarbon
2024-05-23 14:30:47 +00:00
Frothy 367320dcd9 docs: add entry for transparency support for oxocarbon 2024-05-23 10:28:06 -04:00
Frothy fc4e471490 theme: add minimal transparency support for oxocarbon 2024-05-23 10:28:04 -04:00
Yoni Firroloni 1061c920be
docs: add quirk about using nodejs (#298)
* doc: add quircks about nodejs

* doc: make shorter sentences
2024-05-23 01:32:12 +00:00
NotAShelf 9bbdb8d48a
docs/manual: add plugins page
This should be helpful for listing known plugin behaviour where the behaviour is undesirable, but also unfixable
2024-05-23 03:27:23 +03:00
NotAShelf f9343f1bc7
statusline/lualine: equalize padding 2024-05-23 03:20:21 +03:00
raf 6624841e63
Merge pull request #283 from horriblename/fix-colorizer
Fix colorizer
2024-05-22 01:22:05 +00:00
Ching Pei Yang 9baebb0d82 colorizer: remove unneeded freeform module 2024-05-21 22:55:54 +02:00
Ching Pei Yang 7d9f1e0481 colorizer: add example 2024-05-12 03:15:04 +02:00
Ching Pei Yang 82e92a56da colorizer: move back to setupOpts 2024-05-12 02:11:59 +02:00
Ching Pei Yang 981fe07075 colorizer: allow null for all options 2024-05-12 01:46:57 +02:00
Pei Yang Ching 2c37513012 colorizer: fix nonsense options 2024-05-05 02:18:19 +02:00
26 changed files with 622 additions and 327 deletions

View File

@ -222,10 +222,10 @@ inputs: let
enable = true;
setupOpts.custom_colorcolumn = {
# this is a freeform module, it's `buftype = int;` for configuring column position
nix = 110;
ruby = 120;
java = 130;
go = [90 130];
nix = "110";
ruby = "120";
java = "130";
go = ["90" "130"];
};
};
};

View File

@ -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
```

16
docs/manual/plugins.md Normal file
View File

@ -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
```
<!--
If adding a new section, uncomment this part and add your page to
plugins/<page>.md
```{=include=} chapters
plugins/page.md
```
-->

View File

@ -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.

View File

@ -6,23 +6,46 @@ 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):
- Modified type for
[](#opt-vim.visuals.fidget-nvim.setupOpts.progress.display.overrides) from
`anything` to a `submodule` for better type checking.
[vim.visuals.fidget-nvim.setupOpts.progress.display.overrides](#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`.
- Fix [vim.ui.smartcolumn.setupOpts.custom_colorcolumn](#opt-vim.ui.smartcolumn.setupOpts.custom_colorcolumn)
using the wrong type `int` instead of the expected type `string`.
[horriblename](https://github.com/horriblename):
- Fix broken treesitter-context keybinds in visual mode
- Depcrecate use of `__empty` to define empty tables in lua. Empty attrset are
no longer filtered and thus should be used instead.
- Deprecate use of `__empty` to define empty tables in lua. Empty attrset are no
longer filtered and thus should be used instead.
- Make noice.nvim customizable
[NotAShelf](https://github.com/notashelf)
[jacekpoz](https://github.com/jacekpoz):
- Add [ocaml-lsp](https://github.com/ocaml/ocaml-lsp) support.
- Fix Emac typo
[diniamo](https://github.com/diniamo):
- Move the `theme` dag entry to before `luaScript`.
- Add rustfmt as the default formatter for Rust.
- Enabled the terminal integration of catppuccin for theming Neovim's built-in terminal (this also affects toggleterm).
[NotAShelf](https://github.com/notashelf):
- Add `deno fmt` as the default Markdown formatter. This will be enabled
automatically if you have autoformatting enabled, but can be disabled manually
@ -36,11 +59,12 @@ Release notes for release 0.7
added once the [credo](https://github.com/rrrene/credo) linter has been added
to nixpkgs. A pull request is currently open.
- Remove vim-tidal and friends
- 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
[ts-error-translator.nvim](https://github.com/dmmulroy/ts-error-translator.nvim)
extension of the TS language module, under
`vim.languages.ts.extensions.ts-error-translator`

View File

@ -114,16 +114,16 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1716041078,
"narHash": "sha256-ewjE7eVBVmjh8faip3RW+I3WzQZ3iywQVyxZfjunfH0=",
"lastModified": 1719082008,
"narHash": "sha256-jHJSUH619zBQ6WdC21fFAlDxHErKVDJ5fpN0Hgx4sjs=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "04496f014fcf27fdcede464d5de8558e12b5710c",
"rev": "9693852a2070b398ee123a329e68f0dab5526681",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable-small",
"ref": "nixpkgs-unstable",
"repo": "nixpkgs",
"type": "github"
}
@ -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": {
@ -1056,11 +1056,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": {
@ -1072,11 +1072,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": {
@ -1120,11 +1120,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": {
@ -1136,11 +1136,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": {
@ -1184,11 +1184,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": {
@ -1216,11 +1216,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": {
@ -1248,11 +1248,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": {
@ -1264,11 +1264,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": {
@ -1280,11 +1280,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": {
@ -1296,11 +1296,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": {
@ -1312,11 +1312,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": {
@ -1344,11 +1344,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": {
@ -1376,11 +1376,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": {
@ -1424,11 +1424,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": {
@ -1520,11 +1520,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": {
@ -1536,11 +1536,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": {
@ -1552,11 +1552,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": {
@ -1568,11 +1568,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": {
@ -1584,11 +1584,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": {
@ -1597,6 +1597,22 @@
"type": "github"
}
},
"plugin-ts-error-translator": {
"flake": false,
"locked": {
"lastModified": 1712269172,
"narHash": "sha256-NJ0qfKvkwZ/0GolAeATlQLyQ7nGN6Z6q3uRqI+73wPk=",
"owner": "dmmulroy",
"repo": "ts-error-translator.nvim",
"rev": "11ae55b28bde02663b5f983f59b0e3fd9c4e845b",
"type": "github"
},
"original": {
"owner": "dmmulroy",
"repo": "ts-error-translator.nvim",
"type": "github"
}
},
"plugin-vim-dirtytalk": {
"flake": false,
"locked": {
@ -1616,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": {
@ -1840,6 +1856,7 @@
"plugin-toggleterm-nvim": "plugin-toggleterm-nvim",
"plugin-tokyonight": "plugin-tokyonight",
"plugin-trouble": "plugin-trouble",
"plugin-ts-error-translator": "plugin-ts-error-translator",
"plugin-vim-dirtytalk": "plugin-vim-dirtytalk",
"plugin-vim-fugitive": "plugin-vim-fugitive",
"plugin-vim-illuminate": "plugin-vim-illuminate",
@ -1930,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": {

View File

@ -30,7 +30,7 @@
neovim-flake =
nixpkgs.lib.warn ''
homeManagerModules.neovim-flake has been deprecated.
Plese use the homeManagereModules.nvf instead
Plese use the homeManagerModules.nvf instead
''
self.homeManagerModules.nvf;
@ -77,7 +77,7 @@
# Flake inputs
inputs = {
## Basic Inputs
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable-small";
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
flake-parts.url = "github:hercules-ci/flake-parts";
flake-utils.url = "github:numtide/flake-utils";
systems.url = "github:nix-systems/default";
@ -183,6 +183,11 @@
flake = false;
};
plugin-ts-error-translator = {
url = "github:dmmulroy/ts-error-translator.nvim";
flake = false;
};
# Copying/Registers
plugin-registers = {
url = "github:tversteeg/registers.nvim";

View File

@ -4,9 +4,8 @@
...
}: let
inherit (lib.modules) mkIf;
inherit (lib.strings) optionalString;
inherit (lib.trivial) boolToString;
inherit (lib.nvim.dag) entryAnywhere;
inherit (lib.nvim.lua) toLuaObject;
cfg = config.vim.autopairs;
in {
@ -14,7 +13,7 @@ in {
vim.startPlugins = ["nvim-autopairs"];
vim.luaConfigRC.autopairs = entryAnywhere ''
require("nvim-autopairs").setup{}
require("nvim-autopairs").setup({ map_cr = ${boolToString (!config.vim.autocomplete.enable)} })
'';
};
}

View File

@ -61,15 +61,19 @@ in {
(mkSetLuaBinding mappings.complete ''
require('cmp').complete
'')
(mkSetLuaBinding mappings.confirm ''
function()
if not require('cmp').confirm({ select = true }) then
local termcode = vim.api.nvim_replace_termcodes(${toJSON mappings.confirm.value}, true, false, true)
vim.fn.feedkeys(termcode, 'n')
(let
defaultKeys =
if config.vim.autopairs.enable
then "require('nvim-autopairs').autopairs_cr()"
else "vim.api.nvim_replace_termcodes(${toJSON mappings.confirm.value}, true, false, true)";
in
mkSetLuaBinding mappings.confirm ''
function()
if not require('cmp').confirm({ select = true }) then
vim.fn.feedkeys(${defaultKeys}, 'n')
end
end
end
'')
'')
(mkSetLuaBinding mappings.next ''
function()
local has_words_before = function()

View File

@ -18,7 +18,7 @@
defaultServer = "bash-ls";
servers = {
bash-ls = {
package = pkgs.nodePackages.bash-language-server;
package = pkgs.bash-language-server;
lspConfig = ''
lspconfig.bashls.setup{
capabilities = capabilities;
@ -85,7 +85,7 @@ in {
description = "bash-language-server package, or the command to run as a list of strings";
example = literalExpression ''[lib.getExe pkgs.nodePackages.bash-language-server "start"]'';
type = either package (listOf str);
default = pkgs.nodePackages.bash-language-server;
default = pkgs.bash-language-server;
};
};

View File

@ -35,7 +35,7 @@
'';
};
clangd = {
package = pkgs.clang-tools_16;
package = pkgs.clang-tools;
lspConfig = ''
local clangd_cap = capabilities
-- use same offsetEncoding as null-ls

View File

@ -17,7 +17,7 @@
defaultServer = "vscode-langservers-extracted";
servers = {
vscode-langservers-extracted = {
package = pkgs.nodePackages.vscode-langservers-extracted;
package = pkgs.vscode-langservers-extracted;
lspConfig = ''
-- enable (broadcasting) snippet capability for completion
-- see <https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#cssls>

View File

@ -17,7 +17,7 @@
defaultServer = "pyright";
servers = {
pyright = {
package = pkgs.nodePackages.pyright;
package = pkgs.pyright;
lspConfig = ''
lspconfig.pyright.setup{
capabilities = capabilities;

View File

@ -4,17 +4,33 @@
lib,
...
}: let
inherit (builtins) attrNames;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.options) mkOption mkEnableOption;
inherit (lib.strings) optionalString;
inherit (lib.trivial) boolToString;
inherit (lib.lists) isList optionals;
inherit (lib.types) bool package str listOf either;
inherit (lib.types) bool package str listOf either enum;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.lua) expToLua;
inherit (lib.nvim.dag) entryAnywhere;
cfg = config.vim.languages.rust;
defaultFormat = "rustfmt";
formats = {
rustfmt = {
package = pkgs.rustfmt;
nullConfig = ''
table.insert(
ls_sources,
null_ls.builtins.formatting.rustfmt.with({
command = "${cfg.format.package}/bin/rustfmt",
})
)
'';
};
};
in {
options.vim.languages.rust = {
enable = mkEnableOption "Rust language support";
@ -49,6 +65,22 @@ in {
};
};
format = {
enable = mkEnableOption "Rust formatting" // {default = config.vim.languages.enableFormat;};
type = mkOption {
description = "Rust formatter to use";
type = enum (attrNames formats);
default = defaultFormat;
};
package = mkOption {
description = "Rust formatter package";
type = package;
default = formats.${cfg.format.type}.package;
};
};
dap = {
enable = mkOption {
description = "Rust Debug Adapter support";
@ -86,6 +118,11 @@ in {
vim.treesitter.grammars = [cfg.treesitter.package];
})
(mkIf cfg.format.enable {
vim.lsp.null-ls.enable = true;
vim.lsp.null-ls.sources.rust-format = formats.${cfg.format.type}.nullConfig;
})
(mkIf (cfg.lsp.enable || cfg.dap.enable) {
vim = {
startPlugins = ["rust-tools"] ++ optionals cfg.dap.enable [cfg.dap.package];

View File

@ -54,7 +54,7 @@
defaultDiagnosticsProvider = ["eslint_d"];
diagnosticsProviders = {
eslint_d = {
package = pkgs.nodePackages.eslint_d;
package = pkgs.eslint_d;
nullConfig = pkg: ''
table.insert(
ls_sources,

View File

@ -9,10 +9,11 @@
inherit (lib.modules) mkIf mkMerge;
inherit (lib.lists) isList;
inherit (lib.meta) getExe;
inherit (lib.types) enum either listOf package str;
inherit (lib.nvim.lua) expToLua;
inherit (lib.nvim.types) mkGrammarOption diagnostics;
inherit (lib.types) enum either listOf package str bool;
inherit (lib.nvim.lua) expToLua toLuaObject;
inherit (lib.nvim.types) mkGrammarOption diagnostics mkPluginSetupOption;
inherit (lib.nvim.languages) diagnosticsToLua;
inherit (lib.nvim.dag) entryAnywhere;
cfg = config.vim.languages.ts;
@ -32,6 +33,7 @@
}
'';
};
denols = {
package = pkgs.deno;
lspConfig = ''
@ -80,7 +82,7 @@
defaultDiagnosticsProvider = ["eslint_d"];
diagnosticsProviders = {
eslint_d = {
package = pkgs.nodePackages.eslint_d;
package = pkgs.eslint_d;
nullConfig = pkg: ''
table.insert(
ls_sources,
@ -143,6 +145,24 @@ in {
inherit defaultDiagnosticsProvider;
};
};
extensions = {
ts-error-translator = {
enable = mkEnableOption ''
Typescript error translation with
[ts-error-translator.nvim](github.com/dmmulroy/ts-error-translator.nvim)
'';
setupOpts = mkPluginSetupOption "ts-error-translator" {
# This is the default configuration behaviour.
auto_override_publish_diagnostics = mkOption {
description = "Automatically override the publish_diagnostics handler";
type = bool;
default = true;
};
};
};
};
};
config = mkIf cfg.enable (mkMerge [
@ -169,5 +189,12 @@ in {
inherit diagnosticsProviders;
};
})
(mkIf cfg.extensions."ts-error-translator".enable {
vim.startPlugins = ["ts-error-translator"];
vim.luaConfigRC.ts-error-translator = entryAnywhere ''
require("ts-error-translator").setup(${toLuaObject cfg.extensions.ts-error-translator.setupOpts})
'';
})
]);
}

View File

@ -22,9 +22,6 @@ in {
};
luaConfigRC.orgmode = entryAnywhere ''
-- Load custom treesitter grammar for org filetype
require('orgmode').setup_ts_grammar()
-- Treesitter configuration
require('nvim-treesitter.configs').setup {

View File

@ -15,7 +15,7 @@ in {
];
options.vim.notes.orgmode = {
enable = mkEnableOption "nvim-orgmode: Neovim plugin for Emac Orgmode. Get the best of both worlds";
enable = mkEnableOption "nvim-orgmode: Neovim plugin for Emacs Orgmode. Get the best of both worlds";
setupOpts = mkPluginSetupOption "Orgmode" {
org_agenda_files = mkOption {

View File

@ -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",

View File

@ -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,12 @@
-- Catppuccin theme
require('catppuccin').setup {
flavour = "${style}",
transparent_background = ${lib.boolToString transparent},
transparent_background = ${boolToString transparent},
term_colors = true,
integrations = {
nvimtree = {
enabled = true,
transparent_panel = ${lib.boolToString transparent},
transparent_panel = ${boolToString transparent},
show_root = true,
},
@ -85,11 +92,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 +138,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 +163,7 @@
styles = {
bold = false,
italic = false, -- I would like to add more options for this
transparency = ${lib.boolToString transparent},
transparency = ${boolToString transparent},
},
})

View File

@ -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 {
@ -43,10 +45,12 @@ in {
config = mkIf cfg.enable {
vim = {
startPlugins = [cfg.name];
luaConfigRC = {
themeSetup = entryBefore ["theme"] cfg.extraConfig;
theme = supported_themes.${cfg.name}.setup (with cfg; {inherit style transparent;});
};
configRC.theme = entryBefore ["luaScript"] ''
lua << EOF
${cfg.extraConfig}
${supported_themes.${cfg.name}.setup (with cfg; {inherit style transparent;})}
EOF
'';
};
};
}

View File

@ -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;
};
};
};

View File

@ -6,13 +6,11 @@
}: let
inherit (lib.modules) mkIf;
inherit (lib.lists) optionals;
inherit (lib.strings) optionalString;
inherit (lib.trivial) boolToString;
inherit (lib.nvim.lua) toLuaObject;
inherit (lib.nvim.dag) entryAnywhere;
cfg = config.vim.ui.noice;
tscfg = config.vim.treesitter;
cmptype = config.vim.autocomplete.type;
defaultGrammars = with pkgs.vimPlugins.nvim-treesitter.builtGrammars; [vim regex lua bash markdown];
in {
@ -26,67 +24,7 @@ in {
treesitter.grammars = optionals tscfg.addDefaultGrammars defaultGrammars;
luaConfigRC.noice-nvim = entryAnywhere ''
require("noice").setup({
lsp = {
override = {
["vim.lsp.util.convert_input_to_markdown_lines"] = true,
["vim.lsp.util.stylize_markdown"] = true,
${optionalString (cmptype == "nvim-cmp") "[\"cmp.entry.get_documentation\"] = true,"}
},
signature = {
enabled = false, -- FIXME: enabling this file throws an error which I couldn't figure out
},
},
hover = {
enabled = true,
silent = false, -- set to true to not show a message if hover is not available
view = nil, -- when nil, use defaults from documentation
opts = {}, -- merged with defaults from documentation
},
presets = {
bottom_search = true, -- use a classic bottom cmdline for search
command_palette = true, -- position the cmdline and popupmenu together
long_message_to_split = true, -- long messages will be sent to a split
inc_rename = false, -- enables an input dialog for inc-rename.nvim
lsp_doc_border = ${boolToString config.vim.ui.borders.enable}, -- add a border to hover docs and signature help
},
format = {
cmdline = { pattern = "^:", icon = "", lang = "vim" },
search_down = { kind = "search", pattern = "^/", icon = " ", lang = "regex" },
search_up = { kind = "search", pattern = "^%?", icon = " ", lang = "regex" },
filter = { pattern = "^:%s*!", icon = "", lang = "bash" },
lua = { pattern = "^:%s*lua%s+", icon = "", lang = "lua" },
help = { pattern = "^:%s*he?l?p?%s+", icon = "󰋖" },
input = {},
},
messages = {
-- NOTE: If you enable messages, then the cmdline is enabled automatically.
-- This is a current Neovim limitation.
enabled = true, -- enables the Noice messages UI
view = "notify", -- default view for messages
view_error = "notify", -- view for errors
view_warn = "notify", -- view for warnings
view_history = "messages", -- view for :messages
view_search = "virtualtext", -- view for search count messages. Set to `false` to disable
},
-- Hide written messages
routes = {
{
filter = {
event = "msg_show",
kind = "",
find = "written",
},
opts = { skip = true },
},
},
})
require("noice").setup(${toLuaObject cfg.setupOpts})
'';
};
};

View File

@ -1,7 +1,140 @@
{lib, ...}: let
inherit (lib.options) mkEnableOption;
{
lib,
config,
...
}: let
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.types) anything nullOr listOf submodule str;
inherit (lib.nvim.types) mkPluginSetupOption;
inherit (lib.nvim.config) mkBool;
in {
options.vim.ui.noice = {
enable = mkEnableOption "noice.nvim UI modification library";
setupOpts = mkPluginSetupOption "noice.nvim" {
lsp = {
override = {
"vim.lsp.util.convert_input_to_markdown_lines" =
mkBool true "override the default lsp markdown formatter with Noice";
"vim.lsp.util.stylize_markdown" =
mkBool true "override the lsp markdown formatter with Noice";
"cmp.entry.get_documentation" =
mkBool (config.vim.autocomplete.type == "nvim-cmp") "override cmp documentation with Noice";
};
signature = {
enabled = mkEnableOption "signature help";
};
};
presets = {
bottom_search = mkBool true "use a classic bottom cmdline for search";
command_palette = mkBool true "position the cmdline and popupmenu together";
long_message_to_split = mkBool true "long messages will be sent to a split";
inc_rename = mkBool false "enables an input dialog for inc-rename.nvim";
lsp_doc_border =
mkBool config.vim.ui.borders.enable "add a border to hover docs and signature help";
};
# TODO: is it possible to write a submodule for this?
format = {
cmdline = mkOption {
description = "formatting options for the cmdline";
type = nullOr anything;
default = {
pattern = "^:";
icon = "";
lang = "vim";
};
};
search_down = mkOption {
description = "formatting options for search_down";
type = nullOr anything;
default = {
kind = "search";
pattern = "^/";
icon = " ";
lang = "regex";
};
};
search_up = mkOption {
description = "formatting options for search_up";
type = nullOr anything;
default = {
kind = "search";
pattern = "^%?";
icon = " ";
lang = "regex";
};
};
filter = mkOption {
description = "formatting options for filter";
type = nullOr anything;
default = {
pattern = "^:%s*!";
icon = "";
lang = "bash";
};
};
lua = mkOption {
description = "formatting options for lua";
type = nullOr anything;
default = {
pattern = "^:%s*lua%s+";
icon = "";
lang = "lua";
};
};
help = mkOption {
description = "formatting options for help";
type = nullOr anything;
default = {
pattern = "^:%s*he?l?p?%s+";
icon = "󰋖";
};
};
};
routes = mkOption {
description = "How to route messages";
type = listOf (submodule {
options = {
view = mkOption {
description = "";
type = str;
};
filter = mkOption {
description = "";
type = anything;
};
opts = mkOption {
description = "";
type = nullOr anything;
};
};
});
default = [
{
filter = {
event = "msg_show";
kind = "";
find = "written";
};
opts = {skip = true;};
}
];
defaultText = "Hide written messages";
};
};
};
}

View File

@ -31,15 +31,15 @@ in {
custom_colorcolumn = mkOption {
description = "The position at which smart column should be displayed for each individual buffer type";
type = attrsOf (either int (listOf int));
type = attrsOf (either str (listOf str));
default = {};
example = literalExpression ''
vim.ui.smartcolumn.setupOpts.custom_colorcolumn = {
nix = 110;
ruby = 120;
java = 130;
go = [90 130];
nix = "110";
ruby = "120";
java = "130";
go = ["90" "130"];
};
'';
};

View File

@ -4,14 +4,14 @@
...
}: let
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.types) attrsOf str;
inherit (lib.types) attrsOf nullOr str;
in {
options.vim.binds.whichKey = {
enable = mkEnableOption "which-key keybind helper menu";
register = mkOption {
description = "Register label for which-key keybind helper menu";
type = attrsOf str;
type = attrsOf (nullOr str);
default = {};
};
};