mirror of
https://github.com/isabelroses/nvim.git
synced 2025-04-04 11:09:30 +00:00
refactor: massive cleanup and efficency rewrite
This commit is contained in:
parent
f51e5b827d
commit
e4941b8347
24 changed files with 1244 additions and 1253 deletions
59
_sources/generated.json
generated
59
_sources/generated.json
generated
|
@ -15,7 +15,6 @@
|
|||
"repo": "alpha-nvim",
|
||||
"rev": "bf3c8bb8c02ed3d9644cc5bbc48e2bdc39349cd7",
|
||||
"sha256": "sha256-33lhPP1C4TGo0UQJ61bwRHaiOMAB7XNehcZGaFXOPjQ=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "bf3c8bb8c02ed3d9644cc5bbc48e2bdc39349cd7"
|
||||
|
@ -38,7 +37,6 @@
|
|||
"repo": "nvim",
|
||||
"rev": "65bf0b16f57a3db70d6a93ac68882dd9a31d0565",
|
||||
"sha256": "sha256-BybseDuFqS5Rc0BOAMgxssuJ3wCU/LZSIoV5fQ+sz5o=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "65bf0b16f57a3db70d6a93ac68882dd9a31d0565"
|
||||
|
@ -59,7 +57,6 @@
|
|||
"repo": "cloak.nvim",
|
||||
"rev": "648aca6d33ec011dc3166e7af3b38820d01a71e4",
|
||||
"sha256": "sha256-V7oNIu7IBAHqSrgCNoePNUPjQDU9cFThFf7XGIth0sk=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "648aca6d33ec011dc3166e7af3b38820d01a71e4"
|
||||
|
@ -80,7 +77,6 @@
|
|||
"repo": "cmp-buffer",
|
||||
"rev": "3022dbc9166796b644a841a02de8dd1cc1d311fa",
|
||||
"sha256": "sha256-dG4U7MtnXThoa/PD+qFtCt76MQ14V1wX8GMYcvxEnbM=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "3022dbc9166796b644a841a02de8dd1cc1d311fa"
|
||||
|
@ -101,7 +97,6 @@
|
|||
"repo": "cmp-cmdline",
|
||||
"rev": "d250c63aa13ead745e3a40f61fdd3470efde3923",
|
||||
"sha256": "sha256-iBmXp+gUSMbgfkv7c7RDQAwPq02e07wEnBETP0dWBOo=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "d250c63aa13ead745e3a40f61fdd3470efde3923"
|
||||
|
@ -122,7 +117,6 @@
|
|||
"repo": "cmp-nvim-lsp",
|
||||
"rev": "39e2eda76828d88b773cc27a3f61d2ad782c922d",
|
||||
"sha256": "sha256-CT1+Z4XJBVsl/RqvJeGmyitD6x7So0ylXvvef5jh7I8=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "39e2eda76828d88b773cc27a3f61d2ad782c922d"
|
||||
|
@ -143,7 +137,6 @@
|
|||
"repo": "cmp-path",
|
||||
"rev": "91ff86cd9c29299a64f968ebb45846c485725f23",
|
||||
"sha256": "sha256-thppiiV3wjIaZnAXmsh7j3DUc6ceSCvGzviwFUnoPaI=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "91ff86cd9c29299a64f968ebb45846c485725f23"
|
||||
|
@ -164,7 +157,6 @@
|
|||
"repo": "cmp_luasnip",
|
||||
"rev": "05a9ab28b53f71d1aece421ef32fee2cb857a843",
|
||||
"sha256": "sha256-nUJJl2zyK/oSwz5RzI9j3gf9zpDfCImCYbPbVsyXgz8=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "05a9ab28b53f71d1aece421ef32fee2cb857a843"
|
||||
|
@ -185,7 +177,6 @@
|
|||
"repo": "copilot.lua",
|
||||
"rev": "f8d8d872bb319f640d5177dad5fbf01f7a16d7d0",
|
||||
"sha256": "sha256-UY6N2Q+egh+Cn4REZXrSGH9ElWQBedl0n8tWJvGe7vs=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "f8d8d872bb319f640d5177dad5fbf01f7a16d7d0"
|
||||
|
@ -206,7 +197,6 @@
|
|||
"repo": "crates.nvim",
|
||||
"rev": "8bf8358ee326d5d8c11dcd7ac0bcc9ff97dbc785",
|
||||
"sha256": "sha256-DIG0MXRTit4iEVoLlgsTK4znjam/QDjeZEpIDn6KHiE=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "8bf8358ee326d5d8c11dcd7ac0bcc9ff97dbc785"
|
||||
|
@ -227,7 +217,6 @@
|
|||
"repo": "direnv.nvim",
|
||||
"rev": "3e38d855c764bb1bec230130ed0e026fca54e4c8",
|
||||
"sha256": "sha256-nWdAIchqGsWiF0cQ7NwePRa1fpugE8duZKqdBaisrAc=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "3e38d855c764bb1bec230130ed0e026fca54e4c8"
|
||||
|
@ -248,7 +237,6 @@
|
|||
"repo": "evergarden",
|
||||
"rev": "d7adb7e8e1f803176e588a427d7d21e76840bb83",
|
||||
"sha256": "sha256-/qeQOr/KN3FV6ojw3frecOhZPoiFyKaf0u8pw7uPyZA=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "d7adb7e8e1f803176e588a427d7d21e76840bb83"
|
||||
|
@ -269,7 +257,6 @@
|
|||
"repo": "fidget.nvim",
|
||||
"rev": "2f7c08f45639a64a5c0abcf67321d52c3f499ae6",
|
||||
"sha256": "sha256-8Gl2Ck4YJGReSEq1Xeh1dpdRq4eImmrxvIHrfxdem3Q=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "2f7c08f45639a64a5c0abcf67321d52c3f499ae6"
|
||||
|
@ -290,7 +277,6 @@
|
|||
"repo": "freeze.nvim",
|
||||
"rev": "cc8f09454b0ab1904d493f36f39d38528d7fc085",
|
||||
"sha256": "sha256-6UDskHdf4oMQQ6ZwJmuUG21FUOR1yjID8jU8w536dfQ=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "cc8f09454b0ab1904d493f36f39d38528d7fc085"
|
||||
|
@ -311,7 +297,6 @@
|
|||
"repo": "go.nvim",
|
||||
"rev": "12ab6ac0fdd03b1ec9ee4e5378dd204f744a55bf",
|
||||
"sha256": "sha256-cGJNraQjzAPcRiD/lhmOHxV3LMxHwNxBgcboyrHedTI=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "12ab6ac0fdd03b1ec9ee4e5378dd204f744a55bf"
|
||||
|
@ -332,7 +317,6 @@
|
|||
"repo": "guihua.lua",
|
||||
"rev": "225db770e36aae6a1e9e3a65578095c8eb4038d3",
|
||||
"sha256": "sha256-V5rlORFlhgjAT0n+LcpMNdY+rEqQpur/KGTGH6uFxMY=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "225db770e36aae6a1e9e3a65578095c8eb4038d3"
|
||||
|
@ -353,7 +337,6 @@
|
|||
"repo": "harpoon",
|
||||
"rev": "0378a6c428a0bed6a2781d459d7943843f374bce",
|
||||
"sha256": "sha256-FZQH38E02HuRPIPAog/nWM55FuBxKp8AyrEldFkoLYk=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "0378a6c428a0bed6a2781d459d7943843f374bce"
|
||||
|
@ -374,7 +357,6 @@
|
|||
"repo": "img-clip.nvim",
|
||||
"rev": "28a32d811d69042f4fa5c3d5fa35571df2bc1623",
|
||||
"sha256": "sha256-TTfRow1rrRZ3+5YPeYAQc+2fsb42wUxTMEr6kfUiKXo=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "28a32d811d69042f4fa5c3d5fa35571df2bc1623"
|
||||
|
@ -395,7 +377,6 @@
|
|||
"repo": "indent-blankline.nvim",
|
||||
"rev": "04e44b09ee3ff189c69ab082edac1ef7ae2e256c",
|
||||
"sha256": "sha256-odv43EyZ3gMg410eBFAkye/SdAj+LcVVZPaZm8w0biM=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "04e44b09ee3ff189c69ab082edac1ef7ae2e256c"
|
||||
|
@ -416,7 +397,6 @@
|
|||
"repo": "lazydev.nvim",
|
||||
"rev": "491452cf1ca6f029e90ad0d0368848fac717c6d2",
|
||||
"sha256": "sha256-D5gP2rVPYoWc8hslTrH7Z90cE7XEu+tfkD6FZzY/iPk=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "491452cf1ca6f029e90ad0d0368848fac717c6d2"
|
||||
|
@ -437,7 +417,6 @@
|
|||
"repo": "lsp-status.nvim",
|
||||
"rev": "54f48eb5017632d81d0fd40112065f1d062d0629",
|
||||
"sha256": "sha256-gmLeVnDyL8Zf5ZG92tP3mb/LAt438BxFtAi/Xax2zLI=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "54f48eb5017632d81d0fd40112065f1d062d0629"
|
||||
|
@ -458,7 +437,6 @@
|
|||
"repo": "lspkind.nvim",
|
||||
"rev": "a700f1436d4a938b1a1a93c9962dc796afbaef4d",
|
||||
"sha256": "sha256-/ifgjqqCQw67l3+gUs00tt860pa92M1WYdjdZ0lhxak=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "a700f1436d4a938b1a1a93c9962dc796afbaef4d"
|
||||
|
@ -479,7 +457,6 @@
|
|||
"repo": "ltex-extra.nvim",
|
||||
"rev": "24acd044ce7a26b3cdb537cbd094de37c3e1ac45",
|
||||
"sha256": "sha256-OGeeEIF+z03DdJO2d2kzQ0lZnIYLabp6irYPqYgbCbc=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "24acd044ce7a26b3cdb537cbd094de37c3e1ac45"
|
||||
|
@ -500,7 +477,6 @@
|
|||
"repo": "lualine.nvim",
|
||||
"rev": "b431d228b7bbcdaea818bdc3e25b8cdbe861f056",
|
||||
"sha256": "sha256-gCm7m96PkZyrgjmt7Efc+NMZKStAq1zr7JRCYOgGDuE=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "b431d228b7bbcdaea818bdc3e25b8cdbe861f056"
|
||||
|
@ -510,7 +486,9 @@
|
|||
"date": "2024-10-28",
|
||||
"extract": null,
|
||||
"name": "luasnip",
|
||||
"passthru": null,
|
||||
"passthru": {
|
||||
"as": "luasnip"
|
||||
},
|
||||
"pinned": false,
|
||||
"src": {
|
||||
"deepClone": false,
|
||||
|
@ -521,7 +499,6 @@
|
|||
"repo": "LuaSnip",
|
||||
"rev": "2c08f32a570c07b8130144813266e21393da80d3",
|
||||
"sha256": "sha256-sNHVA70MsJQlbQRkJJAFhLBIdlAJwMsjzbBPrsDZfoA=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "2c08f32a570c07b8130144813266e21393da80d3"
|
||||
|
@ -544,7 +521,6 @@
|
|||
"repo": "lz.n",
|
||||
"rev": "14eb8ee8d36eeb1e3d93307e2d4d586a5e09a308",
|
||||
"sha256": "sha256-+dKLze48BsPjeBLUBwbyOeu0+/FXyil1PM3XXUUKmkA=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "14eb8ee8d36eeb1e3d93307e2d4d586a5e09a308"
|
||||
|
@ -565,7 +541,6 @@
|
|||
"repo": "markview.nvim",
|
||||
"rev": "67b69cdaf9055bebac3682a070d7e5c8eecba29c",
|
||||
"sha256": "sha256-ga7GI2td1mRR6J63+//9neaEnc09TGyMnZrLpP6HGd0=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "67b69cdaf9055bebac3682a070d7e5c8eecba29c"
|
||||
|
@ -586,7 +561,6 @@
|
|||
"repo": "mini.surround",
|
||||
"rev": "48a9795c9d352c771e1ab5dedab6063c0a2df037",
|
||||
"sha256": "sha256-Rzg2yYbOAjOPVNEiUv5qOBObqO1bcDsAgc5ned9HZQw=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "48a9795c9d352c771e1ab5dedab6063c0a2df037"
|
||||
|
@ -607,7 +581,6 @@
|
|||
"repo": "neovim-session-manager",
|
||||
"rev": "ce43f2eb2a52492157d7742e5f684b9a42bb3e5c",
|
||||
"sha256": "sha256-W9jtfVXHC8MQJwdbxakNqhd+xh/auQb3U09XKdN2Wzw=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "ce43f2eb2a52492157d7742e5f684b9a42bb3e5c"
|
||||
|
@ -628,7 +601,6 @@
|
|||
"repo": "none-ls.nvim",
|
||||
"rev": "dcc8cd4efdcb29275681a3c95786a816330dbca6",
|
||||
"sha256": "sha256-QHvusRnuK/Xq+4AqcIfu84+/iRTMuaYiLCLqrtrhRNk=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "dcc8cd4efdcb29275681a3c95786a816330dbca6"
|
||||
|
@ -649,7 +621,6 @@
|
|||
"repo": "nvim-cmp",
|
||||
"rev": "29fb4854573355792df9e156cb779f0d31308796",
|
||||
"sha256": "sha256-dAsXxv1RtgMc1i5QrR2xqOeK6aRgYNqdYyTXVBXhVJ4=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "29fb4854573355792df9e156cb779f0d31308796"
|
||||
|
@ -670,7 +641,6 @@
|
|||
"repo": "nvim-colorizer.lua",
|
||||
"rev": "0671e0eabc6842676d3310370e8fae4e1c51d7f9",
|
||||
"sha256": "sha256-Ffi1Q5+AI+Ysi2T56myGWmAzzyq6wW0J/Pwoc3B0ncY=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "0671e0eabc6842676d3310370e8fae4e1c51d7f9"
|
||||
|
@ -691,7 +661,6 @@
|
|||
"repo": "nvim-lspconfig",
|
||||
"rev": "59a6766cbf32c7e4cf3ed685ccad7ffe1dde8c40",
|
||||
"sha256": "sha256-Pe5wdF8oHRoJznhImyM7uy9S8uPP+2pwJXKA4emtBHA=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "59a6766cbf32c7e4cf3ed685ccad7ffe1dde8c40"
|
||||
|
@ -712,7 +681,6 @@
|
|||
"repo": "nvim-navic",
|
||||
"rev": "8649f694d3e76ee10c19255dece6411c29206a54",
|
||||
"sha256": "sha256-0p5n/V8Jlj9XyxV/fuMwsbQ7oV5m9H2GqZZEA/njxCQ=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "8649f694d3e76ee10c19255dece6411c29206a54"
|
||||
|
@ -733,7 +701,6 @@
|
|||
"repo": "nvim-notify",
|
||||
"rev": "fbef5d32be8466dd76544a257d3f3dce20082a07",
|
||||
"sha256": "sha256-Sd7IR5roXHOKRCxhqtYMhWfEltyRJMDEMDO/ecSKenE=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "fbef5d32be8466dd76544a257d3f3dce20082a07"
|
||||
|
@ -754,7 +721,6 @@
|
|||
"repo": "nvim-tree.lua",
|
||||
"rev": "120ba58254835d412bbc91cffe847e9be835fadd",
|
||||
"sha256": "sha256-w76Mo346kAJ54Gh4vwTwq5POSJkaoOuNG5ofqpPwxX8=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "120ba58254835d412bbc91cffe847e9be835fadd"
|
||||
|
@ -775,7 +741,6 @@
|
|||
"repo": "nvim-treesitter",
|
||||
"rev": "1c111e3e8f42c85b16cb4bf30e4254fcb5607817",
|
||||
"sha256": "sha256-oRUOK2k0PfUz1qEuCUpQVTKTsJulccHvaECjDMh+tfM=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "1c111e3e8f42c85b16cb4bf30e4254fcb5607817"
|
||||
|
@ -796,7 +761,6 @@
|
|||
"repo": "nvim-web-devicons",
|
||||
"rev": "19d257cf889f79f4022163c3fbb5e08639077bd8",
|
||||
"sha256": "sha256-SUWEOp+QcfHjYaqqr4Zwvh0x91IAJXvrdMkQtuWMlGc=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "19d257cf889f79f4022163c3fbb5e08639077bd8"
|
||||
|
@ -817,7 +781,6 @@
|
|||
"repo": "obsidian.nvim",
|
||||
"rev": "14e0427bef6c55da0d63f9a313fd9941be3a2479",
|
||||
"sha256": "sha256-mbq7fAPmlwOAbWlN3lGX9WGBKTV8cAPZx8pnRCyszJc=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "14e0427bef6c55da0d63f9a313fd9941be3a2479"
|
||||
|
@ -840,7 +803,6 @@
|
|||
"repo": "plenary.nvim",
|
||||
"rev": "2d9b06177a975543726ce5c73fca176cedbffe9d",
|
||||
"sha256": "sha256-bmmPekAvuBvLQmrnnX0n+FRBqfVxBsObhxIEkDGAla4=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "2d9b06177a975543726ce5c73fca176cedbffe9d"
|
||||
|
@ -861,7 +823,6 @@
|
|||
"repo": "py_lsp.nvim",
|
||||
"rev": "db01c2d7695a894bfbe5f942b14f798406af5345",
|
||||
"sha256": "sha256-OUk3G1i68cq/B3+Q7/Vl5xN3A+A0EeL9Ys1WlYM95E0=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "db01c2d7695a894bfbe5f942b14f798406af5345"
|
||||
|
@ -882,7 +843,6 @@
|
|||
"repo": "rainbow-delimiters.nvim",
|
||||
"rev": "d227e6c9879bb50af35cd733461198666981d482",
|
||||
"sha256": "sha256-3Wovs/DREnbch7BtkmQeTXsb91AbZdb+N8TAVikbd88=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "d227e6c9879bb50af35cd733461198666981d482"
|
||||
|
@ -903,7 +863,6 @@
|
|||
"repo": "rustaceanvim",
|
||||
"rev": "e1f9464d9e1addeccb170eb7968471966965f5a3",
|
||||
"sha256": "sha256-AOhN2a8QMn2CEEbKdaCuF91aKqkhh2QBl9YNIAb+GPc=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "e1f9464d9e1addeccb170eb7968471966965f5a3"
|
||||
|
@ -924,7 +883,6 @@
|
|||
"repo": "sayama.nvim",
|
||||
"rev": "39175a766dfc80324d3130d27c3e7922f826226e",
|
||||
"sha256": "sha256-Rxjg6RvcN5JOP5CTv7Jj7AQJv36zRMaHiFEwhiBVgfw=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "39175a766dfc80324d3130d27c3e7922f826226e"
|
||||
|
@ -945,7 +903,6 @@
|
|||
"repo": "schemastore.nvim",
|
||||
"rev": "ed65feb5b8026d7c6b1981cfe9d97402342d344d",
|
||||
"sha256": "sha256-Mrn9ErTQHeD1/aTk9Ijq5Q0i4KrifRwK1b7/87Bkyqc=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "ed65feb5b8026d7c6b1981cfe9d97402342d344d"
|
||||
|
@ -966,7 +923,6 @@
|
|||
"repo": "telescope.nvim",
|
||||
"rev": "85922dde3767e01d42a08e750a773effbffaea3e",
|
||||
"sha256": "sha256-Qa/f+0asQvA8mhIUajC4BGZCI92OqA6ySVoQSC3ZY3s=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "85922dde3767e01d42a08e750a773effbffaea3e"
|
||||
|
@ -987,7 +943,6 @@
|
|||
"repo": "telescope-project.nvim",
|
||||
"rev": "796200876bb0fe8157b8eb1ce03d927d3827a052",
|
||||
"sha256": "sha256-wO/cm5PT1L0hFr/CX466w0UimoFg/tWrDK8T0QeKZMU=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "796200876bb0fe8157b8eb1ce03d927d3827a052"
|
||||
|
@ -1008,7 +963,6 @@
|
|||
"repo": "telescope-ui-select.nvim",
|
||||
"rev": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2",
|
||||
"sha256": "sha256-YRhNmmG4gx9Ht8JwjQfbTjJyTHEuZmtP6lqnhOsk8bE=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2"
|
||||
|
@ -1029,7 +983,6 @@
|
|||
"repo": "todo-comments.nvim",
|
||||
"rev": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0",
|
||||
"sha256": "sha256-EH4Sy7qNkzOgA1INFzrtsRfD79TgMqSbKUdundyw22w=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0"
|
||||
|
@ -1050,7 +1003,6 @@
|
|||
"repo": "toggleterm.nvim",
|
||||
"rev": "137d06fb103952a0fb567882bb8527e2f92d327d",
|
||||
"sha256": "sha256-VlHE5nFHDO6GRRM44TqtcWSk2k0NfeCndp7of/35ta4=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "137d06fb103952a0fb567882bb8527e2f92d327d"
|
||||
|
@ -1071,7 +1023,6 @@
|
|||
"repo": "trouble.nvim",
|
||||
"rev": "2f3b537f2207ce32f4459f9d56746ee013b5e01b",
|
||||
"sha256": "sha256-J0Gor5thMqe6T/4PYC8I1RAywfec0eWU1O+GoHUiHnI=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "2f3b537f2207ce32f4459f9d56746ee013b5e01b"
|
||||
|
@ -1092,7 +1043,6 @@
|
|||
"repo": "typescript-tools.nvim",
|
||||
"rev": "f8c2e0b36b651c85f52ad5c5373ff8b07adc15a7",
|
||||
"sha256": "sha256-8WH/eCff1liDVaezZFvu6RqCtXU4Uwq80BlWiH+tQME=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "f8c2e0b36b651c85f52ad5c5373ff8b07adc15a7"
|
||||
|
@ -1113,7 +1063,6 @@
|
|||
"repo": "undotree",
|
||||
"rev": "78b5241191852ffa9bb5da5ff2ee033160798c3b",
|
||||
"sha256": "sha256-XU2n5S2XLIQcPUJESzW+g/ZAXqJo/9uIHYtFutlqmvA=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "78b5241191852ffa9bb5da5ff2ee033160798c3b"
|
||||
|
@ -1134,7 +1083,6 @@
|
|||
"repo": "vim-fugitive",
|
||||
"rev": "d4877e54cef67f5af4f950935b1ade19ed6b7370",
|
||||
"sha256": "sha256-ArYerBws+MBY4BpKh16J5TfVTrA0OFKPoZq7c2YQjp0=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "d4877e54cef67f5af4f950935b1ade19ed6b7370"
|
||||
|
@ -1155,7 +1103,6 @@
|
|||
"repo": "vim-wakatime",
|
||||
"rev": "3cb40867cb5a3120f9bef76eff88edc7f1dc1a23",
|
||||
"sha256": "sha256-HxLmX+qws8A6+mFBGMdru2E3NXJ91P0HtDKMX8ryMzI=",
|
||||
"sparseCheckout": [],
|
||||
"type": "github"
|
||||
},
|
||||
"version": "3cb40867cb5a3120f9bef76eff88edc7f1dc1a23"
|
||||
|
|
1
_sources/generated.nix
generated
1
_sources/generated.nix
generated
|
@ -300,6 +300,7 @@
|
|||
fetchSubmodules = false;
|
||||
sha256 = "sha256-sNHVA70MsJQlbQRkJJAFhLBIdlAJwMsjzbBPrsDZfoA=";
|
||||
};
|
||||
as = "luasnip";
|
||||
date = "2024-10-28";
|
||||
};
|
||||
lz-n = {
|
||||
|
|
|
@ -4,6 +4,6 @@ require("izvim.config.keybinds")
|
|||
require("izvim.config.neovide")
|
||||
require("izvim.config.options")
|
||||
|
||||
require("lz.n").load(require("izvim.plugins"))
|
||||
require("lz.n").load("izvim.plugins")
|
||||
|
||||
require("izvim.health").loaded = true
|
||||
|
|
|
@ -1,101 +1,113 @@
|
|||
require("session_manager").setup({
|
||||
autoload_mode = require("session_manager.config").AutoloadMode.CurrentDir,
|
||||
})
|
||||
return {
|
||||
{
|
||||
"alpha-nvim",
|
||||
after = function()
|
||||
local function apply_gradient_hl(text)
|
||||
local lines = {}
|
||||
for i, line in ipairs(text) do
|
||||
local tbl = {
|
||||
type = "text",
|
||||
val = line,
|
||||
opts = {
|
||||
hl = "AlphaHeaderGradient" .. i,
|
||||
shrink_margin = false,
|
||||
position = "center",
|
||||
},
|
||||
}
|
||||
table.insert(lines, tbl)
|
||||
end
|
||||
|
||||
local function apply_gradient_hl(text)
|
||||
local lines = {}
|
||||
for i, line in ipairs(text) do
|
||||
local tbl = {
|
||||
type = "text",
|
||||
val = line,
|
||||
opts = {
|
||||
hl = "AlphaHeaderGradient" .. i,
|
||||
shrink_margin = false,
|
||||
return {
|
||||
type = "group",
|
||||
val = lines,
|
||||
opts = { position = "center" },
|
||||
}
|
||||
end
|
||||
|
||||
local alpha = require("alpha")
|
||||
local dashboard = require("alpha.themes.dashboard")
|
||||
local theta = require("alpha.themes.theta")
|
||||
|
||||
local header = {
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢿⣿⣿⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠁⢸⣿⣿⣿⠀⠙⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⡿⠛⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⠁⠀⠘⣿⣿⠇⠀⠀⡀⠈⠙⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⠀⠀⠈⠙⢿⣿⣿⣿⣿⣿⡿⠛⠒⢊⠁⢰⣿⠏⠀⠀⠀⠈⠁⢒⠂⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣇⠀⠀⠀⠀⢻⣿⣿⡿⠋⠀⠀⠘⠿⠇⣼⠏⠀⠀⠀⠀⠀⠘⠿⠃⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣧⡀⠀⠀⠀⠹⣿⡁⠀⠀⠀⠀⠀⠀⠋⠀⠀⡀⠀⠀⠀⠀⠀⠀⠐⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣦⠀⠀⠙⠇⠀⠀⢠⣶⣤⡄⠀⠀⠀⠉⢶⢀⣰⠆⠀⠀⠀⢀⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀⠀⣸⢸⢺⢱⠀⠀⠀⠀⣸⠬⠵⠀⠀⠀⣠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢿⣭⠀⠀⠀⠲⣻⡘⠘⠀⢦⠀⠀⠔⠁⠀⠀⣀⠤⠚⣱⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣌⠛⢷⣤⡀⠀⢘⣗⠀⠀⠀⠱⣤⣴⣖⠈⠹⠀⢀⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⠟⠋⠙⠻⣿⣿⣿⣿⣿⣷⣦⣬⠃⣴⣿⣽⣷⣄⣀⢀⣿⣿⡿⠷⣤⣤⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⠃⠀⠀⠀⠀⠘⢿⣿⣿⣿⣿⣿⡇⠀⢹⡿⠿⣍⡙⠛⠛⣻⠟⠻⠶⠦⣤⠞⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⠀⠀⠀⠀⠀⠀⠈⢻⣿⣿⣿⣿⣧⣀⠞⠀⠀⠉⠛⠛⠛⢿⠀⠀⠀⠀⠀⠀⢘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠹⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⢸⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⡀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⡎⠀⠀⠀⢀⡀⠤⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀⠀⠀⢨⠃⠀⠀⠀⠀⠀⠀⠀⠀⡸⠀⠀⡠⠒⠉⠀⠀⠀⠀⠙⢿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀⣠⠃⠀⠀⠀⠀⠀⠀⠀⠀⡰⢁⠔⠋⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣷⡀⠀⠀⠀⠀⠁⠀⠀⠀⠀⠀⠀⠀⠀⣼⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠞⠁⠀⠀⠀⠀⠀⠀⠀⢀⡆⠀⠀⠀⠀⠀⠹⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⡀⠀⠀⠀⠀⠀⢀⡰⠃⠀⠀⠀⠀⠀⠀⠀⣀⣴⣿⣿⡀⠀⠀⠀⠀⠀⢻⣿⣿⣿⣿⣿",
|
||||
}
|
||||
|
||||
local buttons = {
|
||||
type = "group",
|
||||
position = "center",
|
||||
},
|
||||
}
|
||||
table.insert(lines, tbl)
|
||||
end
|
||||
val = {
|
||||
dashboard.button("n", " New file", ":ene <bar> startinsert <cr>"),
|
||||
dashboard.button("f", " Find file", ":Telescope find_files<cr>"),
|
||||
dashboard.button("g", " Live grep", ":Telescope live_grep<cr>"),
|
||||
dashboard.button("s", " Show sessions", ":SessionManager load_session<cr>"),
|
||||
dashboard.button("p", " Projects", ":Telescope project<CR>"),
|
||||
dashboard.button("q", " Quit", ":qa<CR>"),
|
||||
},
|
||||
}
|
||||
|
||||
return {
|
||||
type = "group",
|
||||
val = lines,
|
||||
opts = { position = "center" },
|
||||
}
|
||||
end
|
||||
local v = vim.version()
|
||||
local vStr = string.format("v%d.%d.%d", v.major, v.minor, v.patch)
|
||||
|
||||
local alpha = require("alpha")
|
||||
local dashboard = require("alpha.themes.dashboard")
|
||||
local theta = require("alpha.themes.theta")
|
||||
local footer = {
|
||||
type = "group",
|
||||
position = "center",
|
||||
val = {
|
||||
{
|
||||
type = "text",
|
||||
val = "neovim " .. vStr,
|
||||
opts = { hl = "Comment", position = "center" },
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
local header = {
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢿⣿⣿⣿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠁⢸⣿⣿⣿⠀⠙⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⡿⠛⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡟⠁⠀⠘⣿⣿⠇⠀⠀⡀⠈⠙⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⠀⠀⠈⠙⢿⣿⣿⣿⣿⣿⡿⠛⠒⢊⠁⢰⣿⠏⠀⠀⠀⠈⠁⢒⠂⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣇⠀⠀⠀⠀⢻⣿⣿⡿⠋⠀⠀⠘⠿⠇⣼⠏⠀⠀⠀⠀⠀⠘⠿⠃⠀⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣧⡀⠀⠀⠀⠹⣿⡁⠀⠀⠀⠀⠀⠀⠋⠀⠀⡀⠀⠀⠀⠀⠀⠀⠐⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣦⠀⠀⠙⠇⠀⠀⢠⣶⣤⡄⠀⠀⠀⠉⢶⢀⣰⠆⠀⠀⠀⢀⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀⠀⣸⢸⢺⢱⠀⠀⠀⠀⣸⠬⠵⠀⠀⠀⣠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢿⣭⠀⠀⠀⠲⣻⡘⠘⠀⢦⠀⠀⠔⠁⠀⠀⣀⠤⠚⣱⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣌⠛⢷⣤⡀⠀⢘⣗⠀⠀⠀⠱⣤⣴⣖⠈⠹⠀⢀⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⠟⠋⠙⠻⣿⣿⣿⣿⣿⣷⣦⣬⠃⣴⣿⣽⣷⣄⣀⢀⣿⣿⡿⠷⣤⣤⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⠃⠀⠀⠀⠀⠘⢿⣿⣿⣿⣿⣿⡇⠀⢹⡿⠿⣍⡙⠛⠛⣻⠟⠻⠶⠦⣤⠞⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⠀⠀⠀⠀⠀⠀⠈⢻⣿⣿⣿⣿⣧⣀⠞⠀⠀⠉⠛⠛⠛⢿⠀⠀⠀⠀⠀⠀⢘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠹⣿⣿⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⢸⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⡀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⠃⠀⠀⠀⠀⠀⠀⠀⠀⡎⠀⠀⠀⢀⡀⠤⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀⠀⠀⢨⠃⠀⠀⠀⠀⠀⠀⠀⠀⡸⠀⠀⡠⠒⠉⠀⠀⠀⠀⠙⢿⣿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣷⡀⠀⠀⠀⠀⠀⣠⠃⠀⠀⠀⠀⠀⠀⠀⠀⡰⢁⠔⠋⠀⠀⠀⠀⠀⠀⠀⠀⠈⢿⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣷⡀⠀⠀⠀⠀⠁⠀⠀⠀⠀⠀⠀⠀⠀⣼⠟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠞⠁⠀⠀⠀⠀⠀⠀⠀⢀⡆⠀⠀⠀⠀⠀⠹⣿⣿⣿⣿⣿⣿",
|
||||
"⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣄⡀⠀⠀⠀⠀⠀⢀⡰⠃⠀⠀⠀⠀⠀⠀⠀⣀⣴⣿⣿⡀⠀⠀⠀⠀⠀⢻⣿⣿⣿⣿⣿",
|
||||
}
|
||||
if vim.g.neovide then
|
||||
table.insert(footer.val, 2, {
|
||||
type = "text",
|
||||
val = "neovide v" .. vim.g.neovide_version,
|
||||
opts = { hl = "Comment", position = "center" },
|
||||
})
|
||||
end
|
||||
|
||||
local buttons = {
|
||||
type = "group",
|
||||
position = "center",
|
||||
val = {
|
||||
dashboard.button("n", " New file", ":ene <bar> startinsert <cr>"),
|
||||
dashboard.button("f", " Find file", ":Telescope find_files<cr>"),
|
||||
dashboard.button("g", " Live grep", ":Telescope live_grep<cr>"),
|
||||
dashboard.button("s", " Show sessions", ":SessionManager load_session<cr>"),
|
||||
dashboard.button("p", " Projects", ":Telescope project<CR>"),
|
||||
dashboard.button("q", " Quit", ":qa<CR>"),
|
||||
theta.config.layout = {
|
||||
{ type = "padding", val = 4 },
|
||||
apply_gradient_hl(header),
|
||||
{ type = "padding", val = 1 },
|
||||
buttons,
|
||||
{ type = "padding", val = 1 },
|
||||
footer,
|
||||
}
|
||||
|
||||
alpha.setup(theta.config)
|
||||
end,
|
||||
},
|
||||
{
|
||||
"neovim-session-manager",
|
||||
priority = 60,
|
||||
after = function()
|
||||
require("session_manager").setup({
|
||||
autoload_mode = require("session_manager.config").AutoloadMode.CurrentDir,
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
||||
local v = vim.version()
|
||||
local vStr = string.format("v%d.%d.%d", v.major, v.minor, v.patch)
|
||||
|
||||
local footer = {
|
||||
type = "group",
|
||||
position = "center",
|
||||
val = {
|
||||
{
|
||||
type = "text",
|
||||
val = "neovim " .. vStr,
|
||||
opts = { hl = "Comment", position = "center" },
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
if vim.g.neovide then
|
||||
table.insert(footer.val, 2, {
|
||||
type = "text",
|
||||
val = "neovide v" .. vim.g.neovide_version,
|
||||
opts = { hl = "Comment", position = "center" },
|
||||
})
|
||||
end
|
||||
|
||||
theta.config.layout = {
|
||||
{ type = "padding", val = 4 },
|
||||
apply_gradient_hl(header),
|
||||
{ type = "padding", val = 1 },
|
||||
buttons,
|
||||
{ type = "padding", val = 1 },
|
||||
footer,
|
||||
}
|
||||
|
||||
alpha.setup(theta.config)
|
||||
|
|
|
@ -1,63 +1,71 @@
|
|||
require("catppuccin").setup({
|
||||
flavour = "auto",
|
||||
background = {
|
||||
light = "latte",
|
||||
dark = "mocha",
|
||||
},
|
||||
term_colors = true,
|
||||
transparent_background = false,
|
||||
-- color_overrides = {
|
||||
-- mocha = {
|
||||
-- base = "#000000",
|
||||
-- mantle = "#000000",
|
||||
-- crust = "#000000",
|
||||
-- },
|
||||
-- },
|
||||
styles = {
|
||||
comments = { "italic" },
|
||||
},
|
||||
integrations = {
|
||||
alpha = true,
|
||||
treesitter = true,
|
||||
treesitter_context = false,
|
||||
native_lsp = {
|
||||
enabled = true,
|
||||
virtual_text = {
|
||||
errors = { "italic" },
|
||||
hints = { "italic" },
|
||||
warnings = { "italic" },
|
||||
information = { "italic" },
|
||||
},
|
||||
underlines = {
|
||||
errors = { "undercurl" },
|
||||
hints = { "undercurl" },
|
||||
warnings = { "undercurl" },
|
||||
information = { "undercurl" },
|
||||
},
|
||||
},
|
||||
telescope = {
|
||||
enabled = true,
|
||||
},
|
||||
cmp = true,
|
||||
lsp_trouble = true,
|
||||
nvimtree = true,
|
||||
which_key = false,
|
||||
indent_blankline = {
|
||||
enabled = true,
|
||||
colored_indent_levels = true,
|
||||
},
|
||||
navic = {
|
||||
enabled = true,
|
||||
custom_bg = "NONE",
|
||||
},
|
||||
gitsigns = false,
|
||||
markdown = true,
|
||||
render_markdown = false,
|
||||
harpoon = true,
|
||||
symbols_outline = true,
|
||||
ts_rainbow = true,
|
||||
notify = true,
|
||||
},
|
||||
})
|
||||
return {
|
||||
{
|
||||
"catppuccin",
|
||||
priority = 1000,
|
||||
after = function()
|
||||
require("catppuccin").setup({
|
||||
flavour = "auto",
|
||||
background = {
|
||||
light = "latte",
|
||||
dark = "mocha",
|
||||
},
|
||||
term_colors = true,
|
||||
transparent_background = false,
|
||||
-- color_overrides = {
|
||||
-- mocha = {
|
||||
-- base = "#000000",
|
||||
-- mantle = "#000000",
|
||||
-- crust = "#000000",
|
||||
-- },
|
||||
-- },
|
||||
styles = {
|
||||
comments = { "italic" },
|
||||
},
|
||||
integrations = {
|
||||
alpha = true,
|
||||
treesitter = true,
|
||||
treesitter_context = false,
|
||||
native_lsp = {
|
||||
enabled = true,
|
||||
virtual_text = {
|
||||
errors = { "italic" },
|
||||
hints = { "italic" },
|
||||
warnings = { "italic" },
|
||||
information = { "italic" },
|
||||
},
|
||||
underlines = {
|
||||
errors = { "undercurl" },
|
||||
hints = { "undercurl" },
|
||||
warnings = { "undercurl" },
|
||||
information = { "undercurl" },
|
||||
},
|
||||
},
|
||||
telescope = {
|
||||
enabled = true,
|
||||
},
|
||||
cmp = true,
|
||||
lsp_trouble = true,
|
||||
nvimtree = true,
|
||||
which_key = false,
|
||||
indent_blankline = {
|
||||
enabled = true,
|
||||
colored_indent_levels = true,
|
||||
},
|
||||
navic = {
|
||||
enabled = true,
|
||||
custom_bg = "NONE",
|
||||
},
|
||||
gitsigns = false,
|
||||
markdown = true,
|
||||
render_markdown = false,
|
||||
harpoon = true,
|
||||
symbols_outline = true,
|
||||
ts_rainbow = true,
|
||||
notify = true,
|
||||
},
|
||||
})
|
||||
|
||||
vim.cmd.colorscheme("catppuccin")
|
||||
vim.cmd.colorscheme("catppuccin")
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
|
@ -1,27 +1,35 @@
|
|||
require("cloak").setup({
|
||||
enabled = true,
|
||||
cloak_character = "*",
|
||||
-- The applied highlight group (colors) on the cloaking, see `:h highlight`.
|
||||
highlight_group = "Comment",
|
||||
patterns = {
|
||||
{
|
||||
-- Match any file starting with ".env".
|
||||
-- This can be a table to match multiple file patterns.
|
||||
file_pattern = {
|
||||
".env",
|
||||
".env.local",
|
||||
".env.dev",
|
||||
".env.development",
|
||||
"wrangler.toml",
|
||||
".dev.vars",
|
||||
"secrets.yaml",
|
||||
"secrets.yml",
|
||||
"*.age",
|
||||
},
|
||||
-- Match an equals sign and any character after it.
|
||||
-- This can also be a table of patterns to cloak,
|
||||
-- example: cloak_pattern = { ":.+", "-.+" } for yaml files.
|
||||
cloak_pattern = { ":.+", "=.+" },
|
||||
},
|
||||
-- hide my secrets
|
||||
return {
|
||||
{
|
||||
"cloak.nvim",
|
||||
after = function()
|
||||
require("cloak").setup({
|
||||
enabled = true,
|
||||
cloak_character = "*",
|
||||
-- The applied highlight group (colors) on the cloaking, see `:h highlight`.
|
||||
highlight_group = "Comment",
|
||||
patterns = {
|
||||
{
|
||||
-- Match any file starting with ".env".
|
||||
-- This can be a table to match multiple file patterns.
|
||||
file_pattern = {
|
||||
".env",
|
||||
".env.local",
|
||||
".env.dev",
|
||||
".env.development",
|
||||
"wrangler.toml",
|
||||
".dev.vars",
|
||||
"secrets.yaml",
|
||||
"secrets.yml",
|
||||
"*.age",
|
||||
},
|
||||
-- Match an equals sign and any character after it.
|
||||
-- This can also be a table of patterns to cloak,
|
||||
-- example: cloak_pattern = { ":.+", "-.+" } for yaml files.
|
||||
cloak_pattern = { ":.+", "=.+" },
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
})
|
||||
}
|
||||
|
|
26
config/lua/izvim/plugins/code-snips.lua
Normal file
26
config/lua/izvim/plugins/code-snips.lua
Normal file
|
@ -0,0 +1,26 @@
|
|||
return {
|
||||
{
|
||||
"freeze.nvim",
|
||||
after = function()
|
||||
vim.keymap.set("v", "<leader>sc", "<cmd>Freeze<cr>")
|
||||
|
||||
require("freeze").setup({
|
||||
output = function()
|
||||
return vim.fn.getcwd() .. "/" .. os.date("%Y-%m-%d") .. "_freeze.png"
|
||||
end,
|
||||
config = "user",
|
||||
font = {
|
||||
family = "JetBrains Mono",
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
{
|
||||
"sayama.nvim",
|
||||
after = function()
|
||||
require("sayama").setup({
|
||||
dir = vim.fn.glob("$XDG_DATA_HOME/zzz"),
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
|
@ -1,42 +1,53 @@
|
|||
require("copilot").setup({
|
||||
panel = {
|
||||
enabled = false,
|
||||
auto_refresh = false,
|
||||
keymap = {
|
||||
jump_prev = "[[",
|
||||
jump_next = "]]",
|
||||
accept = "<CR>",
|
||||
refresh = "gr",
|
||||
open = "<C-CR>",
|
||||
},
|
||||
layout = {
|
||||
position = "bottom",
|
||||
ratio = 0.4,
|
||||
},
|
||||
return {
|
||||
{
|
||||
"copilot.lua",
|
||||
enabled = function()
|
||||
return vim.fn.glob("~/.config/gh/config.yml") ~= "" or vim.fn.glob("$XDG_CONFIG_HOME/gh/config.yml") ~= ""
|
||||
end,
|
||||
event = "InsertEnter",
|
||||
after = function()
|
||||
require("copilot").setup({
|
||||
panel = {
|
||||
enabled = false,
|
||||
auto_refresh = false,
|
||||
keymap = {
|
||||
jump_prev = "[[",
|
||||
jump_next = "]]",
|
||||
accept = "<CR>",
|
||||
refresh = "gr",
|
||||
open = "<C-CR>",
|
||||
},
|
||||
layout = {
|
||||
position = "bottom",
|
||||
ratio = 0.4,
|
||||
},
|
||||
},
|
||||
suggestion = {
|
||||
enabled = true,
|
||||
auto_trigger = true,
|
||||
debounce = 75,
|
||||
keymap = {
|
||||
accept = "<C-a>",
|
||||
accept_word = false,
|
||||
accept_line = false,
|
||||
next = "<M-]>",
|
||||
prev = "<M-[>",
|
||||
dismiss = false,
|
||||
},
|
||||
},
|
||||
filetypes = {
|
||||
["*"] = true,
|
||||
help = false,
|
||||
gitcommit = false,
|
||||
gitrebase = false,
|
||||
hgcommit = false,
|
||||
svn = false,
|
||||
cvs = false,
|
||||
["."] = false,
|
||||
},
|
||||
copilot_node_command = "node",
|
||||
server_opts_overrides = {},
|
||||
})
|
||||
end,
|
||||
},
|
||||
suggestion = {
|
||||
enabled = true,
|
||||
auto_trigger = true,
|
||||
debounce = 75,
|
||||
keymap = {
|
||||
accept = "<C-a>",
|
||||
accept_word = false,
|
||||
accept_line = false,
|
||||
next = "<M-]>",
|
||||
prev = "<M-[>",
|
||||
dismiss = false,
|
||||
},
|
||||
},
|
||||
filetypes = {
|
||||
["*"] = true,
|
||||
help = false,
|
||||
gitcommit = false,
|
||||
gitrebase = false,
|
||||
hgcommit = false,
|
||||
svn = false,
|
||||
cvs = false,
|
||||
["."] = false,
|
||||
},
|
||||
copilot_node_command = "node",
|
||||
server_opts_overrides = {},
|
||||
})
|
||||
}
|
||||
|
|
|
@ -1,13 +1,20 @@
|
|||
require("evergarden").setup({
|
||||
transparent_background = true,
|
||||
contrast_dark = "medium", -- 'hard'|'medium'|'soft'
|
||||
override_terminal = true,
|
||||
style = {
|
||||
tabline = { reverse = true, color = "green" },
|
||||
search = { reverse = false, inc_reverse = true },
|
||||
types = { italic = true },
|
||||
keyword = { italic = true },
|
||||
comment = { italic = false },
|
||||
return {
|
||||
{
|
||||
"evergarden",
|
||||
after = function()
|
||||
require("evergarden").setup({
|
||||
transparent_background = true,
|
||||
contrast_dark = "medium", -- 'hard'|'medium'|'soft'
|
||||
override_terminal = true,
|
||||
style = {
|
||||
tabline = { reverse = true, color = "green" },
|
||||
search = { reverse = false, inc_reverse = true },
|
||||
types = { italic = true },
|
||||
keyword = { italic = true },
|
||||
comment = { italic = false },
|
||||
},
|
||||
overrides = {}, -- add custom overrides
|
||||
})
|
||||
end,
|
||||
},
|
||||
overrides = {}, -- add custom overrides
|
||||
})
|
||||
}
|
||||
|
|
|
@ -1,11 +0,0 @@
|
|||
vim.keymap.set("v", "<leader>sc", "<cmd>Freeze<cr>")
|
||||
|
||||
require("freeze").setup({
|
||||
output = function()
|
||||
return vim.fn.getcwd() .. "/" .. os.date("%Y-%m-%d") .. "_freeze.png"
|
||||
end,
|
||||
config = "user",
|
||||
font = {
|
||||
family = "JetBrains Mono",
|
||||
},
|
||||
})
|
|
@ -1,16 +1,23 @@
|
|||
local harpoon = require("harpoon")
|
||||
harpoon:setup()
|
||||
return {
|
||||
{
|
||||
"harpoon",
|
||||
after = function()
|
||||
local harpoon = require("harpoon")
|
||||
harpoon:setup()
|
||||
|
||||
vim.keymap.set("n", "<leader>d", function()
|
||||
harpoon.ui:toggle_quick_menu(harpoon:list())
|
||||
end)
|
||||
vim.keymap.set("n", "<leader>d", function()
|
||||
harpoon.ui:toggle_quick_menu(harpoon:list())
|
||||
end)
|
||||
|
||||
vim.keymap.set("n", "<leader>a", function()
|
||||
harpoon:list():add()
|
||||
end)
|
||||
vim.keymap.set("n", "<leader>a", function()
|
||||
harpoon:list():add()
|
||||
end)
|
||||
|
||||
for i = 0, 4 do
|
||||
vim.keymap.set("n", "<leader>" .. i, function()
|
||||
harpoon:list():select(i)
|
||||
end)
|
||||
end
|
||||
for i = 0, 4 do
|
||||
vim.keymap.set("n", "<leader>" .. i, function()
|
||||
harpoon:list():select(i)
|
||||
end)
|
||||
end
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
|
@ -1,9 +1,3 @@
|
|||
local rq = function(plugin)
|
||||
return function()
|
||||
require("izvim.plugins." .. plugin)
|
||||
end
|
||||
end
|
||||
|
||||
return {
|
||||
-- tree view
|
||||
{
|
||||
|
@ -42,128 +36,7 @@ return {
|
|||
end,
|
||||
},
|
||||
|
||||
-- markdown stuff
|
||||
{
|
||||
"markview.nvim",
|
||||
lazy = false,
|
||||
after = rq("markview"),
|
||||
},
|
||||
{
|
||||
"obsidian.nvim",
|
||||
after = rq("obsidian"),
|
||||
},
|
||||
|
||||
-- rice
|
||||
{
|
||||
"alpha-nvim",
|
||||
after = rq("alpha"),
|
||||
},
|
||||
{
|
||||
"neovim-session-manager",
|
||||
priority = 60,
|
||||
},
|
||||
|
||||
{
|
||||
"lualine.nvim",
|
||||
after = rq("lualine"),
|
||||
},
|
||||
|
||||
{
|
||||
"catppuccin",
|
||||
priority = 1000,
|
||||
after = rq("catppuccin"),
|
||||
},
|
||||
|
||||
{
|
||||
"evergarden",
|
||||
after = rq("evergarden"),
|
||||
},
|
||||
|
||||
{
|
||||
"fidget.nvim",
|
||||
after = function()
|
||||
require("fidget").setup({
|
||||
display = { done_icon = "" },
|
||||
notification = {
|
||||
override_vim_notify = true,
|
||||
window = { winblend = 0 },
|
||||
},
|
||||
progress = {
|
||||
ignore = {
|
||||
"copilot",
|
||||
"null-ls",
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"nvim-colorizer.lua",
|
||||
after = function()
|
||||
require("colorizer").setup({
|
||||
user_default_options = {
|
||||
RGB = true,
|
||||
RRGGBB = true,
|
||||
names = false,
|
||||
RRGGBBAA = true,
|
||||
AARRGGBB = false,
|
||||
rgb_fn = false,
|
||||
hsl_fn = false,
|
||||
css = false,
|
||||
css_fn = false,
|
||||
mode = "background",
|
||||
tailwind = "both",
|
||||
sass = {
|
||||
enable = true,
|
||||
},
|
||||
virtualtext = " ",
|
||||
},
|
||||
|
||||
buftypes = {
|
||||
"*",
|
||||
"!dashboard",
|
||||
"!lazy",
|
||||
"!popup",
|
||||
"!prompt",
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"todo-comments.nvim",
|
||||
after = function()
|
||||
require("todo-comments").setup()
|
||||
end,
|
||||
},
|
||||
|
||||
-- quicker movement
|
||||
{
|
||||
"telescope.nvim",
|
||||
after = rq("telescope"),
|
||||
},
|
||||
|
||||
{
|
||||
"harpoon",
|
||||
after = rq("harpoon"),
|
||||
},
|
||||
|
||||
-- copilot
|
||||
{
|
||||
"copilot.lua",
|
||||
enabled = function()
|
||||
return vim.fn.glob("~/.config/gh/config.yml") ~= "" or vim.fn.glob("$XDG_CONFIG_HOME/gh/config.yml") ~= ""
|
||||
end,
|
||||
event = "InsertEnter",
|
||||
after = rq("copilot"),
|
||||
},
|
||||
|
||||
-- lsp
|
||||
{
|
||||
"nvim-treesitter",
|
||||
after = rq("tree-sitter"),
|
||||
},
|
||||
{ "rainbow-delimiters.nvim" },
|
||||
|
||||
-- rust lsp + formmating
|
||||
|
@ -172,15 +45,6 @@ return {
|
|||
ft = "rust",
|
||||
},
|
||||
|
||||
{
|
||||
"nvim-lspconfig",
|
||||
after = rq("lsp"),
|
||||
},
|
||||
|
||||
{
|
||||
"trouble.nvim",
|
||||
after = rq("trouble"),
|
||||
},
|
||||
{
|
||||
"lazydev.nvim",
|
||||
after = function()
|
||||
|
@ -188,55 +52,7 @@ return {
|
|||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"crates.nvim",
|
||||
after = function()
|
||||
require("crates").setup({})
|
||||
end,
|
||||
event = "BufRead Cargo.toml",
|
||||
},
|
||||
|
||||
{
|
||||
"go.nvim",
|
||||
ft = {
|
||||
"go",
|
||||
"gomod",
|
||||
"gosum",
|
||||
"gotmpl",
|
||||
"gohtmltmpl",
|
||||
"gotexttmpl",
|
||||
},
|
||||
after = function()
|
||||
-- setup go stuff
|
||||
require("go").setup({
|
||||
disable_defaults = false,
|
||||
icons = {
|
||||
breakpoint = " ",
|
||||
currentpos = " ",
|
||||
},
|
||||
trouble = true,
|
||||
luasnip = true,
|
||||
dap_debug_keymap = false,
|
||||
lsp_cfg = false,
|
||||
lsp_keymaps = false,
|
||||
lsp_inlay_hints = {
|
||||
enable = true,
|
||||
style = "inlay",
|
||||
},
|
||||
})
|
||||
|
||||
require("lspconfig").gopls.setup(require("go.lsp").config())
|
||||
end,
|
||||
},
|
||||
{ "guihua.lua" },
|
||||
|
||||
-- hide my secrets
|
||||
{
|
||||
"cloak.nvim",
|
||||
after = rq("cloak"),
|
||||
},
|
||||
|
||||
-- misc
|
||||
-- add better undo history
|
||||
{
|
||||
"undotree",
|
||||
after = function()
|
||||
|
@ -244,27 +60,6 @@ return {
|
|||
end,
|
||||
},
|
||||
|
||||
-- alow me to paste images really easy
|
||||
{
|
||||
"img-clip.nvim",
|
||||
after = function()
|
||||
require("img-clip").setup({
|
||||
filetypes = {
|
||||
markdown = {
|
||||
template = function()
|
||||
local root_dir = vim.fs.find({ ".obsidian" }, { upward = true })
|
||||
if vim.tbl_isempty(root_dir) then
|
||||
return ""
|
||||
else
|
||||
return "![[$FILE_PATH]]"
|
||||
end
|
||||
end,
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
-- track my time coding
|
||||
{
|
||||
"wakatime",
|
||||
|
@ -273,48 +68,7 @@ return {
|
|||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"indent-blankline.nvim",
|
||||
event = "DeferredUIEnter",
|
||||
after = function()
|
||||
require("ibl").setup({
|
||||
scope = { enabled = false },
|
||||
exclude = {
|
||||
filetypes = {
|
||||
"alpha",
|
||||
"fugitive",
|
||||
"help",
|
||||
"lazy",
|
||||
"NvimTree",
|
||||
"ToggleTerm",
|
||||
"LazyGit",
|
||||
"TelescopePrompt",
|
||||
"prompt",
|
||||
"code-action-menu-menu",
|
||||
"code-action-menu-warning-message",
|
||||
"Trouble",
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
-- cool snippets saving
|
||||
{
|
||||
"sayama.nvim",
|
||||
after = function()
|
||||
require("sayama").setup({
|
||||
dir = vim.fn.glob("$XDG_DATA_HOME/zzz"),
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"freeze.nvim",
|
||||
after = rq("freeze"),
|
||||
},
|
||||
|
||||
-- lazygit integration
|
||||
-- lazygit integration & terminal
|
||||
{
|
||||
"toggleterm.nvim",
|
||||
after = function()
|
||||
|
@ -367,11 +121,4 @@ return {
|
|||
})
|
||||
end,
|
||||
},
|
||||
|
||||
-- deps
|
||||
{
|
||||
"nvim-web-devicons",
|
||||
priority = 100,
|
||||
after = rq("nvim-web-devicons"),
|
||||
},
|
||||
}
|
||||
|
|
|
@ -1,426 +1,490 @@
|
|||
local plugins = {
|
||||
"nvim-cmp",
|
||||
"cmp-buffer",
|
||||
"cmp-cmdline",
|
||||
"cmp-nvim-lsp",
|
||||
"cmp-path",
|
||||
"cmp_luasnip",
|
||||
"lspkind.nvim",
|
||||
"none-ls.nvim",
|
||||
"lsp-status.nvim",
|
||||
"ltex-extra.nvim",
|
||||
"schemastore.nvim",
|
||||
"py_lsp.nvim",
|
||||
"typescript-tools.nvim",
|
||||
"luasnip",
|
||||
}
|
||||
return {
|
||||
{ "nvim-cmp", lazy = false },
|
||||
{ "cmp-buffer", lazy = false },
|
||||
{ "cmp-cmdline", lazy = false },
|
||||
{ "cmp-nvim-lsp", lazy = false },
|
||||
{ "cmp-path", lazy = false },
|
||||
{ "cmp_luasnip", lazy = false },
|
||||
{ "lspkind.nvim", lazy = false },
|
||||
{ "none-ls.nvim", lazy = false },
|
||||
{ "lsp-status.nvim", lazy = false },
|
||||
{ "ltex-extra.nvim", lazy = false },
|
||||
{ "schemastore.nvim", lazy = false },
|
||||
{ "py_lsp.nvim", lazy = false },
|
||||
{ "typescript-tools.nvim", lazy = false },
|
||||
{ "luasnip", lazy = false },
|
||||
|
||||
for _, plugin in ipairs(plugins) do
|
||||
vim.api.nvim_cmd({
|
||||
cmd = "packadd",
|
||||
args = { plugin },
|
||||
}, {})
|
||||
end
|
||||
{
|
||||
"nvim-lspconfig",
|
||||
event = "DeferredUIEnter",
|
||||
after = function()
|
||||
local plugins = {
|
||||
"nvim-cmp",
|
||||
"cmp-buffer",
|
||||
"cmp-cmdline",
|
||||
"cmp-nvim-lsp",
|
||||
"cmp-path",
|
||||
"cmp_luasnip",
|
||||
"lspkind.nvim",
|
||||
"none-ls.nvim",
|
||||
"lsp-status.nvim",
|
||||
"ltex-extra.nvim",
|
||||
"schemastore.nvim",
|
||||
"py_lsp.nvim",
|
||||
"typescript-tools.nvim",
|
||||
"luasnip",
|
||||
}
|
||||
|
||||
local lsp_present, lspconfig = pcall(require, "lspconfig")
|
||||
local cmp_present, cmp = pcall(require, "cmp")
|
||||
local navic_present, navic = pcall(require, "nvim-navic")
|
||||
local luasnip_present, luasnip = pcall(require, "luasnip")
|
||||
|
||||
if not lsp_present then
|
||||
vim.notify("lspnot present", vim.log.levels.ERROR)
|
||||
return
|
||||
end
|
||||
|
||||
if not cmp_present then
|
||||
vim.notify("cmp not present", vim.log.levels.ERROR)
|
||||
return
|
||||
end
|
||||
|
||||
if not luasnip_present then
|
||||
vim.notify("luasnip not present", vim.log.levels.ERROR)
|
||||
return
|
||||
end
|
||||
|
||||
vim.opt.completeopt = "menu,menuone,noselect"
|
||||
require("luasnip.loaders.from_vscode").lazy_load()
|
||||
|
||||
-- border style
|
||||
require("lspconfig.ui.windows").default_options.border = vim.g.bc.style
|
||||
vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, {
|
||||
border = vim.g.bc.style,
|
||||
})
|
||||
local cmp_borders = {
|
||||
border = {
|
||||
vim.g.bc.topleft,
|
||||
vim.g.bc.horiz,
|
||||
vim.g.bc.topright,
|
||||
vim.g.bc.vert,
|
||||
vim.g.bc.botright,
|
||||
vim.g.bc.horiz,
|
||||
vim.g.bc.botleft,
|
||||
vim.g.bc.vert,
|
||||
},
|
||||
winhighlight = "Normal:CmpPmenu,FloatBorder:CmpBorder,CursorLine:PmenuSel,Search:None",
|
||||
}
|
||||
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
luasnip.lsp_expand(args.body)
|
||||
end,
|
||||
},
|
||||
window = {
|
||||
completion = cmp_borders,
|
||||
documentation = cmp_borders,
|
||||
},
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
["<CR>"] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
if luasnip.expandable() then
|
||||
luasnip.expand()
|
||||
else
|
||||
cmp.confirm({
|
||||
select = true,
|
||||
})
|
||||
end
|
||||
else
|
||||
fallback()
|
||||
for _, plugin in ipairs(plugins) do
|
||||
require("lz.n").trigger_load({ plugin })
|
||||
end
|
||||
end),
|
||||
|
||||
["<Tab>"] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item()
|
||||
elseif luasnip.locally_jumpable(1) then
|
||||
luasnip.jump(1)
|
||||
else
|
||||
fallback()
|
||||
local lsp_present, lspconfig = pcall(require, "lspconfig")
|
||||
local cmp_present, cmp = pcall(require, "cmp")
|
||||
local navic_present, navic = pcall(require, "nvim-navic")
|
||||
local luasnip_present, luasnip = pcall(require, "luasnip")
|
||||
|
||||
if not lsp_present then
|
||||
vim.notify("lspnot present", vim.log.levels.ERROR)
|
||||
return
|
||||
end
|
||||
end, { "i", "s" }),
|
||||
}),
|
||||
sources = cmp.config.sources({
|
||||
-- { name = "copilot" },
|
||||
{ name = "nvim_lsp" },
|
||||
{ name = "path" },
|
||||
{ name = "luasnip" },
|
||||
}, {
|
||||
{ name = "buffer" },
|
||||
}),
|
||||
formatting = {
|
||||
fields = { "kind", "abbr", "menu" },
|
||||
format = function(entry, vim_item)
|
||||
local kind = require("lspkind").cmp_format({
|
||||
mode = "symbol_text",
|
||||
ellipsis_char = "…",
|
||||
maxwidth = 50,
|
||||
symbol_map = { Copilot = "" },
|
||||
})(entry, vim_item)
|
||||
local strings = vim.split(kind.kind, "%s", { trimempty = true })
|
||||
|
||||
kind.kind = " " .. (strings[1] or "") .. " "
|
||||
kind.menu = " (" .. (strings[2] or "") .. ")"
|
||||
if not cmp_present then
|
||||
vim.notify("cmp not present", vim.log.levels.ERROR)
|
||||
return
|
||||
end
|
||||
|
||||
return kind
|
||||
end,
|
||||
},
|
||||
})
|
||||
if not luasnip_present then
|
||||
vim.notify("luasnip not present", vim.log.levels.ERROR)
|
||||
return
|
||||
end
|
||||
|
||||
vim.api.nvim_create_autocmd("BufRead", {
|
||||
group = vim.api.nvim_create_augroup("CmpSourceCargo", { clear = true }),
|
||||
pattern = "Cargo.toml",
|
||||
callback = function()
|
||||
cmp.setup.buffer({ sources = { { name = "crates" } } })
|
||||
end,
|
||||
})
|
||||
vim.opt.completeopt = "menu,menuone,noselect"
|
||||
require("luasnip.loaders.from_vscode").lazy_load()
|
||||
|
||||
cmp.setup.cmdline({ "/", "?" }, {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = {
|
||||
{ name = "buffer" },
|
||||
},
|
||||
})
|
||||
|
||||
cmp.setup.cmdline(":", {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = cmp.config.sources({
|
||||
{ name = "path", option = { trailing_slash = true } },
|
||||
}, {
|
||||
{ name = "cmdline" },
|
||||
}),
|
||||
})
|
||||
|
||||
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
||||
|
||||
vim.api.nvim_create_autocmd("LspAttach", {
|
||||
group = vim.api.nvim_create_augroup("UserLspConfig", {}),
|
||||
callback = function(ev)
|
||||
local client = vim.lsp.get_client_by_id(ev.data.client_id)
|
||||
|
||||
if client == nil then
|
||||
return
|
||||
end
|
||||
|
||||
if navic_present and client.server_capabilities.documentSymbolProvider then
|
||||
navic.attach(client, ev.buf)
|
||||
end
|
||||
|
||||
if client.server_capabilities.inlayHintProvider then
|
||||
vim.lsp.inlay_hint.enable(true, { bufnr = ev.buf })
|
||||
end
|
||||
|
||||
local opts = { buffer = ev.buf }
|
||||
vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
|
||||
vim.keymap.set("n", "K", vim.lsp.buf.hover, opts)
|
||||
vim.keymap.set("n", "<C-k>", vim.lsp.buf.signature_help, opts)
|
||||
vim.keymap.set("n", "<space>rn", vim.lsp.buf.rename, opts)
|
||||
vim.keymap.set({ "n", "v" }, "<space>ca", vim.lsp.buf.code_action, opts)
|
||||
vim.keymap.set("n", "gr", vim.lsp.buf.references, opts)
|
||||
vim.keymap.set("n", "<space>fm", function()
|
||||
vim.lsp.buf.format({ async = true })
|
||||
end, opts)
|
||||
end,
|
||||
})
|
||||
|
||||
local common = { capabilities = capabilities }
|
||||
|
||||
-- setup python
|
||||
pcall(require("py_lsp").setup, common)
|
||||
|
||||
require("typescript-tools").setup({
|
||||
single_file_support = false,
|
||||
root_dir = function(fname)
|
||||
local root_dir = lspconfig.util.root_pattern("package.json", "tsconfig.json")(fname)
|
||||
|
||||
-- this is needed to make sure we don't pick up root_dir inside node_modules
|
||||
local node_modules_index = root_dir and root_dir:find("node_modules", 1, true)
|
||||
if node_modules_index and node_modules_index > 0 then
|
||||
---@diagnostic disable-next-line: need-check-nil
|
||||
root_dir = root_dir:sub(1, node_modules_index - 2)
|
||||
end
|
||||
|
||||
return root_dir
|
||||
end,
|
||||
settings = {
|
||||
expose_as_code_action = {
|
||||
"add_missing_imports",
|
||||
"fix_all",
|
||||
"remove_unused",
|
||||
},
|
||||
tsserver_path = vim.fn.resolve(vim.fn.exepath("tsserver") .. "/../../lib/node_modules/typescript/bin/tsserver"),
|
||||
},
|
||||
})
|
||||
|
||||
local servers = {
|
||||
astro = {},
|
||||
bashls = {},
|
||||
cssls = {},
|
||||
denols = {
|
||||
root_dir = lspconfig.util.root_pattern("deno.json", "deno.jsonc"),
|
||||
single_file_support = false,
|
||||
},
|
||||
dockerls = {},
|
||||
emmet_language_server = {
|
||||
filetypes = {
|
||||
"astro",
|
||||
"css",
|
||||
"eruby",
|
||||
"html",
|
||||
"javascript",
|
||||
"javascriptreact",
|
||||
"less",
|
||||
"sass",
|
||||
"scss",
|
||||
"pug",
|
||||
"typescriptreact",
|
||||
},
|
||||
},
|
||||
graphql = {
|
||||
filetypes = {
|
||||
"graphql",
|
||||
"typescriptreact",
|
||||
"javascriptreact",
|
||||
"typescript",
|
||||
},
|
||||
},
|
||||
helm_ls = {},
|
||||
hls = {},
|
||||
html = {},
|
||||
intelephense = {},
|
||||
jqls = {},
|
||||
jsonls = {
|
||||
settings = {
|
||||
json = {
|
||||
schemas = require("schemastore").json.schemas(),
|
||||
validate = { enable = true },
|
||||
},
|
||||
},
|
||||
},
|
||||
lua_ls = {
|
||||
capabilities = capabilities,
|
||||
settings = {
|
||||
Lua = {
|
||||
diagnostics = {
|
||||
globals = { "vim" },
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
ltex = {
|
||||
on_attach = function()
|
||||
require("ltex_extra").setup({
|
||||
load_langs = { "en-US", "en-GB" },
|
||||
init_check = true,
|
||||
path = vim.fn.stdpath("data") .. "/dictionary",
|
||||
-- border style
|
||||
require("lspconfig.ui.windows").default_options.border = vim.g.bc.style
|
||||
vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, {
|
||||
border = vim.g.bc.style,
|
||||
})
|
||||
end,
|
||||
settings = {
|
||||
ltex = {
|
||||
language = "en-US",
|
||||
additionalRules = {
|
||||
enablePickyRules = true,
|
||||
motherTongue = "en_GB",
|
||||
local cmp_borders = {
|
||||
border = {
|
||||
vim.g.bc.topleft,
|
||||
vim.g.bc.horiz,
|
||||
vim.g.bc.topright,
|
||||
vim.g.bc.vert,
|
||||
vim.g.bc.botright,
|
||||
vim.g.bc.horiz,
|
||||
vim.g.bc.botleft,
|
||||
vim.g.bc.vert,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
marksman = {},
|
||||
nil_ls = {
|
||||
autostart = true,
|
||||
capabilities = capabilities,
|
||||
cmd = { "nil" },
|
||||
settings = {
|
||||
["nil"] = {
|
||||
winhighlight = "Normal:CmpPmenu,FloatBorder:CmpBorder,CursorLine:PmenuSel,Search:None",
|
||||
}
|
||||
|
||||
cmp.setup({
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
luasnip.lsp_expand(args.body)
|
||||
end,
|
||||
},
|
||||
window = {
|
||||
completion = cmp_borders,
|
||||
documentation = cmp_borders,
|
||||
},
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
["<CR>"] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
if luasnip.expandable() then
|
||||
luasnip.expand()
|
||||
else
|
||||
cmp.confirm({
|
||||
select = true,
|
||||
})
|
||||
end
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end),
|
||||
|
||||
["<Tab>"] = cmp.mapping(function(fallback)
|
||||
if cmp.visible() then
|
||||
cmp.select_next_item()
|
||||
elseif luasnip.locally_jumpable(1) then
|
||||
luasnip.jump(1)
|
||||
else
|
||||
fallback()
|
||||
end
|
||||
end, { "i", "s" }),
|
||||
}),
|
||||
sources = cmp.config.sources({
|
||||
-- { name = "copilot" },
|
||||
{ name = "nvim_lsp" },
|
||||
{ name = "path" },
|
||||
{ name = "luasnip" },
|
||||
}, {
|
||||
{ name = "buffer" },
|
||||
}),
|
||||
formatting = {
|
||||
command = { "nixfmt" },
|
||||
fields = { "kind", "abbr", "menu" },
|
||||
format = function(entry, vim_item)
|
||||
local kind = require("lspkind").cmp_format({
|
||||
mode = "symbol_text",
|
||||
ellipsis_char = "…",
|
||||
maxwidth = 50,
|
||||
symbol_map = { Copilot = "" },
|
||||
})(entry, vim_item)
|
||||
local strings = vim.split(kind.kind, "%s", { trimempty = true })
|
||||
|
||||
kind.kind = " " .. (strings[1] or "") .. " "
|
||||
kind.menu = " (" .. (strings[2] or "") .. ")"
|
||||
|
||||
return kind
|
||||
end,
|
||||
},
|
||||
nix = { maxMemoryMB = nil },
|
||||
},
|
||||
},
|
||||
},
|
||||
nushell = {},
|
||||
serve_d = {},
|
||||
sourcekit = {},
|
||||
taplo = {},
|
||||
teal_ls = {},
|
||||
tailwindcss = {
|
||||
filetypes = {
|
||||
"astro",
|
||||
"javascriptreact",
|
||||
"typescriptreact",
|
||||
"html",
|
||||
"css",
|
||||
},
|
||||
},
|
||||
volar = {
|
||||
capabilities = {
|
||||
workspace = {
|
||||
didChangeWatchedFiles = {
|
||||
dynamicRegistration = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
root_dir = require("lspconfig.util").root_pattern("package.json"),
|
||||
},
|
||||
yamlls = {
|
||||
settings = {
|
||||
yaml = {
|
||||
completion = true,
|
||||
validate = true,
|
||||
suggest = {
|
||||
parentSkeletonSelectedFirst = true,
|
||||
},
|
||||
schemas = vim.tbl_extend("keep", {
|
||||
["https://json.schemastore.org/github-action"] = ".github/action.{yaml,yml}",
|
||||
["https://json.schemastore.org/github-workflow"] = ".github/workflows/*",
|
||||
["https://gitlab.com/gitlab-org/gitlab/-/raw/master/app/assets/javascripts/editor/schema/ci.json"] = "*lab-ci.{yaml,yml}",
|
||||
["https://json.schemastore.org/helmfile"] = "helmfile.{yaml,yml}",
|
||||
["https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json"] = "docker-compose.{yml,yaml}",
|
||||
["https://goreleaser.com/static/schema.json"] = ".goreleaser.{yml,yaml}",
|
||||
}, require("schemastore").yaml.schemas()),
|
||||
},
|
||||
redhat = {
|
||||
telemetry = {
|
||||
enabled = false,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
})
|
||||
|
||||
for server, config in pairs(servers) do
|
||||
lspconfig[server].setup(vim.tbl_extend("force", common, config))
|
||||
end
|
||||
|
||||
-- null ls stuff
|
||||
local null_present, null = pcall(require, "null-ls")
|
||||
|
||||
if not null_present then
|
||||
return
|
||||
end
|
||||
|
||||
local augroup = vim.api.nvim_create_augroup("LspFormatting", {})
|
||||
|
||||
local sources = {
|
||||
-- general
|
||||
null.builtins.formatting.treefmt.with({
|
||||
condition = function(utils)
|
||||
return utils.root_has_file("treefmt.toml")
|
||||
end,
|
||||
}),
|
||||
|
||||
-- nix
|
||||
null.builtins.formatting.nixfmt,
|
||||
null.builtins.diagnostics.statix,
|
||||
null.builtins.diagnostics.deadnix,
|
||||
|
||||
-- go
|
||||
null.builtins.formatting.gofumpt,
|
||||
|
||||
-- webdev
|
||||
null.builtins.formatting.prettier.with({
|
||||
filetypes = {
|
||||
"html",
|
||||
"astro",
|
||||
"vue",
|
||||
},
|
||||
}),
|
||||
|
||||
-- shell
|
||||
null.builtins.formatting.shfmt,
|
||||
|
||||
-- lua
|
||||
null.builtins.formatting.stylua,
|
||||
null.builtins.diagnostics.selene,
|
||||
|
||||
-- docs
|
||||
null.builtins.diagnostics.alex,
|
||||
null.builtins.diagnostics.proselint,
|
||||
}
|
||||
|
||||
null.setup({
|
||||
sources = sources,
|
||||
on_attach = function(client, bufnr)
|
||||
if client.supports_method("textDocument/formatting") then
|
||||
vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr })
|
||||
vim.api.nvim_create_autocmd("BufWritePre", {
|
||||
group = augroup,
|
||||
buffer = bufnr,
|
||||
vim.api.nvim_create_autocmd("BufRead", {
|
||||
group = vim.api.nvim_create_augroup("CmpSourceCargo", { clear = true }),
|
||||
pattern = "Cargo.toml",
|
||||
callback = function()
|
||||
vim.lsp.buf.format({
|
||||
bufnr = bufnr,
|
||||
filter = function(c)
|
||||
return c.name == "null-ls"
|
||||
end,
|
||||
})
|
||||
cmp.setup.buffer({ sources = { { name = "crates" } } })
|
||||
end,
|
||||
})
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
local toggle_formatters = function()
|
||||
null.toggle({ methods = null.methods.FORMATTING })
|
||||
end
|
||||
cmp.setup.cmdline({ "/", "?" }, {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = {
|
||||
{ name = "buffer" },
|
||||
},
|
||||
})
|
||||
|
||||
vim.api.nvim_create_user_command("ToggleFormatters", toggle_formatters, {})
|
||||
cmp.setup.cmdline(":", {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = cmp.config.sources({
|
||||
{ name = "path", option = { trailing_slash = true } },
|
||||
}, {
|
||||
{ name = "cmdline" },
|
||||
}),
|
||||
})
|
||||
|
||||
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
||||
|
||||
vim.api.nvim_create_autocmd("LspAttach", {
|
||||
group = vim.api.nvim_create_augroup("UserLspConfig", {}),
|
||||
callback = function(ev)
|
||||
local client = vim.lsp.get_client_by_id(ev.data.client_id)
|
||||
|
||||
if client == nil then
|
||||
return
|
||||
end
|
||||
|
||||
if navic_present and client.server_capabilities.documentSymbolProvider then
|
||||
navic.attach(client, ev.buf)
|
||||
end
|
||||
|
||||
if client.server_capabilities.inlayHintProvider then
|
||||
vim.lsp.inlay_hint.enable(true, { bufnr = ev.buf })
|
||||
end
|
||||
|
||||
local opts = { buffer = ev.buf }
|
||||
vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
|
||||
vim.keymap.set("n", "K", vim.lsp.buf.hover, opts)
|
||||
vim.keymap.set("n", "<C-k>", vim.lsp.buf.signature_help, opts)
|
||||
vim.keymap.set("n", "<space>rn", vim.lsp.buf.rename, opts)
|
||||
vim.keymap.set({ "n", "v" }, "<space>ca", vim.lsp.buf.code_action, opts)
|
||||
vim.keymap.set("n", "gr", vim.lsp.buf.references, opts)
|
||||
vim.keymap.set("n", "<space>fm", function()
|
||||
vim.lsp.buf.format({ async = true })
|
||||
end, opts)
|
||||
end,
|
||||
})
|
||||
|
||||
local common = { capabilities = capabilities }
|
||||
|
||||
-- setup python
|
||||
pcall(require("py_lsp").setup, common)
|
||||
|
||||
require("typescript-tools").setup({
|
||||
single_file_support = false,
|
||||
root_dir = function(fname)
|
||||
local root_dir = lspconfig.util.root_pattern("package.json", "tsconfig.json")(fname)
|
||||
|
||||
-- this is needed to make sure we don't pick up root_dir inside node_modules
|
||||
local node_modules_index = root_dir and root_dir:find("node_modules", 1, true)
|
||||
if node_modules_index and node_modules_index > 0 then
|
||||
---@diagnostic disable-next-line: need-check-nil
|
||||
root_dir = root_dir:sub(1, node_modules_index - 2)
|
||||
end
|
||||
|
||||
return root_dir
|
||||
end,
|
||||
settings = {
|
||||
expose_as_code_action = {
|
||||
"add_missing_imports",
|
||||
"fix_all",
|
||||
"remove_unused",
|
||||
},
|
||||
tsserver_path = vim.fn.resolve(
|
||||
vim.fn.exepath("tsserver") .. "/../../lib/node_modules/typescript/bin/tsserver"
|
||||
),
|
||||
},
|
||||
})
|
||||
|
||||
local servers = {
|
||||
astro = {},
|
||||
bashls = {},
|
||||
cssls = {},
|
||||
denols = {
|
||||
root_dir = lspconfig.util.root_pattern("deno.json", "deno.jsonc"),
|
||||
single_file_support = false,
|
||||
},
|
||||
dockerls = {},
|
||||
emmet_language_server = {
|
||||
filetypes = {
|
||||
"astro",
|
||||
"css",
|
||||
"eruby",
|
||||
"html",
|
||||
"javascript",
|
||||
"javascriptreact",
|
||||
"less",
|
||||
"sass",
|
||||
"scss",
|
||||
"pug",
|
||||
"typescriptreact",
|
||||
},
|
||||
},
|
||||
graphql = {
|
||||
filetypes = {
|
||||
"graphql",
|
||||
"typescriptreact",
|
||||
"javascriptreact",
|
||||
"typescript",
|
||||
},
|
||||
},
|
||||
helm_ls = {},
|
||||
hls = {},
|
||||
html = {},
|
||||
intelephense = {},
|
||||
jqls = {},
|
||||
jsonls = {
|
||||
settings = {
|
||||
json = {
|
||||
schemas = require("schemastore").json.schemas(),
|
||||
validate = { enable = true },
|
||||
},
|
||||
},
|
||||
},
|
||||
lua_ls = {
|
||||
capabilities = capabilities,
|
||||
settings = {
|
||||
Lua = {
|
||||
diagnostics = {
|
||||
globals = { "vim" },
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
ltex = {
|
||||
on_attach = function()
|
||||
require("ltex_extra").setup({
|
||||
load_langs = { "en-US", "en-GB" },
|
||||
init_check = true,
|
||||
path = vim.fn.stdpath("data") .. "/dictionary",
|
||||
})
|
||||
end,
|
||||
settings = {
|
||||
ltex = {
|
||||
language = "en-US",
|
||||
additionalRules = {
|
||||
enablePickyRules = true,
|
||||
motherTongue = "en_GB",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
marksman = {},
|
||||
nil_ls = {
|
||||
autostart = true,
|
||||
capabilities = capabilities,
|
||||
cmd = { "nil" },
|
||||
settings = {
|
||||
["nil"] = {
|
||||
formatting = {
|
||||
command = { "nixfmt" },
|
||||
},
|
||||
nix = { maxMemoryMB = nil },
|
||||
},
|
||||
},
|
||||
},
|
||||
nushell = {},
|
||||
serve_d = {},
|
||||
sourcekit = {},
|
||||
taplo = {},
|
||||
teal_ls = {},
|
||||
tailwindcss = {
|
||||
filetypes = {
|
||||
"astro",
|
||||
"javascriptreact",
|
||||
"typescriptreact",
|
||||
"html",
|
||||
"css",
|
||||
},
|
||||
},
|
||||
volar = {
|
||||
capabilities = {
|
||||
workspace = {
|
||||
didChangeWatchedFiles = {
|
||||
dynamicRegistration = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
root_dir = require("lspconfig.util").root_pattern("package.json"),
|
||||
},
|
||||
yamlls = {
|
||||
settings = {
|
||||
yaml = {
|
||||
completion = true,
|
||||
validate = true,
|
||||
suggest = {
|
||||
parentSkeletonSelectedFirst = true,
|
||||
},
|
||||
schemas = vim.tbl_extend("keep", {
|
||||
["https://json.schemastore.org/github-action"] = ".github/action.{yaml,yml}",
|
||||
["https://json.schemastore.org/github-workflow"] = ".github/workflows/*",
|
||||
["https://gitlab.com/gitlab-org/gitlab/-/raw/master/app/assets/javascripts/editor/schema/ci.json"] = "*lab-ci.{yaml,yml}",
|
||||
["https://json.schemastore.org/helmfile"] = "helmfile.{yaml,yml}",
|
||||
["https://raw.githubusercontent.com/compose-spec/compose-spec/master/schema/compose-spec.json"] = "docker-compose.{yml,yaml}",
|
||||
["https://goreleaser.com/static/schema.json"] = ".goreleaser.{yml,yaml}",
|
||||
}, require("schemastore").yaml.schemas()),
|
||||
},
|
||||
redhat = {
|
||||
telemetry = {
|
||||
enabled = false,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for server, config in pairs(servers) do
|
||||
lspconfig[server].setup(vim.tbl_extend("force", common, config))
|
||||
end
|
||||
|
||||
-- null ls stuff
|
||||
local null_present, null = pcall(require, "null-ls")
|
||||
|
||||
if not null_present then
|
||||
return
|
||||
end
|
||||
|
||||
local augroup = vim.api.nvim_create_augroup("LspFormatting", {})
|
||||
|
||||
local sources = {
|
||||
-- general
|
||||
null.builtins.formatting.treefmt.with({
|
||||
condition = function(utils)
|
||||
return utils.root_has_file("treefmt.toml")
|
||||
end,
|
||||
}),
|
||||
|
||||
-- nix
|
||||
null.builtins.formatting.nixfmt,
|
||||
null.builtins.diagnostics.statix,
|
||||
null.builtins.diagnostics.deadnix,
|
||||
|
||||
-- go
|
||||
null.builtins.formatting.gofumpt,
|
||||
|
||||
-- webdev
|
||||
null.builtins.formatting.prettier.with({
|
||||
filetypes = {
|
||||
"html",
|
||||
"astro",
|
||||
"vue",
|
||||
},
|
||||
}),
|
||||
|
||||
-- shell
|
||||
null.builtins.formatting.shfmt,
|
||||
|
||||
-- lua
|
||||
null.builtins.formatting.stylua,
|
||||
null.builtins.diagnostics.selene,
|
||||
|
||||
-- docs
|
||||
null.builtins.diagnostics.alex,
|
||||
null.builtins.diagnostics.proselint,
|
||||
}
|
||||
|
||||
null.setup({
|
||||
sources = sources,
|
||||
on_attach = function(client, bufnr)
|
||||
if client.supports_method("textDocument/formatting") then
|
||||
vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr })
|
||||
vim.api.nvim_create_autocmd("BufWritePre", {
|
||||
group = augroup,
|
||||
buffer = bufnr,
|
||||
callback = function()
|
||||
vim.lsp.buf.format({
|
||||
bufnr = bufnr,
|
||||
filter = function(c)
|
||||
return c.name == "null-ls"
|
||||
end,
|
||||
})
|
||||
end,
|
||||
})
|
||||
end
|
||||
end,
|
||||
})
|
||||
|
||||
local toggle_formatters = function()
|
||||
null.toggle({ methods = null.methods.FORMATTING })
|
||||
end
|
||||
|
||||
vim.api.nvim_create_user_command("ToggleFormatters", toggle_formatters, {})
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"crates.nvim",
|
||||
after = function()
|
||||
require("crates").setup({})
|
||||
end,
|
||||
event = "BufRead Cargo.toml",
|
||||
},
|
||||
|
||||
{
|
||||
"go.nvim",
|
||||
ft = {
|
||||
"go",
|
||||
"gomod",
|
||||
"gosum",
|
||||
"gotmpl",
|
||||
"gohtmltmpl",
|
||||
"gotexttmpl",
|
||||
},
|
||||
after = function()
|
||||
-- setup go stuff
|
||||
require("go").setup({
|
||||
disable_defaults = false,
|
||||
icons = {
|
||||
breakpoint = " ",
|
||||
currentpos = " ",
|
||||
},
|
||||
trouble = true,
|
||||
luasnip = true,
|
||||
dap_debug_keymap = false,
|
||||
lsp_cfg = false,
|
||||
lsp_keymaps = false,
|
||||
lsp_inlay_hints = {
|
||||
enable = true,
|
||||
style = "inlay",
|
||||
},
|
||||
})
|
||||
|
||||
require("lspconfig").gopls.setup(require("go.lsp").config())
|
||||
end,
|
||||
},
|
||||
{ "guihua.lua" },
|
||||
}
|
||||
|
|
|
@ -1,47 +0,0 @@
|
|||
local lualine_require = require("lualine_require")
|
||||
lualine_require.require = require
|
||||
|
||||
require("lualine").setup({
|
||||
options = {
|
||||
icons_enabled = true,
|
||||
theme = "auto",
|
||||
disabled_filetypes = { statusline = { "dashboard", "alpha", "ministarter" } },
|
||||
component_separators = { left = "", right = "" },
|
||||
section_separators = { left = "", right = "" },
|
||||
always_divide_middle = true,
|
||||
globalstatus = true,
|
||||
refresh = {
|
||||
statusline = 1000,
|
||||
tabline = 1000,
|
||||
winbar = 1000,
|
||||
},
|
||||
},
|
||||
sections = {
|
||||
lualine_a = { "mode" },
|
||||
lualine_b = { "branch", "diff", "diagnostics" },
|
||||
lualine_c = { "searchcount" },
|
||||
lualine_x = { "filetype" },
|
||||
lualine_y = { "progress" },
|
||||
lualine_z = { "location" },
|
||||
},
|
||||
tabline = {},
|
||||
winbar = {
|
||||
lualine_c = { "navic" },
|
||||
lualine_x = {
|
||||
{
|
||||
function()
|
||||
return " "
|
||||
end,
|
||||
cond = function()
|
||||
local present, navic = pcall(require, "nvim-navic")
|
||||
if not present then
|
||||
return false
|
||||
end
|
||||
return navic.is_available()
|
||||
end,
|
||||
},
|
||||
},
|
||||
},
|
||||
inactive_winbar = {},
|
||||
extensions = {},
|
||||
})
|
78
config/lua/izvim/plugins/markdown.lua
Normal file
78
config/lua/izvim/plugins/markdown.lua
Normal file
|
@ -0,0 +1,78 @@
|
|||
return {
|
||||
{
|
||||
"markview.nvim",
|
||||
lazy = false, -- this plugin does its own lazy loading
|
||||
after = function()
|
||||
local p = require("markview.presets")
|
||||
|
||||
require("markview").setup({
|
||||
-- allows us to use hybrid mode
|
||||
modes = { "n", "i", "no", "c" },
|
||||
hybrid_modes = { "i" },
|
||||
callbacks = {
|
||||
on_enable = function(_, win)
|
||||
vim.wo[win].conceallevel = 2
|
||||
vim.wo[win].concealcursor = "nc"
|
||||
end,
|
||||
},
|
||||
|
||||
headings = p.headings.glow,
|
||||
checkboxes = p.checkboxes.nerd,
|
||||
horizontal_rules = p.horizontal_rules.thin,
|
||||
code_blocks = {
|
||||
pad_amount = 1,
|
||||
},
|
||||
list_items = {
|
||||
-- indent_size = 0,
|
||||
marker_minus = { add_padding = false },
|
||||
marker_plus = { add_padding = false },
|
||||
marker_star = { add_padding = false },
|
||||
marker_dot = { add_padding = false },
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"obsidian.nvim",
|
||||
after = function()
|
||||
require("obsidian").setup({
|
||||
workspaces = {
|
||||
{
|
||||
name = "default",
|
||||
path = "~/Documents/obsidian",
|
||||
},
|
||||
{
|
||||
name = "default",
|
||||
path = "~/documents/obsidian",
|
||||
},
|
||||
{
|
||||
name = "cssuffering",
|
||||
path = "~/dev/cssuffering/notes",
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
-- allow me to paste images really easy
|
||||
{
|
||||
"img-clip.nvim",
|
||||
after = function()
|
||||
require("img-clip").setup({
|
||||
filetypes = {
|
||||
markdown = {
|
||||
template = function()
|
||||
local root_dir = vim.fs.find({ ".obsidian" }, { upward = true })
|
||||
if vim.tbl_isempty(root_dir) then
|
||||
return ""
|
||||
else
|
||||
return "![[$FILE_PATH]]"
|
||||
end
|
||||
end,
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
local p = require("markview.presets")
|
||||
|
||||
require("markview").setup({
|
||||
-- allows us to use hybrid mode
|
||||
modes = { "n", "i", "no", "c" },
|
||||
hybrid_modes = { "i" },
|
||||
callbacks = {
|
||||
on_enable = function(_, win)
|
||||
vim.wo[win].conceallevel = 2
|
||||
vim.wo[win].concealcursor = "nc"
|
||||
end,
|
||||
},
|
||||
|
||||
headings = p.headings.glow,
|
||||
checkboxes = p.checkboxes.nerd,
|
||||
horizontal_rules = p.horizontal_rules.thin,
|
||||
code_blocks = {
|
||||
pad_amount = 1,
|
||||
},
|
||||
list_items = {
|
||||
-- indent_size = 0,
|
||||
marker_minus = { add_padding = false },
|
||||
marker_plus = { add_padding = false },
|
||||
marker_star = { add_padding = false },
|
||||
marker_dot = { add_padding = false },
|
||||
},
|
||||
})
|
|
@ -1,42 +0,0 @@
|
|||
local ctp_present, ctp_pallets = pcall(require, "catppuccin.palettes")
|
||||
|
||||
if ctp_present then
|
||||
local C = ctp_pallets.get_palette()
|
||||
|
||||
local justfile = {
|
||||
icon = "",
|
||||
name = "Justfile",
|
||||
color = C.peach,
|
||||
}
|
||||
|
||||
require("nvim-web-devicons").setup({
|
||||
override_by_filename = {
|
||||
[".ecrc"] = {
|
||||
icon = "",
|
||||
name = "EditorConfigChecker",
|
||||
color = C.green,
|
||||
},
|
||||
[".envrc"] = {
|
||||
icon = "",
|
||||
name = "envrc",
|
||||
color = C.yellow,
|
||||
},
|
||||
[".editorconfig"] = {
|
||||
icon = "",
|
||||
name = "EditorConfig",
|
||||
color = C.green,
|
||||
},
|
||||
[".luacheckrc"] = {
|
||||
icon = "",
|
||||
name = "LuacheckRC",
|
||||
color = C.blue,
|
||||
},
|
||||
[".Justfile"] = justfile,
|
||||
[".justfile"] = justfile,
|
||||
["Justfile"] = justfile,
|
||||
["justfile"] = justfile,
|
||||
},
|
||||
})
|
||||
else
|
||||
require("nvim-web-devicons").setup()
|
||||
end
|
|
@ -1,16 +0,0 @@
|
|||
require("obsidian").setup({
|
||||
workspaces = {
|
||||
{
|
||||
name = "default",
|
||||
path = "~/Documents/obsidian",
|
||||
},
|
||||
{
|
||||
name = "default",
|
||||
path = "~/documents/obsidian",
|
||||
},
|
||||
{
|
||||
name = "cssuffering",
|
||||
path = "~/dev/cssuffering/notes",
|
||||
},
|
||||
},
|
||||
})
|
|
@ -1,21 +1,29 @@
|
|||
-- so quircky but we need to load this before telescope
|
||||
local exts = {
|
||||
"project.nvim",
|
||||
"ui-select.nvim",
|
||||
"fzf-native.nvim",
|
||||
}
|
||||
return {
|
||||
-- we set these to lazy as we use another plugin to load them
|
||||
{ "telescope-project.nvim", lazy = false },
|
||||
{ "telescope-fzf-native.nvim", lazy = false },
|
||||
{ "telescope-ui-select.nvim", lazy = false },
|
||||
|
||||
for _, ext in ipairs(exts) do
|
||||
vim.api.nvim_cmd({
|
||||
cmd = "packadd",
|
||||
args = { "telescope-" .. ext },
|
||||
}, {})
|
||||
end
|
||||
{
|
||||
"telescope.nvim",
|
||||
event = "DeferredUIEnter",
|
||||
after = function()
|
||||
-- so quircky but we need to load this before telescope
|
||||
local exts = {
|
||||
"project",
|
||||
"ui-select",
|
||||
"fzf-native",
|
||||
}
|
||||
|
||||
local bc = vim.g.bc
|
||||
-- trigger the load of all the extensions we use
|
||||
for _, ext in ipairs(exts) do
|
||||
require("lz.n").trigger_load({ "telescope-" .. ext .. ".nvim" })
|
||||
end
|
||||
|
||||
local no_preview = function(opts)
|
||||
local defaults = require("telescope.themes").get_dropdown({
|
||||
local bc = vim.g.bc
|
||||
|
||||
local no_preview = function(opts)
|
||||
local defaults = require("telescope.themes").get_dropdown({
|
||||
-- stylua: ignore
|
||||
borderchars = {
|
||||
{ bc.horiz, bc.vert, bc.horiz, bc.vert, bc.topleft, bc.topright, bc.botright, bc.botleft },
|
||||
|
@ -23,99 +31,102 @@ local no_preview = function(opts)
|
|||
results = { bc.horiz, bc.vert, bc.horiz, bc.vert, bc.vertright, bc.vertleft, bc.botright, bc.botleft },
|
||||
preview = { bc.horiz, bc.vert, bc.horiz, bc.vert, bc.topleft, bc.topright, bc.botright, bc.botleft },
|
||||
},
|
||||
width = 0.8,
|
||||
previewer = false,
|
||||
prompt_title = false,
|
||||
results_title = false,
|
||||
})
|
||||
return vim.tbl_deep_extend("keep", opts or {}, defaults)
|
||||
end
|
||||
width = 0.8,
|
||||
previewer = false,
|
||||
prompt_title = false,
|
||||
results_title = false,
|
||||
})
|
||||
return vim.tbl_deep_extend("keep", opts or {}, defaults)
|
||||
end
|
||||
|
||||
local project_actions = require("telescope._extensions.project.actions")
|
||||
local telescope = require("telescope")
|
||||
local project_actions = require("telescope._extensions.project.actions")
|
||||
local telescope = require("telescope")
|
||||
|
||||
telescope.load_extension("fzf")
|
||||
telescope.load_extension("project")
|
||||
telescope.load_extension("ui-select")
|
||||
telescope.load_extension("fzf")
|
||||
telescope.load_extension("project")
|
||||
telescope.load_extension("ui-select")
|
||||
|
||||
telescope.setup({
|
||||
defaults = {
|
||||
prompt_prefix = " ",
|
||||
selection_caret = " ",
|
||||
multi_icon = "│",
|
||||
file_ignore_patterns = {
|
||||
"%.npz",
|
||||
"%.pyc",
|
||||
"%.luac",
|
||||
"%.ipynb",
|
||||
"vendor/*",
|
||||
"%.lock",
|
||||
"__pycache__/*",
|
||||
"%.sqlite3",
|
||||
"%.ipynb",
|
||||
"node_modules/*",
|
||||
"%.min.js",
|
||||
"%.jpg",
|
||||
"%.jpeg",
|
||||
"%.png",
|
||||
"%.age",
|
||||
"%.svg",
|
||||
"%.otf",
|
||||
"%.ttf",
|
||||
"\\.git/",
|
||||
"%.webp",
|
||||
"\\.dart_tool/",
|
||||
"\\.gradle/",
|
||||
"\\.idea/",
|
||||
"\\.settings/",
|
||||
"\\.vscode/",
|
||||
"__pycache__/",
|
||||
"build/",
|
||||
"env/",
|
||||
"gradle/",
|
||||
"node_modules/",
|
||||
"target/",
|
||||
"%.pdb",
|
||||
"%.dll",
|
||||
"%.class",
|
||||
"%.exe",
|
||||
"%.so",
|
||||
"%.cache",
|
||||
"%.ico",
|
||||
"%.pdf",
|
||||
"%.dylib",
|
||||
"%.jar",
|
||||
"%.docx",
|
||||
"%.met",
|
||||
"smalljre_*/*",
|
||||
"\\.vale/",
|
||||
"_sources/",
|
||||
"tmp/",
|
||||
},
|
||||
borderchars = { bc.horiz, bc.vert, bc.horiz, bc.vert, bc.topleft, bc.topright, bc.botright, bc.botleft },
|
||||
telescope.setup({
|
||||
defaults = {
|
||||
prompt_prefix = " ",
|
||||
selection_caret = " ",
|
||||
multi_icon = "│",
|
||||
file_ignore_patterns = {
|
||||
"%.npz",
|
||||
"%.pyc",
|
||||
"%.luac",
|
||||
"%.ipynb",
|
||||
"vendor/*",
|
||||
"%.lock",
|
||||
"__pycache__/*",
|
||||
"%.sqlite3",
|
||||
"%.ipynb",
|
||||
"node_modules/*",
|
||||
"%.min.js",
|
||||
"%.jpg",
|
||||
"%.jpeg",
|
||||
"%.png",
|
||||
"%.age",
|
||||
"%.svg",
|
||||
"%.otf",
|
||||
"%.ttf",
|
||||
"\\.git/",
|
||||
"%.webp",
|
||||
"\\.dart_tool/",
|
||||
"\\.gradle/",
|
||||
"\\.idea/",
|
||||
"\\.settings/",
|
||||
"\\.vscode/",
|
||||
"__pycache__/",
|
||||
"build/",
|
||||
"env/",
|
||||
"gradle/",
|
||||
"node_modules/",
|
||||
"target/",
|
||||
"%.pdb",
|
||||
"%.dll",
|
||||
"%.class",
|
||||
"%.exe",
|
||||
"%.so",
|
||||
"%.cache",
|
||||
"%.ico",
|
||||
"%.pdf",
|
||||
"%.dylib",
|
||||
"%.jar",
|
||||
"%.docx",
|
||||
"%.met",
|
||||
"smalljre_*/*",
|
||||
"\\.vale/",
|
||||
"_sources/",
|
||||
"tmp/",
|
||||
},
|
||||
borderchars = { bc.horiz, bc.vert, bc.horiz, bc.vert, bc.topleft, bc.topright, bc.botright, bc.botleft },
|
||||
},
|
||||
pickers = {
|
||||
find_files = no_preview(),
|
||||
live_grep = no_preview({
|
||||
previewer = true,
|
||||
}),
|
||||
load_session = no_preview(),
|
||||
},
|
||||
extensions = {
|
||||
["ui-select"] = no_preview(),
|
||||
fzf = {
|
||||
fuzzy = true,
|
||||
override_generic_sorter = true,
|
||||
override_file_sorter = true,
|
||||
case_mode = "smart_case",
|
||||
},
|
||||
project = {
|
||||
search_by = { "path", "title" },
|
||||
hidden_files = true, -- default: false
|
||||
sync_with_nvim_tree = true, -- default false
|
||||
on_project_selected = function(prompt_bufnr)
|
||||
project_actions.change_working_directory(prompt_bufnr, false)
|
||||
end,
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
pickers = {
|
||||
find_files = no_preview(),
|
||||
live_grep = no_preview({
|
||||
previewer = true,
|
||||
}),
|
||||
load_session = no_preview(),
|
||||
},
|
||||
extensions = {
|
||||
["ui-select"] = no_preview(),
|
||||
fzf = {
|
||||
fuzzy = true,
|
||||
override_generic_sorter = true,
|
||||
override_file_sorter = true,
|
||||
case_mode = "smart_case",
|
||||
},
|
||||
project = {
|
||||
search_by = { "path", "title" },
|
||||
hidden_files = true, -- default: false
|
||||
sync_with_nvim_tree = true, -- default false
|
||||
on_project_selected = function(prompt_bufnr)
|
||||
project_actions.change_working_directory(prompt_bufnr, false)
|
||||
end,
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
|
|
|
@ -1,28 +1,35 @@
|
|||
---@diagnostic disable: missing-fields
|
||||
require("nvim-treesitter.configs").setup({
|
||||
auto_install = false,
|
||||
indent = {
|
||||
enable = true,
|
||||
},
|
||||
highlight = {
|
||||
enable = true,
|
||||
additional_vim_regex_highlighting = false,
|
||||
},
|
||||
rainbow = {
|
||||
enable = true,
|
||||
extended_mode = true,
|
||||
max_file_lines = 8192,
|
||||
},
|
||||
})
|
||||
return {
|
||||
{
|
||||
"nvim-treesitter",
|
||||
after = function()
|
||||
---@diagnostic disable: missing-fields
|
||||
require("nvim-treesitter.configs").setup({
|
||||
auto_install = false,
|
||||
indent = {
|
||||
enable = true,
|
||||
},
|
||||
highlight = {
|
||||
enable = true,
|
||||
additional_vim_regex_highlighting = false,
|
||||
},
|
||||
rainbow = {
|
||||
enable = true,
|
||||
extended_mode = true,
|
||||
max_file_lines = 8192,
|
||||
},
|
||||
})
|
||||
|
||||
vim.o.foldmethod = "expr"
|
||||
vim.o.foldexpr = "nvim_treesitter#foldexpr()"
|
||||
vim.o.foldenable = false
|
||||
vim.o.foldmethod = "expr"
|
||||
vim.o.foldexpr = "nvim_treesitter#foldexpr()"
|
||||
vim.o.foldenable = false
|
||||
|
||||
-- remove treesitter commands
|
||||
vim.api.nvim_del_user_command("TSUpdate")
|
||||
vim.api.nvim_del_user_command("TSUpdateSync")
|
||||
vim.api.nvim_del_user_command("TSInstall")
|
||||
vim.api.nvim_del_user_command("TSInstallSync")
|
||||
vim.api.nvim_del_user_command("TSInstallFromGrammar")
|
||||
vim.api.nvim_del_user_command("TSUninstall")
|
||||
-- remove treesitter commands
|
||||
vim.api.nvim_del_user_command("TSUpdate")
|
||||
vim.api.nvim_del_user_command("TSUpdateSync")
|
||||
vim.api.nvim_del_user_command("TSInstall")
|
||||
vim.api.nvim_del_user_command("TSInstallSync")
|
||||
vim.api.nvim_del_user_command("TSInstallFromGrammar")
|
||||
vim.api.nvim_del_user_command("TSUninstall")
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
|
@ -1,14 +1,21 @@
|
|||
local trouble = require("trouble")
|
||||
trouble.setup({})
|
||||
return {
|
||||
{
|
||||
"trouble.nvim",
|
||||
after = function()
|
||||
local trouble = require("trouble")
|
||||
trouble.setup({})
|
||||
|
||||
vim.keymap.set("n", "<leader>tt", function()
|
||||
trouble.toggle()
|
||||
end, { noremap = true, silent = true })
|
||||
vim.keymap.set("n", "<leader>tt", function()
|
||||
trouble.toggle()
|
||||
end, { noremap = true, silent = true })
|
||||
|
||||
vim.keymap.set("n", "[d", function()
|
||||
trouble.next({ skip_groups = true, jump = true })
|
||||
end, { noremap = true, silent = true })
|
||||
vim.keymap.set("n", "[d", function()
|
||||
trouble.next({ skip_groups = true, jump = true })
|
||||
end, { noremap = true, silent = true })
|
||||
|
||||
vim.keymap.set("n", "]d", function()
|
||||
trouble.previous({ skip_groups = true, jump = true })
|
||||
end, { noremap = true, silent = true })
|
||||
vim.keymap.set("n", "]d", function()
|
||||
trouble.previous({ skip_groups = true, jump = true })
|
||||
end, { noremap = true, silent = true })
|
||||
end,
|
||||
},
|
||||
}
|
||||
|
|
189
config/lua/izvim/plugins/ui.lua
Normal file
189
config/lua/izvim/plugins/ui.lua
Normal file
|
@ -0,0 +1,189 @@
|
|||
return {
|
||||
{
|
||||
"lualine.nvim",
|
||||
after = function()
|
||||
local lualine_require = require("lualine_require")
|
||||
lualine_require.require = require
|
||||
|
||||
require("lualine").setup({
|
||||
options = {
|
||||
icons_enabled = true,
|
||||
theme = "auto",
|
||||
disabled_filetypes = { statusline = { "dashboard", "alpha", "ministarter" } },
|
||||
component_separators = { left = "", right = "" },
|
||||
section_separators = { left = "", right = "" },
|
||||
always_divide_middle = true,
|
||||
globalstatus = true,
|
||||
refresh = {
|
||||
statusline = 1000,
|
||||
tabline = 1000,
|
||||
winbar = 1000,
|
||||
},
|
||||
},
|
||||
sections = {
|
||||
lualine_a = { "mode" },
|
||||
lualine_b = { "branch", "diff", "diagnostics" },
|
||||
lualine_c = { "searchcount" },
|
||||
lualine_x = { "filetype" },
|
||||
lualine_y = { "progress" },
|
||||
lualine_z = { "location" },
|
||||
},
|
||||
tabline = {},
|
||||
winbar = {
|
||||
lualine_c = { "navic" },
|
||||
lualine_x = {
|
||||
{
|
||||
function()
|
||||
return " "
|
||||
end,
|
||||
cond = function()
|
||||
local present, navic = pcall(require, "nvim-navic")
|
||||
if not present then
|
||||
return false
|
||||
end
|
||||
return navic.is_available()
|
||||
end,
|
||||
},
|
||||
},
|
||||
},
|
||||
inactive_winbar = {},
|
||||
extensions = {},
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"fidget.nvim",
|
||||
after = function()
|
||||
require("fidget").setup({
|
||||
display = { done_icon = "" },
|
||||
notification = {
|
||||
override_vim_notify = true,
|
||||
window = { winblend = 0 },
|
||||
},
|
||||
progress = {
|
||||
ignore = {
|
||||
"copilot",
|
||||
"null-ls",
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"indent-blankline.nvim",
|
||||
event = "DeferredUIEnter",
|
||||
after = function()
|
||||
require("ibl").setup({
|
||||
scope = { enabled = false },
|
||||
exclude = {
|
||||
filetypes = {
|
||||
"alpha",
|
||||
"fugitive",
|
||||
"help",
|
||||
"lazy",
|
||||
"NvimTree",
|
||||
"ToggleTerm",
|
||||
"LazyGit",
|
||||
"TelescopePrompt",
|
||||
"prompt",
|
||||
"code-action-menu-menu",
|
||||
"code-action-menu-warning-message",
|
||||
"Trouble",
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"nvim-web-devicons",
|
||||
priority = 100,
|
||||
after = function()
|
||||
local ctp_present, ctp_pallets = pcall(require, "catppuccin.palettes")
|
||||
|
||||
if ctp_present then
|
||||
local C = ctp_pallets.get_palette()
|
||||
|
||||
local justfile = {
|
||||
icon = "",
|
||||
name = "Justfile",
|
||||
color = C.peach,
|
||||
}
|
||||
|
||||
require("nvim-web-devicons").setup({
|
||||
override_by_filename = {
|
||||
[".ecrc"] = {
|
||||
icon = "",
|
||||
name = "EditorConfigChecker",
|
||||
color = C.green,
|
||||
},
|
||||
[".envrc"] = {
|
||||
icon = "",
|
||||
name = "envrc",
|
||||
color = C.yellow,
|
||||
},
|
||||
[".editorconfig"] = {
|
||||
icon = "",
|
||||
name = "EditorConfig",
|
||||
color = C.green,
|
||||
},
|
||||
[".luacheckrc"] = {
|
||||
icon = "",
|
||||
name = "LuacheckRC",
|
||||
color = C.blue,
|
||||
},
|
||||
[".Justfile"] = justfile,
|
||||
[".justfile"] = justfile,
|
||||
["Justfile"] = justfile,
|
||||
["justfile"] = justfile,
|
||||
},
|
||||
})
|
||||
else
|
||||
require("nvim-web-devicons").setup()
|
||||
end
|
||||
end,
|
||||
},
|
||||
|
||||
{
|
||||
"nvim-colorizer.lua",
|
||||
after = function()
|
||||
require("colorizer").setup({
|
||||
user_default_options = {
|
||||
RGB = true,
|
||||
RRGGBB = true,
|
||||
names = false,
|
||||
RRGGBBAA = true,
|
||||
AARRGGBB = false,
|
||||
rgb_fn = false,
|
||||
hsl_fn = false,
|
||||
css = false,
|
||||
css_fn = false,
|
||||
mode = "background",
|
||||
tailwind = "both",
|
||||
sass = {
|
||||
enable = true,
|
||||
},
|
||||
virtualtext = " ",
|
||||
},
|
||||
|
||||
buftypes = {
|
||||
"*",
|
||||
"!dashboard",
|
||||
"!lazy",
|
||||
"!popup",
|
||||
"!prompt",
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
|
||||
-- highlight TODO, FIXME, etc.
|
||||
{
|
||||
"todo-comments.nvim",
|
||||
after = function()
|
||||
require("todo-comments").setup()
|
||||
end,
|
||||
},
|
||||
}
|
|
@ -104,6 +104,7 @@ src.git = "https://github.com/nvim-lualine/lualine.nvim"
|
|||
[luasnip]
|
||||
fetch.github = "L3MON4D3/LuaSnip"
|
||||
src.git = "https://github.com/L3MON4D3/LuaSnip"
|
||||
passthru.as = "luasnip"
|
||||
|
||||
[lz-n]
|
||||
fetch.github = "nvim-neorocks/lz.n"
|
||||
|
|
|
@ -1 +1,4 @@
|
|||
std="vim"
|
||||
|
||||
[rules]
|
||||
mixed_table = "allow"
|
||||
|
|
Loading…
Add table
Reference in a new issue