Compare commits

...

36 Commits

Author SHA1 Message Date
raf 5d28e1cf9d
Merge 2bfedb14dc into a86c59457c 2024-06-17 07:37:54 -04: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
Frothy 2c9a9b4d29
Merge pull request #289 from horriblename/lua-include-empty-attrs
lib: do not filter out empty attrs in toLuaObject
2024-05-21 07:16:03 -04:00
Frothy 68ca227a87 lib: remove alias `lib.warn` 2024-05-21 07:08:17 -04:00
Frothy 69257c03a3 docs: add entry for `__empty` deprecation 2024-05-21 06:55:46 -04:00
Frothy ac20dfbdd4 lib: add deprecation warning for `__empty` 2024-05-21 06:51:56 -04:00
Ching Pei Yang af72dc105d lib: remove unused __empty special case in toLuaObject 2024-05-18 14:52:40 +02:00
Ching Pei Yang 8aa3a23e97 lib: do not filter out empty attrs in toLuaObject 2024-05-12 03:17:04 +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
NotAShelf 2bfedb14dc
flake/tests: also expose nixos machine tests as a package 2024-05-09 00:54:29 +03:00
NotAShelf aa62e904d6
flake/tests: pass testProfile as a shared arg 2024-05-06 23:30:48 +03:00
NotAShelf c3c76afda4
flake/tests: initial test script 2024-05-06 17:25:58 +03:00
NotAShelf 198a36f3d4
flake/tests: add missing imports 2024-05-06 16:43:05 +03:00
NotAShelf 3aa02e8524
flake: add machine tests 2024-05-06 16:13:38 +03:00
Pei Yang Ching 2c37513012 colorizer: fix nonsense options 2024-05-05 02:18:19 +02:00
23 changed files with 509 additions and 229 deletions

1
.gitignore vendored
View File

