diff --git a/LICENSE b/LICENSE deleted file mode 100644 index 4153cd3..0000000 --- a/LICENSE +++ /dev/null @@ -1,287 +0,0 @@ - EUROPEAN UNION PUBLIC LICENCE v. 1.2 - EUPL © the European Union 2007, 2016 - -This European Union Public Licence (the ‘EUPL’) applies to the Work (as defined -below) which is provided under the terms of this Licence. Any use of the Work, -other than as authorised under this Licence is prohibited (to the extent such -use is covered by a right of the copyright holder of the Work). - -The Work is provided under the terms of this Licence when the Licensor (as -defined below) has placed the following notice immediately following the -copyright notice for the Work: - - Licensed under the EUPL - -or has expressed by any other means his willingness to license under the EUPL. - -1. Definitions - -In this Licence, the following terms have the following meaning: - -- ‘The Licence’: this Licence. - -- ‘The Original Work’: the work or software distributed or communicated by the - Licensor under this Licence, available as Source Code and also as Executable - Code as the case may be. - -- ‘Derivative Works’: the works or software that could be created by the - Licensee, based upon the Original Work or modifications thereof. This Licence - does not define the extent of modification or dependence on the Original Work - required in order to classify a work as a Derivative Work; this extent is - determined by copyright law applicable in the country mentioned in Article 15. - -- ‘The Work’: the Original Work or its Derivative Works. - -- ‘The Source Code’: the human-readable form of the Work which is the most - convenient for people to study and modify. - -- ‘The Executable Code’: any code which has generally been compiled and which is - meant to be interpreted by a computer as a program. - -- ‘The Licensor’: the natural or legal person that distributes or communicates - the Work under the Licence. - -- ‘Contributor(s)’: any natural or legal person who modifies the Work under the - Licence, or otherwise contributes to the creation of a Derivative Work. - -- ‘The Licensee’ or ‘You’: any natural or legal person who makes any usage of - the Work under the terms of the Licence. - -- ‘Distribution’ or ‘Communication’: any act of selling, giving, lending, - renting, distributing, communicating, transmitting, or otherwise making - available, online or offline, copies of the Work or providing access to its - essential functionalities at the disposal of any other natural or legal - person. - -2. Scope of the rights granted by the Licence - -The Licensor hereby grants You a worldwide, royalty-free, non-exclusive, -sublicensable licence to do the following, for the duration of copyright vested -in the Original Work: - -- use the Work in any circumstance and for all usage, -- reproduce the Work, -- modify the Work, and make Derivative Works based upon the Work, -- communicate to the public, including the right to make available or display - the Work or copies thereof to the public and perform publicly, as the case may - be, the Work, -- distribute the Work or copies thereof, -- lend and rent the Work or copies thereof, -- sublicense rights in the Work or copies thereof. - -Those rights can be exercised on any media, supports and formats, whether now -known or later invented, as far as the applicable law permits so. - -In the countries where moral rights apply, the Licensor waives his right to -exercise his moral right to the extent allowed by law in order to make effective -the licence of the economic rights here above listed. - -The Licensor grants to the Licensee royalty-free, non-exclusive usage rights to -any patents held by the Licensor, to the extent necessary to make use of the -rights granted on the Work under this Licence. - -3. Communication of the Source Code - -The Licensor may provide the Work either in its Source Code form, or as -Executable Code. If the Work is provided as Executable Code, the Licensor -provides in addition a machine-readable copy of the Source Code of the Work -along with each copy of the Work that the Licensor distributes or indicates, in -a notice following the copyright notice attached to the Work, a repository where -the Source Code is easily and freely accessible for as long as the Licensor -continues to distribute or communicate the Work. - -4. Limitations on copyright - -Nothing in this Licence is intended to deprive the Licensee of the benefits from -any exception or limitation to the exclusive rights of the rights owners in the -Work, of the exhaustion of those rights or of other applicable limitations -thereto. - -5. Obligations of the Licensee - -The grant of the rights mentioned above is subject to some restrictions and -obligations imposed on the Licensee. Those obligations are the following: - -Attribution right: The Licensee shall keep intact all copyright, patent or -trademarks notices and all notices that refer to the Licence and to the -disclaimer of warranties. The Licensee must include a copy of such notices and a -copy of the Licence with every copy of the Work he/she distributes or -communicates. The Licensee must cause any Derivative Work to carry prominent -notices stating that the Work has been modified and the date of modification. - -Copyleft clause: If the Licensee distributes or communicates copies of the -Original Works or Derivative Works, this Distribution or Communication will be -done under the terms of this Licence or of a later version of this Licence -unless the Original Work is expressly distributed only under this version of the -Licence — for example by communicating ‘EUPL v. 1.2 only’. The Licensee -(becoming Licensor) cannot offer or impose any additional terms or conditions on -the Work or Derivative Work that alter or restrict the terms of the Licence. - -Compatibility clause: If the Licensee Distributes or Communicates Derivative -Works or copies thereof based upon both the Work and another work licensed under -a Compatible Licence, this Distribution or Communication can be done under the -terms of this Compatible Licence. For the sake of this clause, ‘Compatible -Licence’ refers to the licences listed in the appendix attached to this Licence. -Should the Licensee's obligations under the Compatible Licence conflict with -his/her obligations under this Licence, the obligations of the Compatible -Licence shall prevail. - -Provision of Source Code: When distributing or communicating copies of the Work, -the Licensee will provide a machine-readable copy of the Source Code or indicate -a repository where this Source will be easily and freely available for as long -as the Licensee continues to distribute or communicate the Work. - -Legal Protection: This Licence does not grant permission to use the trade names, -trademarks, service marks, or names of the Licensor, except as required for -reasonable and customary use in describing the origin of the Work and -reproducing the content of the copyright notice. - -6. Chain of Authorship - -The original Licensor warrants that the copyright in the Original Work granted -hereunder is owned by him/her or licensed to him/her and that he/she has the -power and authority to grant the Licence. - -Each Contributor warrants that the copyright in the modifications he/she brings -to the Work are owned by him/her or licensed to him/her and that he/she has the -power and authority to grant the Licence. - -Each time You accept the Licence, the original Licensor and subsequent -Contributors grant You a licence to their contributions to the Work, under the -terms of this Licence. - -7. Disclaimer of Warranty - -The Work is a work in progress, which is continuously improved by numerous -Contributors. It is not a finished work and may therefore contain defects or -‘bugs’ inherent to this type of development. - -For the above reason, the Work is provided under the Licence on an ‘as is’ basis -and without warranties of any kind concerning the Work, including without -limitation merchantability, fitness for a particular purpose, absence of defects -or errors, accuracy, non-infringement of intellectual property rights other than -copyright as stated in Article 6 of this Licence. - -This disclaimer of warranty is an essential part of the Licence and a condition -for the grant of any rights to the Work. - -8. Disclaimer of Liability - -Except in the cases of wilful misconduct or damages directly caused to natural -persons, the Licensor will in no event be liable for any direct or indirect, -material or moral, damages of any kind, arising out of the Licence or of the use -of the Work, including without limitation, damages for loss of goodwill, work -stoppage, computer failure or malfunction, loss of data or any commercial -damage, even if the Licensor has been advised of the possibility of such damage. -However, the Licensor will be liable under statutory product liability laws as -far such laws apply to the Work. - -9. Additional agreements - -While distributing the Work, You may choose to conclude an additional agreement, -defining obligations or services consistent with this Licence. However, if -accepting obligations, You may act only on your own behalf and on your sole -responsibility, not on behalf of the original Licensor or any other Contributor, -and only if You agree to indemnify, defend, and hold each Contributor harmless -for any liability incurred by, or claims asserted against such Contributor by -the fact You have accepted any warranty or additional liability. - -10. Acceptance of the Licence - -The provisions of this Licence can be accepted by clicking on an icon ‘I agree’ -placed under the bottom of a window displaying the text of this Licence or by -affirming consent in any other similar way, in accordance with the rules of -applicable law. Clicking on that icon indicates your clear and irrevocable -acceptance of this Licence and all of its terms and conditions. - -Similarly, you irrevocably accept this Licence and all of its terms and -conditions by exercising any rights granted to You by Article 2 of this Licence, -such as the use of the Work, the creation by You of a Derivative Work or the -Distribution or Communication by You of the Work or copies thereof. - -11. Information to the public - -In case of any Distribution or Communication of the Work by means of electronic -communication by You (for example, by offering to download the Work from a -remote location) the distribution channel or media (for example, a website) must -at least provide to the public the information requested by the applicable law -regarding the Licensor, the Licence and the way it may be accessible, concluded, -stored and reproduced by the Licensee. - -12. Termination of the Licence - -The Licence and the rights granted hereunder will terminate automatically upon -any breach by the Licensee of the terms of the Licence. - -Such a termination will not terminate the licences of any person who has -received the Work from the Licensee under the Licence, provided such persons -remain in full compliance with the Licence. - -13. Miscellaneous - -Without prejudice of Article 9 above, the Licence represents the complete -agreement between the Parties as to the Work. - -If any provision of the Licence is invalid or unenforceable under applicable -law, this will not affect the validity or enforceability of the Licence as a -whole. Such provision will be construed or reformed so as necessary to make it -valid and enforceable. - -The European Commission may publish other linguistic versions or new versions of -this Licence or updated versions of the Appendix, so far this is required and -reasonable, without reducing the scope of the rights granted by the Licence. New -versions of the Licence will be published with a unique version number. - -All linguistic versions of this Licence, approved by the European Commission, -have identical value. Parties can take advantage of the linguistic version of -their choice. - -14. Jurisdiction - -Without prejudice to specific agreement between parties, - -- any litigation resulting from the interpretation of this License, arising - between the European Union institutions, bodies, offices or agencies, as a - Licensor, and any Licensee, will be subject to the jurisdiction of the Court - of Justice of the European Union, as laid down in article 272 of the Treaty on - the Functioning of the European Union, - -- any litigation arising between other parties and resulting from the - interpretation of this License, will be subject to the exclusive jurisdiction - of the competent court where the Licensor resides or conducts its primary - business. - -15. Applicable Law - -Without prejudice to specific agreement between parties, - -- this Licence shall be governed by the law of the European Union Member State - where the Licensor has his seat, resides or has his registered office, - -- this licence shall be governed by Belgian law if the Licensor has no seat, - residence or registered office inside a European Union Member State. - -Appendix - -‘Compatible Licences’ according to Article 5 EUPL are: - -- GNU General Public License (GPL) v. 2, v. 3 -- GNU Affero General Public License (AGPL) v. 3 -- Open Software License (OSL) v. 2.1, v. 3.0 -- Eclipse Public License (EPL) v. 1.0 -- CeCILL v. 2.0, v. 2.1 -- Mozilla Public Licence (MPL) v. 2 -- GNU Lesser General Public Licence (LGPL) v. 2.1, v. 3 -- Creative Commons Attribution-ShareAlike v. 3.0 Unported (CC BY-SA 3.0) for - works other than software -- European Union Public Licence (EUPL) v. 1.1, v. 1.2 -- Québec Free and Open-Source Licence — Reciprocity (LiLiQ-R) or Strong - Reciprocity (LiLiQ-R+). - -The European Commission may update this Appendix to later versions of the above -licences without producing a new version of the EUPL, as long as they provide -the rights granted in Article 2 of this Licence and protect the covered Source -Code from exclusive appropriation. - -All other changes or additions to this Appendix require the production of a new -EUPL version. diff --git a/README.md b/README.md index eb1c7db..8a04a0d 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,3 @@ # Neovim module A wrapper around nvim that includes the plugins I use day to day. - -to use with home manager or nixos, pass this flake as an input, and then in your config, -```nix -imports = [ -inputs.nvim-config.nixosModules.neovim -] -``` -(replace `nixosModules` with `homeModules` for home manager). - -Then, you can just do `wrappers.neovim.enable=true;` to enable nvim. -To enable an option, such as minimal mode (no LSPs), do `wrappers.neovim.settings.minimal = true;`. diff --git a/flake.lock b/flake.lock index b828b76..6836d9d 100644 --- a/flake.lock +++ b/flake.lock @@ -2,11 +2,11 @@ "nodes": { "nixpkgs": { "locked": { - "lastModified": 1774701658, - "narHash": "sha256-CIS/4AMUSwUyC8X5g+5JsMRvIUL3YUfewe8K4VrbsSQ=", + "lastModified": 1773231277, + "narHash": "sha256-Xy3WEpUAbpsz8ydgvVAQAGGB/WB+8cNA5cshiL0McTI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "b63fe7f000adcfa269967eeff72c64cafecbbebe", + "rev": "75690239f08f885ca9b0267580101f60d10fbe62", "type": "github" }, "original": { @@ -19,11 +19,11 @@ "plugins-lze": { "flake": false, "locked": { - "lastModified": 1774875775, - "narHash": "sha256-oYetArRkSVg4fa7RTV36sT2/w8Fz9ijRYXiB7/9dtk4=", + "lastModified": 1772949858, + "narHash": "sha256-skLhmn/MvxOZbrBiceF/xiLRRmmEs6ZQS2sGrBrUyLU=", "owner": "BirdeeHub", "repo": "lze", - "rev": "a09a8291d7b4c48e2af6a8cd3ef55bb8f3c181cd", + "rev": "a3ba1a2d469d4ab26acb629aba8c7d70a6cbe558", "type": "github" }, "original": { @@ -35,11 +35,11 @@ "plugins-lzextras": { "flake": false, "locked": { - "lastModified": 1774333150, - "narHash": "sha256-5SorM5x/BIPpyBxJN7CHi6huGKzFDJOvzWIAFcdeOdo=", + "lastModified": 1772949841, + "narHash": "sha256-MQ1h2R5axM3u6mLNTDzXF/40o8+U0JOWb48UTQO9jfc=", "owner": "BirdeeHub", "repo": "lzextras", - "rev": "69c996ae28804abeb60050d98e3a64246394e121", + "rev": "a6ac9a7bee380881af2dfbfd238ccb1697d677d7", "type": "github" }, "original": { @@ -63,11 +63,11 @@ ] }, "locked": { - "lastModified": 1774879171, - "narHash": "sha256-a6JZDuBIwQmuEwYM4dziH+WyrpE8HCP8F7JFIn3CNvw=", + "lastModified": 1773360496, + "narHash": "sha256-AQN5UhIc2WHvELT4TWIsD1W05ksLXWRkS5NjPm3jkc0=", "owner": "BirdeeHub", "repo": "nix-wrapper-modules", - "rev": "bab35ffae25cf6f4e4fdb3c2f7f0ac80966ce737", + "rev": "8f1770c6d58a89a4757849713c0e6d9ace7b4ac3", "type": "github" }, "original": { diff --git a/lua/keys.lua b/lua/keys.lua index 8f6b8d7..b07a6e6 100644 --- a/lua/keys.lua +++ b/lua/keys.lua @@ -33,3 +33,5 @@ vim.keymap.set({ "n", "v", "x" }, 'Y', '"+yy', { noremap = true, silent vim.keymap.set({ 'n', 'v', 'x' }, 'p', '"+p', { noremap = true, silent = true, desc = 'Paste from clipboard' }) vim.keymap.set('i', '', '+', { noremap = true, silent = true, desc = 'Paste from clipboard from within insert mode' }) +vim.keymap.set("x", "P", '"_dP', + { noremap = true, silent = true, desc = 'Paste over selection without erasing unnamed register' }) diff --git a/lua/lsp/C.lua b/lua/lsp/C.lua index 0d58aec..b382d76 100644 --- a/lua/lsp/C.lua +++ b/lua/lsp/C.lua @@ -3,8 +3,5 @@ return { "clangd", for_cat = "C", lsp = {}, - after=function() - require("clangd_extensions").setup({}) - end, }, } diff --git a/lua/lsp/config.lua b/lua/lsp/config.lua deleted file mode 100644 index 2972f2c..0000000 --- a/lua/lsp/config.lua +++ /dev/null @@ -1,12 +0,0 @@ -return { - { - "taplo", - for_cat = "config", - lsp = {}, - }, - { - "yamlls", - for_cat = "config", - lsp = {}, - }, -} diff --git a/lua/lsp/go.lua b/lua/lsp/go.lua deleted file mode 100644 index c7adcb0..0000000 --- a/lua/lsp/go.lua +++ /dev/null @@ -1,7 +0,0 @@ -return { - { - "gopls", - for_cat = "go", - lsp = {}, - }, -} diff --git a/lua/lsp/init.lua b/lua/lsp/init.lua index 8197f7d..66d1e61 100644 --- a/lua/lsp/init.lua +++ b/lua/lsp/init.lua @@ -12,6 +12,7 @@ if lspEnabled then vim.keymap.set("n", "lt", vim.lsp.buf.type_definition, { desc = "Type [D]efinition" }) vim.keymap.set({ "n", "v", }, "la", vim.lsp.buf.code_action, { desc = "[C]ode Action" }) vim.keymap.set("n", "ld", vim.lsp.buf.definition, { desc = "Goto [D]efinition" }) + vim.keymap.set("n", "lf", vim.lsp.buf.format, { desc = "Format buffer" }) vim.keymap.set("n", "lh", vim.lsp.buf.hover, { desc = "Hover Documentation" }) vim.keymap.set("n", "lr", vim.lsp.buf.rename, { desc = "[R]ename" }) vim.keymap.set("n", "ls", vim.lsp.buf.signature_help, { desc = "Signature Documentation" }) @@ -80,42 +81,12 @@ require('lze').load { vim.lsp.enable(plugin.name) end, }, - - { - "conform.nvim", - for_cat = "lsp", - on_require = { "conform" }, - cmd = { "ConformInfo" }, - keys = { - { "lf", function() require("conform").format({ async = true }) end, mode = { "" }, desc = "Format buffer" }, - }, - after = function() - require("conform").setup({ - default_format_opts = { - lsp_format = "fallback", - }, - }) - -- need to figure out how to properly seperate this. - if nixInfo("settings", "cat", "config") then - require("conform").formatters_by_ft.json = { "jaq" } - end - if nixInfo("settings", "cat", "nix") then - require("conform").formatters_by_ft.nix = { "alejandra" } - end - end, - }, - - { import = "lsp.C" }, - { import = "lsp.bash" }, - { import = "lsp.config" }, - { import = "lsp.go" }, - { import = "lsp.jsonnet" }, { import = "lsp.lua" }, - { import = "lsp.nix" }, - { import = "lsp.nushell" }, { import = "lsp.python" }, - { import = "lsp.rust" }, + { import = "lsp.C" }, + { import = "lsp.nix" }, { import = "lsp.typst" }, - { import = "lsp.zig" }, + { import = "lsp.bash" }, { import = "lsp.zk" }, + { import = "lsp.rust" }, } diff --git a/lua/lsp/jsonnet.lua b/lua/lsp/jsonnet.lua deleted file mode 100644 index c246dcb..0000000 --- a/lua/lsp/jsonnet.lua +++ /dev/null @@ -1,7 +0,0 @@ -return { - { - "jsonnet_ls", - for_cat = "jsonnet", - lsp = {}, - }, -} diff --git a/lua/lsp/nix.lua b/lua/lsp/nix.lua index accbd98..4463427 100644 --- a/lua/lsp/nix.lua +++ b/lua/lsp/nix.lua @@ -1,9 +1,27 @@ return { { "nixd", + enabled = nixInfo.isNix, -- mason doesn't have nixd for_cat = "nix", - lsp = {}, - after = function() - end, + lsp = { + filetypes = { "nix" }, + settings = { + nixd = { + nixpkgs = { + expr = [[import {}]], + }, + options = { + }, + formatting = { + command = { "nixfmt" } + }, + diagnostic = { + suppress = { + "sema-escaping-with" + } + } + } + }, + }, }, } diff --git a/lua/lsp/nushell.lua b/lua/lsp/nushell.lua deleted file mode 100644 index ba5beb1..0000000 --- a/lua/lsp/nushell.lua +++ /dev/null @@ -1,7 +0,0 @@ -return { - { - "nushell", - for_cat = "nushell", - lsp = {}, - }, -} diff --git a/lua/lsp/zig.lua b/lua/lsp/zig.lua deleted file mode 100644 index 3983f21..0000000 --- a/lua/lsp/zig.lua +++ /dev/null @@ -1,7 +0,0 @@ -return { - { - "zls", - for_cat = "zig", - lsp = {}, - }, -} diff --git a/lua/plugins/flash.lua b/lua/plugins/flash.lua deleted file mode 100644 index db49622..0000000 --- a/lua/plugins/flash.lua +++ /dev/null @@ -1,13 +0,0 @@ -return { - { - "flash.nvim", - for_cat = 'lazy', - keys = { - { "s", function() require("flash").jump() end, mode = { "n", "x", "o" }, noremap = true, desc = "Flash" }, - { "S", function() require("flash").treesitter() end, mode = { "n", "x", "o" }, noremap = true, desc = "Flash Treesitter" }, - { "r", function() require("flash").remote() end, mode = "o", noremap = true, desc = "Remote Flash" }, - { "R", function() require("flash").treesitter_search() end, mode = { "o", "x" }, noremap = true, desc = "Treesitter Search" }, - { "", function() require("flash").toggle() end, mode = { "c" }, noremap = true, desc = "Toggle Flash Search" }, - }, - } -} diff --git a/lua/plugins/init.lua b/lua/plugins/init.lua index 2c772d7..75916ad 100644 --- a/lua/plugins/init.lua +++ b/lua/plugins/init.lua @@ -13,7 +13,6 @@ require('lze').load { { import = "plugins.completion", }, { import = "plugins.preview.markdown", }, { import = "plugins.preview.typst", }, - { import = "plugins.flash", }, { "leap.nvim", for_cat = 'always', diff --git a/lua/plugins/preview/typst.lua b/lua/plugins/preview/typst.lua index 6ea00b9..5faa5dd 100644 --- a/lua/plugins/preview/typst.lua +++ b/lua/plugins/preview/typst.lua @@ -4,16 +4,11 @@ return { ft = "typst", cmd = { "TypstPreview", "TypstPreviewStop", "TypstPreviewToggle", }, keys = { - { "Ptp", "TypstPreview ", mode = { "n" }, noremap = true, desc = "typst preview" }, - { "Pts", "TypstPreviewStop ", mode = { "n" }, noremap = true, desc = "typst preview stop" }, - { "Ptt", "TypstPreviewToggle ", mode = { "n" }, noremap = true, desc = "typst preview toggle" }, + { "ptp", "TypstPreview ", mode = { "n" }, noremap = true, desc = "typst preview" }, + { "pts", "TypstPreviewStop ", mode = { "n" }, noremap = true, desc = "typst preview stop" }, + { "ptt", "TypstPreviewToggle ", mode = { "n" }, noremap = true, desc = "typst preview toggle" }, }, after = function() - require('typst-preview').setup({ - dependencies_bin = { - ['tinymist'] = 'tinymist', - ['websocat'] = 'websocat', - }, - }) + require('typst-preview').setup {} end } diff --git a/lua/plugins/snacks.lua b/lua/plugins/snacks.lua index 013f18f..3ed8815 100644 --- a/lua/plugins/snacks.lua +++ b/lua/plugins/snacks.lua @@ -36,7 +36,7 @@ require("snacks").setup({ chunk = { enabled = true }, }, image = { enabled = false, inline = false, float = false }, - lazygit = { enabled = true, configure = true}, + lazygit = { enabled = true, configure = false }, }) -- setup keybinds. vim.keymap.set("n", "bd", Snacks.bufdelete.delete, { desc = "delete buffer" }) @@ -58,11 +58,11 @@ vim.keymap.set("n", "fu", Snacks.picker.undo, { desc = "[U]ndo" }) vim.keymap.set("n", "fz", Snacks.picker.zoxide, { desc = "[Z]oxide" }) -- picker git keybinds -vim.keymap.set("n", "gb", Snacks.git.blame_line, { desc = "[G]it [B]lame" }) -vim.keymap.set("n", "gB", Snacks.picker.git_branches, { desc = "[G]it [B]ranch" }) -vim.keymap.set("n", "gL", Snacks.picker.git_log, { desc = "[G]it [L]og" }) +vim.keymap.set("n", "gB", Snacks.git.blame_line, { desc = "[G]it [B]lame" }) +vim.keymap.set("n", "gb", Snacks.picker.git_branches, { desc = "[G]it [B]ranch" }) +vim.keymap.set("n", "gl", Snacks.picker.git_log, { desc = "[G]it [L]og" }) vim.keymap.set("n", "gd", Snacks.picker.git_diff, { desc = "[G]it [D]iff" }) -vim.keymap.set("n", "gl", Snacks.lazygit.open, { desc = "lazy[G]it [T]UI" }) +vim.keymap.set("n", "gt", Snacks.lazygit.open, { desc = "lazy[G]it [T]UI" }) -- setup toggles Snacks.toggle.option("spell", { name = "spelling" }):map("cs") diff --git a/lua/plugins/treesitter.lua b/lua/plugins/treesitter.lua index bee0c5b..9b49fcf 100644 --- a/lua/plugins/treesitter.lua +++ b/lua/plugins/treesitter.lua @@ -3,7 +3,7 @@ return { { "nvim-treesitter", - for_cat = 'lazy', + for_cat = 'lazy', event = "DeferredUIEnter", load = function(name) vim.cmd.packadd(name) @@ -18,14 +18,14 @@ return { }, { "comment.nvim", - for_cat = 'lazy', + for_cat = 'lazy', after = function(plugin) require('Comment').setup() end, }, { "treesj", - for_cat = 'lazy', + for_cat = 'lazy', keys = { { "j", "TSJToggle", mode = { "n" }, desc = "Treesitter join" }, }, after = function(_) require("treesj").setup({ diff --git a/lua/plugins/which-key.lua b/lua/plugins/which-key.lua index 2f78f3e..c91aa99 100644 --- a/lua/plugins/which-key.lua +++ b/lua/plugins/which-key.lua @@ -8,9 +8,9 @@ return { { "g", group = "[g]it" }, { "z", group = "[z]ettelkasten" }, { "gt", group = "[t]oggle" }, - { "P", group = "[p]review" }, - { "Pt", group = "[p]review [t]ypst" }, - { "Pm", group = "[p]review [m]arkdown" }, + { "p", group = "[p]review" }, + { "pt", group = "[p]review [t]ypst" }, + { "pm", group = "[p]review [m]arkdown" }, { "f", group = "[f]ind" }, { "t", group = "[t]ree" }, { "c", group = "[c]heck" }, diff --git a/module.nix b/module.nix index ef21d06..5937917 100644 --- a/module.nix +++ b/module.nix @@ -109,12 +109,12 @@ inputs: { comment-nvim rainbow-delimiters-nvim nvim-treesitter.withAllGrammars - flash-nvim ]; }; config.specs.completion = { after = ["lze"]; lazy = true; + enable = lib.mkIf config.settings.minimal false; data = with pkgs.vimPlugins; [ luasnip friendly-snippets @@ -128,6 +128,7 @@ inputs: { config.specs.markdown = { after = ["general" "lazy"]; + enable = lib.mkIf config.settings.minimal false; lazy = true; data = with pkgs.vimPlugins; [ markdown-preview-nvim @@ -140,6 +141,7 @@ inputs: { }; config.specs.lsp = { + enable = lib.mkIf config.settings.minimal false; after = ["general" "lazy"]; lazy = true; @@ -147,14 +149,11 @@ inputs: { trouble-nvim lualine-lsp-progress nvim-lspconfig - conform-nvim ]; }; config.specs.zk = { - name = "zk"; after = ["general" "lazy"]; - lazy = true; data = with pkgs.vimPlugins; [ zk-nvim ]; @@ -166,83 +165,28 @@ inputs: { config.specs.typst = { name = "typst"; after = ["general" "lazy"]; - lazy = true; data = with pkgs.vimPlugins; [ typst-preview-nvim ]; extraPackages = with pkgs; [ typst tinymist - websocat - ]; - }; - - config.specs.go = { - name = "go"; - after = ["general" "lazy"]; - lazy = true; - data = null; - extraPackages = with pkgs; [ - gopls - ]; - }; - - config.specs.config = { - name = "config"; - after = ["general" "lazy"]; - lazy = true; - data = null; - extraPackages = with pkgs; [ - taplo - jaq - yaml-language-server - ]; - }; - - config.specs.jsonnet = { - name = "jsonnet"; - after = ["general" "lazy"]; - lazy = true; - data = null; - extraPackages = with pkgs; [ - jsonnet-language-server - ]; - }; - - config.specs.zig = { - name = "zig"; - after = ["general" "lazy"]; - lazy = true; - data = null; - extraPackages = with pkgs; [ - zls - ]; - }; - config.specs.nushell = { - name = "nushell"; - after = ["general" "lazy"]; - lazy = true; - data = null; - extraPackages = with pkgs; [ - nushell ]; }; config.specs.nix = { name = "nix"; after = ["general" "lazy"]; - lazy = true; data = null; extraPackages = with pkgs; [ - alejandra nixd + alejandra ]; }; config.specs.lua = { name = "lua"; after = ["general" "lazy"]; - lazy = true; data = with pkgs.vimPlugins; [ lazydev-nvim ]; @@ -255,7 +199,6 @@ inputs: { config.specs.rust = { name = "rust"; after = ["general" "lazy"]; - lazy = true; data = with pkgs.vimPlugins; [ rustaceanvim ]; @@ -268,7 +211,6 @@ inputs: { config.specs.python = { name = "python"; after = ["general" "lazy"]; - lazy = true; data = null; extraPackages = with pkgs; [ ty @@ -279,10 +221,7 @@ inputs: { config.specs.C = { name = "C"; after = ["general" "lazy"]; - lazy = true; - data = with pkgs.vimPlugins; [ - clangd_extensions-nvim - ]; + data = null; extraPackages = with pkgs; [ libclang ];