@ -2,6 +2,7 @@
result
result/
.direnv
.nixos-test-history
# Ignore files generated by common IDEs
.vscode/*

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,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,10 +15,15 @@ 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):
- 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.
[NotAShelf](https://github.com/notashelf)
@ -36,9 +41,11 @@ 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.
- Fix Emac typo

View File

@ -67,6 +67,26 @@
"type": "github"
}
},
"home-manager": {
"inputs": {
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1714981474,
"narHash": "sha256-b3/U21CJjCjJKmA9WqUbZGZgCvospO3ArOUTgJugkOY=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "6ebe7be2e67be7b9b54d61ce5704f6fb466c536f",
"type": "github"
},
"original": {
"owner": "nix-community",
"repo": "home-manager",
"type": "github"
}
},
"naersk": {
"inputs": {
"nixpkgs": [
@ -114,11 +134,11 @@
},
"nixpkgs": {
"locked": {
"lastModified": 1716041078,
"narHash": "sha256-ewjE7eVBVmjh8faip3RW+I3WzQZ3iywQVyxZfjunfH0=",
"lastModified": 1717839683,
"narHash": "sha256-kC0eyEsfpXbtQ2Ee5kgjmLFSVsLgnqpj10LjEi+fK+g=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "04496f014fcf27fdcede464d5de8558e12b5710c",
"rev": "3f3a01219b4a1b6ee63039a3aa63948fbf37c0dd",
"type": "github"
},
"original": {
@ -223,11 +243,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 +515,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 +547,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 +563,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 +579,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 +595,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 +627,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 +659,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 +723,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 +739,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 +755,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 +771,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 +787,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 +931,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 +980,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 +996,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 +1076,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 +1092,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 +1140,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 +1156,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 +1204,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 +1236,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 +1268,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 +1284,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 +1300,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 +1316,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 +1332,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 +1364,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 +1396,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 +1444,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 +1540,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 +1556,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 +1572,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 +1588,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 +1604,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": {
@ -1616,11 +1636,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": {
@ -1749,6 +1769,7 @@
"inputs": {
"flake-parts": "flake-parts",
"flake-utils": "flake-utils",
"home-manager": "home-manager",
"nil": "nil",
"nixpkgs": "nixpkgs",
"nmd": "nmd",
@ -1930,11 +1951,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

@ -14,6 +14,8 @@
imports = [
# add lib to module args
{_module.args = {inherit (nixpkgs) lib;};}
./flake/tests # machine tests for nvf
./flake/apps.nix
./flake/legacyPackages.nix
./flake/overlays.nix
@ -30,7 +32,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;
@ -88,6 +90,12 @@
flake = false;
};
# Primarily used for testing nvf.
home-manager = {
url = "github:nix-community/home-manager";
inputs.nixpkgs.follows = "nixpkgs";
};
# TODO: get zig from the zig overlay instead of nixpkgs
zig.url = "github:mitchellh/zig-overlay";

View File

@ -0,0 +1,33 @@
{
inputs,
nixosTest,
homeManagerModules,
testProfile,
...
}:
nixosTest {
name = "home-manager-test";
skipLint = true;
nodes.machine = {
imports = [
testProfile
inputs.home-manager.nixosModules.home-manager
];
config = {
home-manager = {
sharedModules = [
homeManagerModules.nvf
];
users.test = {
home.stateVersion = "24.05";
programs.nvf.enable = true;
};
};
};
};
testScript = "";
}

View File

@ -0,0 +1,56 @@
{
nixosTest,
nixosModules,
testProfile,
...
}:
nixosTest {
name = "nixos-test";
nodes.machine = {
imports = [
testProfile
nixosModules.nvf
];
config = {
programs.nvf.enable = true;
};
};
testScript = ''
import subprocess
machine.wait_for_unit("default.target")
def check_errs(process):
# Check for errors
print("Connecting to Neovim process")
# Capture stdout and stderr
stdout, stderr = process.communicate()
# Print captured stdout and stderr
if stdout:
print("Captured stdout:")
print(stdout.decode('utf-8'))
if stderr:
print("Captured stderr:")
print(stderr.decode('utf-8'))
def run_neovim_headless():
print("Running Neovim in headless mode.")
# Run Neovim in headless mode
nvim_process = subprocess.Popen(['nvim', '--headless'], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
check_errs(nvim_process)
# Load configuration file
nvim_process.stdin.write(b':NonExistentCommand\n')
nvim_process.stdin.flush()
# run Neovim in headless mode
# and expect it to return sucessfully
machine.succeed(run_neovim_headless())
'';
}

35
flake/tests/default.nix Normal file
View File

@ -0,0 +1,35 @@
{
inputs,
config,
lib,
...
}: {
perSystem = {
pkgs,
self',
...
}: let
inherit (lib.filesystem) packagesFromDirectoryRecursive;
inherit (lib.customisation) callPackageWith;
inherit (lib.attrsets) recursiveUpdate;
defaultInherits = {
inherit (config.flake) homeManagerModules nixosModules;
inherit inputs;
testProfile = ./profiles/minimal.nix;
};
callPackage = callPackageWith (recursiveUpdate pkgs defaultInherits);
in {
checks = packagesFromDirectoryRecursive {
inherit callPackage;
directory = ./checks;
};
# expose checks as packages to be built
packages = {
test-home-manager-module = self'.checks.homeManagerModule.driverInteractive;
test-nixos-module = self'.checks.nixosModule.driverInteractive;
};
};
}

View File

@ -0,0 +1,13 @@
{
# he's a thicc boi
virtualisation = {
cores = 2;
memorySize = 2048;
qemu.options = ["-vga none -enable-kvm -device virtio-gpu-pci,xres=720,yres=1440"];
};
users.users.test = {
isNormalUser = true;
password = "";
};
}

View File

@ -3,7 +3,7 @@
inherit (builtins) hasAttr head throw typeOf isList isAttrs isBool isInt isString isPath isFloat toJSON;
inherit (lib.attrsets) mapAttrsToList filterAttrs;
inherit (lib.strings) concatStringsSep concatMapStringsSep stringToCharacters;
inherit (lib.trivial) boolToString;
inherit (lib.trivial) boolToString warn;
in rec {
wrapLuaConfig = {
luaBefore ? "",
@ -66,7 +66,10 @@ in rec {
if isLuaInline args
then args.expr
else if hasAttr "__empty" args
then "{ }"
then
warn ''
Using `__empty` to define an empty lua table is deprecated. Use an empty attrset instead.
'' "{ }"
else
"{"
+ (concatStringsSep ","
@ -76,10 +79,7 @@ in rec {
then toLuaObject v
else "[${toLuaObject n}] = " + (toLuaObject v))
(filterAttrs
(
_: v:
(v != null) && (toLuaObject v != "{}")
)
(_: v: v != null)
args)))
+ "}"
else if isList args

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

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

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

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,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},
},
})

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 {

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

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

View File

@ -60,16 +60,11 @@
config = (attrs) the configuration options for this mapping (noremap, silent...)
}
*/
normalizeAction = action: let
normalizeAction = action: {
# Extract the values of the config options that have been explicitly set by the user
config =
filterAttrs (_: v: v != null)
(getAttrs (attrNames mapConfigOptions) action);
in {
config =
if config == {}
then {"__empty" = null;}
else config;
action =
if action.lua
then mkLuaInline action.action