diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 78f465c..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-.DS_Store
-lazy-lock.json
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..261eeb9
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,201 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product 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 NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of 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 reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/README.md b/README.md
index 736fee0..185280b 100644
--- a/README.md
+++ b/README.md
@@ -1,72 +1,4 @@
-
RUA
+# 💤 LazyVim
-Minimal neovim configuration
-
-## Showcase
-
-
-
-
-
-## Plugins
-
-- alpha-nvim
-- cmp-buffer
-- cmp-git
-- cmp-nvim-lsp
-- cmp-path
-- cmp_luasnip
-- conform.nvim
-- dressing.nvim
-- fidget.nvim
-- friendly-snippets
-- gitsigns.nvim
-- indent-blankline.nvim
-- lazy.nvim
-- lspkind.nvim
-- lualine.nvim
-- LuaSnip
-- markview.nvim
-- mason-lspconfig.nvim
-- mason.nvim
-- nvim-autopairs
-- nvim-cmp
-- nvim-colorizer.lua
-- nvim-lspconfig
-- nvim-surround
-- nvim-treesitter
-- nvim-ts-autotag
-- nvim-web-devicons
-- oil.nvim
-- plenary.nvim
-- supermaven-nvim
-- tailwindcss-colorizer-cmp.nvim
-- telescope-fzf-native.nvim
-- telescope-ui-select.nvim
-- telescope.nvim
-- todo-comments.nvim
-- trouble.nvim
-- ts-comments.nvim
-- vim-illuminate
-- which-key.nvim
-- auto-session
-- codesnap.nvim
-- crates.nvim
-- diffview.nvim
-- ex-colors.nvim
-- hop.nvim
-- lackluster.nvim
-- markdown-preview.nvim
-- neogit
-- nvim-dap
-- nvim-dap-go
-- nvim-dap-ui
-- nvim-dap-virtual-text
-- nvim-lsp-file-operations
-- nvim-nio
-- nvim-spectre
-- nvim-tree.lua
-- rustaceanvim
-- schemastore.nvim
-- toggleterm.nvim
-- vim-visual-multi
+A starter template for [LazyVim](https://github.com/LazyVim/LazyVim).
+Refer to the [documentation](https://lazyvim.github.io/installation) to get started.
diff --git a/colors/ex-catppuccin-macchiato.lua b/colors/ex-catppuccin-macchiato.lua
deleted file mode 100644
index 3c34826..0000000
--- a/colors/ex-catppuccin-macchiato.lua
+++ /dev/null
@@ -1,220 +0,0 @@
--- This file is generated by ex-colors. The credit goes to the authors and contributors of the original colorscheme catppuccin-macchiato.
-vim.api.nvim_set_var("colors_name", "ex-catppuccin-macchiato")
-vim.api.nvim_set_hl(0, "@attribute", { link = "Constant" })
-vim.api.nvim_set_hl(0, "@comment.documentation", { link = "Comment" })
-vim.api.nvim_set_hl(0, "@comment.error", { bg = 15566743, fg = 2369339 })
-vim.api.nvim_set_hl(0, "@comment.note", { bg = 9088501, fg = 2369339 })
-vim.api.nvim_set_hl(0, "@comment.todo", { bg = 15779527, fg = 2369339 })
-vim.api.nvim_set_hl(0, "@comment.warning", { bg = 15652000, fg = 2369339 })
-vim.api.nvim_set_hl(0, "@constant.builtin", { fg = 16099712 })
-vim.api.nvim_set_hl(0, "@constant.macro", { link = "Macro" })
-vim.api.nvim_set_hl(0, "@constructor", { fg = 8242405 })
-vim.api.nvim_set_hl(0, "@diff.delta", { link = "diffChanged" })
-vim.api.nvim_set_hl(0, "@diff.minus", { link = "diffRemoved" })
-vim.api.nvim_set_hl(0, "@diff.plus", { link = "diffAdded" })
-vim.api.nvim_set_hl(0, "@function.builtin", { fg = 16099712 })
-vim.api.nvim_set_hl(0, "@function.call", { link = "Function" })
-vim.api.nvim_set_hl(0, "@function.macro", { fg = 9164235 })
-vim.api.nvim_set_hl(0, "@function.method", { link = "Function" })
-vim.api.nvim_set_hl(0, "@function.method.call", { link = "Function" })
-vim.api.nvim_set_hl(0, "@keyword.conditional", { link = "Conditional" })
-vim.api.nvim_set_hl(0, "@keyword.conditional.ternary", { link = "Operator" })
-vim.api.nvim_set_hl(0, "@keyword.coroutine", { link = "Keyword" })
-vim.api.nvim_set_hl(0, "@keyword.debug", { link = "Exception" })
-vim.api.nvim_set_hl(0, "@keyword.directive", { link = "PreProc" })
-vim.api.nvim_set_hl(0, "@keyword.directive.define", { link = "Define" })
-vim.api.nvim_set_hl(0, "@keyword.exception", { link = "Exception" })
-vim.api.nvim_set_hl(0, "@keyword.function", { fg = 13017335 })
-vim.api.nvim_set_hl(0, "@keyword.import", { link = "Include" })
-vim.api.nvim_set_hl(0, "@keyword.modifier", { link = "Keyword" })
-vim.api.nvim_set_hl(0, "@keyword.operator", { link = "Operator" })
-vim.api.nvim_set_hl(0, "@keyword.repeat", { link = "Repeat" })
-vim.api.nvim_set_hl(0, "@keyword.return", { fg = 13017335 })
-vim.api.nvim_set_hl(0, "@keyword.type", { link = "Keyword" })
-vim.api.nvim_set_hl(0, "@lsp.type.interface", { fg = 15779527 })
-vim.api.nvim_set_hl(0, "@markup.heading", { bold = true, cterm = { bold = true }, fg = 9088501 })
-vim.api.nvim_set_hl(0, "@markup.italic", { cterm = { italic = true }, fg = 15636897, italic = true })
-vim.api.nvim_set_hl(0, "@markup.link", { link = "Tag" })
-vim.api.nvim_set_hl(0, "@markup.link.label", { link = "Label" })
-vim.api.nvim_set_hl(
- 0,
- "@markup.link.url",
- { cterm = { italic = true, underline = true }, fg = 16047063, italic = true, underline = true }
-)
-vim.api.nvim_set_hl(0, "@markup.list", { link = "Special" })
-vim.api.nvim_set_hl(0, "@markup.list.checked", { fg = 10934934 })
-vim.api.nvim_set_hl(0, "@markup.list.unchecked", { fg = 8423331 })
-vim.api.nvim_set_hl(0, "@markup.math", { fg = 9088501 })
-vim.api.nvim_set_hl(0, "@markup.quote", { bold = true, cterm = { bold = true }, fg = 15636897 })
-vim.api.nvim_set_hl(0, "@markup.raw", { fg = 9164235 })
-vim.api.nvim_set_hl(
- 0,
- "@markup.strikethrough",
- { cterm = { strikethrough = true }, fg = 13292534, strikethrough = true }
-)
-vim.api.nvim_set_hl(0, "@markup.strong", { bold = true, cterm = { bold = true }, fg = 15636897 })
-vim.api.nvim_set_hl(0, "@markup.underline", { link = "Underlined" })
-vim.api.nvim_set_hl(0, "@module", { cterm = { italic = true }, fg = 12041721, italic = true })
-vim.api.nvim_set_hl(0, "@property", { fg = 12041721 })
-vim.api.nvim_set_hl(0, "@punctuation.bracket", { fg = 9673400 })
-vim.api.nvim_set_hl(0, "@punctuation.delimiter", { link = "Delimiter" })
-vim.api.nvim_set_hl(0, "@string.documentation", { fg = 9164235 })
-vim.api.nvim_set_hl(0, "@string.escape", { fg = 16104935 })
-vim.api.nvim_set_hl(0, "@string.regexp", { fg = 16099712 })
-vim.api.nvim_set_hl(0, "@string.special", { link = "Special" })
-vim.api.nvim_set_hl(0, "@string.special.path", { link = "Special" })
-vim.api.nvim_set_hl(0, "@string.special.symbol", { fg = 15779527 })
-vim.api.nvim_set_hl(
- 0,
- "@string.special.url",
- { cterm = { italic = true, underline = true }, fg = 16047063, italic = true, underline = true }
-)
-vim.api.nvim_set_hl(0, "@tag", { fg = 13017335 })
-vim.api.nvim_set_hl(0, "@tag.attribute", { cterm = { italic = true }, fg = 9164235, italic = true })
-vim.api.nvim_set_hl(0, "@tag.delimiter", { fg = 9557988 })
-vim.api.nvim_set_hl(0, "@type.builtin", { fg = 15652000 })
-vim.api.nvim_set_hl(0, "@type.definition", { link = "Type" })
-vim.api.nvim_set_hl(0, "@variable", { fg = 13292534 })
-vim.api.nvim_set_hl(0, "@variable.builtin", { fg = 15566743 })
-vim.api.nvim_set_hl(0, "@variable.member", { fg = 12041721 })
-vim.api.nvim_set_hl(0, "@variable.parameter", { fg = 15636897 })
-vim.api.nvim_set_hl(0, "Boolean", { fg = 16099712 })
-vim.api.nvim_set_hl(0, "Character", { fg = 9164235 })
-vim.api.nvim_set_hl(0, "ColorColumn", { bg = 3553872 })
-vim.api.nvim_set_hl(0, "Comment", { cterm = { italic = true }, fg = 9673400, italic = true })
-vim.api.nvim_set_hl(0, "Conceal", { fg = 8423331 })
-vim.api.nvim_set_hl(0, "Conditional", { cterm = { italic = true }, fg = 13017335, italic = true })
-vim.api.nvim_set_hl(0, "Constant", { fg = 16099712 })
-vim.api.nvim_set_hl(0, "CurSearch", { bg = 15566743, fg = 1974321 })
-vim.api.nvim_set_hl(0, "Cursor", { bg = 13292534, fg = 2369339 })
-vim.api.nvim_set_hl(0, "CursorColumn", { bg = 1974321 })
-vim.api.nvim_set_hl(0, "CursorIM", { bg = 13292534, fg = 2369339 })
-vim.api.nvim_set_hl(0, "CursorLine", { bg = 3158856 })
-vim.api.nvim_set_hl(0, "CursorLineNr", { fg = 12041721 })
-vim.api.nvim_set_hl(0, "Delimiter", { fg = 9673400 })
-vim.api.nvim_set_hl(0, "DiagnosticError", { cterm = { italic = true }, fg = 15566743, italic = true })
-vim.api.nvim_set_hl(0, "DiagnosticFloatingError", { fg = 15566743 })
-vim.api.nvim_set_hl(0, "DiagnosticFloatingHint", { fg = 9164235 })
-vim.api.nvim_set_hl(0, "DiagnosticFloatingInfo", { fg = 9557988 })
-vim.api.nvim_set_hl(0, "DiagnosticFloatingOk", { fg = 10934934 })
-vim.api.nvim_set_hl(0, "DiagnosticFloatingWarn", { fg = 15652000 })
-vim.api.nvim_set_hl(0, "DiagnosticHint", { cterm = { italic = true }, fg = 9164235, italic = true })
-vim.api.nvim_set_hl(0, "DiagnosticInfo", { cterm = { italic = true }, fg = 9557988, italic = true })
-vim.api.nvim_set_hl(0, "DiagnosticOk", { cterm = { italic = true }, fg = 10934934, italic = true })
-vim.api.nvim_set_hl(0, "DiagnosticSignError", { fg = 15566743 })
-vim.api.nvim_set_hl(0, "DiagnosticSignHint", { fg = 9164235 })
-vim.api.nvim_set_hl(0, "DiagnosticSignInfo", { fg = 9557988 })
-vim.api.nvim_set_hl(0, "DiagnosticSignOk", { fg = 10934934 })
-vim.api.nvim_set_hl(0, "DiagnosticSignWarn", { fg = 15652000 })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineError", { cterm = { underline = true }, sp = 15566743, underline = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineHint", { cterm = { underline = true }, sp = 9164235, underline = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineInfo", { cterm = { underline = true }, sp = 9557988, underline = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineOk", { cterm = { underline = true }, sp = 10934934, underline = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineWarn", { cterm = { underline = true }, sp = 15652000, underline = true })
-vim.api.nvim_set_hl(0, "DiagnosticVirtualTextError", { cterm = { italic = true }, fg = 15566743, italic = true })
-vim.api.nvim_set_hl(0, "DiagnosticVirtualTextHint", { cterm = { italic = true }, fg = 9164235, italic = true })
-vim.api.nvim_set_hl(0, "DiagnosticVirtualTextInfo", { cterm = { italic = true }, fg = 9557988, italic = true })
-vim.api.nvim_set_hl(0, "DiagnosticVirtualTextOk", { cterm = { italic = true }, fg = 10934934, italic = true })
-vim.api.nvim_set_hl(0, "DiagnosticVirtualTextWarn", { cterm = { italic = true }, fg = 15652000, italic = true })
-vim.api.nvim_set_hl(0, "DiagnosticWarn", { cterm = { italic = true }, fg = 15652000, italic = true })
-vim.api.nvim_set_hl(0, "DiffAdd", { bg = 3884875 })
-vim.api.nvim_set_hl(0, "DiffChange", { bg = 2830408 })
-vim.api.nvim_set_hl(0, "DiffDelete", { bg = 4733004 })
-vim.api.nvim_set_hl(0, "DiffText", { bg = 4411251 })
-vim.api.nvim_set_hl(0, "Directory", { fg = 9088501 })
-vim.api.nvim_set_hl(0, "EndOfBuffer", { fg = 2369339 })
-vim.api.nvim_set_hl(0, "Error", { fg = 15566743 })
-vim.api.nvim_set_hl(
- 0,
- "ErrorMsg",
- { bold = true, cterm = { bold = true, italic = true }, fg = 15566743, italic = true }
-)
-vim.api.nvim_set_hl(0, "Exception", { fg = 13017335 })
-vim.api.nvim_set_hl(0, "FloatBorder", { fg = 9088501 })
-vim.api.nvim_set_hl(0, "FloatTitle", { fg = 10857932 })
-vim.api.nvim_set_hl(0, "FoldColumn", { fg = 7238542 })
-vim.api.nvim_set_hl(0, "Folded", { fg = 9088501 })
-vim.api.nvim_set_hl(0, "Function", { fg = 9088501 })
-vim.api.nvim_set_hl(0, "Identifier", { fg = 15779527 })
-vim.api.nvim_set_hl(0, "IncSearch", { bg = 8832467, fg = 1974321 })
-vim.api.nvim_set_hl(0, "Include", { fg = 13017335 })
-vim.api.nvim_set_hl(0, "Keyword", { fg = 13017335 })
-vim.api.nvim_set_hl(0, "Label", { fg = 8242405 })
-vim.api.nvim_set_hl(0, "LineNr", { fg = 4803941 })
-vim.api.nvim_set_hl(0, "LspCodeLens", { fg = 7238542 })
-vim.api.nvim_set_hl(0, "LspInlayHint", { fg = 7238542 })
-vim.api.nvim_set_hl(0, "LspReferenceRead", { bg = 4803941 })
-vim.api.nvim_set_hl(0, "LspReferenceText", { bg = 4803941 })
-vim.api.nvim_set_hl(0, "LspReferenceWrite", { bg = 4803941 })
-vim.api.nvim_set_hl(0, "LspSignatureActiveParameter", { bg = 3553872, bold = true, cterm = { bold = true } })
-vim.api.nvim_set_hl(0, "Macro", { fg = 13017335 })
-vim.api.nvim_set_hl(0, "MatchParen", { bg = 4803941, bold = true, cterm = { bold = true }, fg = 16099712 })
-vim.api.nvim_set_hl(0, "ModeMsg", { bold = true, cterm = { bold = true }, fg = 13292534 })
-vim.api.nvim_set_hl(0, "MoreMsg", { fg = 9088501 })
-vim.api.nvim_set_hl(0, "NonText", { fg = 7238542 })
-vim.api.nvim_set_hl(0, "Normal", { fg = 13292534 })
-vim.api.nvim_set_hl(0, "NormalFloat", { fg = 13292534 })
-vim.api.nvim_set_hl(0, "NormalNC", { fg = 13292534 })
-vim.api.nvim_set_hl(0, "Number", { fg = 16099712 })
-vim.api.nvim_set_hl(0, "Operator", { fg = 9557988 })
-vim.api.nvim_set_hl(0, "Pmenu", { bg = 3158856, fg = 9673400 })
-vim.api.nvim_set_hl(0, "PmenuSbar", { bg = 4803941 })
-vim.api.nvim_set_hl(0, "PmenuSel", { bg = 4803941, bold = true, cterm = { bold = true } })
-vim.api.nvim_set_hl(0, "PmenuThumb", { bg = 7238542 })
-vim.api.nvim_set_hl(0, "PreProc", { fg = 16104935 })
-vim.api.nvim_set_hl(0, "Question", { fg = 9088501 })
-vim.api.nvim_set_hl(0, "QuickFixLine", { bg = 4803941, bold = true, cterm = { bold = true } })
-vim.api.nvim_set_hl(0, "Repeat", { fg = 13017335 })
-vim.api.nvim_set_hl(0, "Search", { bg = 4545646, fg = 13292534 })
-vim.api.nvim_set_hl(0, "SignColumn", { fg = 4803941 })
-vim.api.nvim_set_hl(0, "Special", { fg = 16104935 })
-vim.api.nvim_set_hl(0, "SpecialKey", { link = "NonText" })
-vim.api.nvim_set_hl(0, "SpellBad", { cterm = { undercurl = true }, sp = 15566743, undercurl = true })
-vim.api.nvim_set_hl(0, "SpellCap", { cterm = { undercurl = true }, sp = 15652000, undercurl = true })
-vim.api.nvim_set_hl(0, "SpellLocal", { cterm = { undercurl = true }, sp = 9088501, undercurl = true })
-vim.api.nvim_set_hl(0, "SpellRare", { cterm = { undercurl = true }, sp = 10934934, undercurl = true })
-vim.api.nvim_set_hl(0, "Statement", { fg = 13017335 })
-vim.api.nvim_set_hl(0, "StatusLine", { fg = 13292534 })
-vim.api.nvim_set_hl(0, "StatusLineNC", { fg = 4803941 })
-vim.api.nvim_set_hl(0, "StorageClass", { fg = 15652000 })
-vim.api.nvim_set_hl(0, "String", { fg = 10934934 })
-vim.api.nvim_set_hl(0, "Structure", { fg = 15652000 })
-vim.api.nvim_set_hl(0, "Substitute", { bg = 4803941, fg = 16104935 })
-vim.api.nvim_set_hl(0, "TabLine", { bg = 1579303, fg = 7238542 })
-vim.api.nvim_set_hl(0, "TabLineSel", { link = "Normal" })
-vim.api.nvim_set_hl(0, "Tag", { bold = true, cterm = { bold = true }, fg = 12041721 })
-vim.api.nvim_set_hl(0, "TermCursor", { bg = 16047063, fg = 2369339 })
-vim.api.nvim_set_hl(0, "Title", { bold = true, cterm = { bold = true }, fg = 9088501 })
-vim.api.nvim_set_hl(0, "Todo", { bg = 15779527, bold = true, cterm = { bold = true }, fg = 2369339 })
-vim.api.nvim_set_hl(0, "Type", { fg = 15652000 })
-vim.api.nvim_set_hl(0, "Visual", { bg = 4803941, bold = true, cterm = { bold = true } })
-vim.api.nvim_set_hl(0, "VisualNOS", { bg = 4803941, bold = true, cterm = { bold = true } })
-vim.api.nvim_set_hl(0, "WarningMsg", { fg = 15652000 })
-vim.api.nvim_set_hl(0, "Whitespace", { fg = 4803941 })
-vim.api.nvim_set_hl(0, "WildMenu", { bg = 7238542 })
-vim.api.nvim_set_hl(0, "WinBar", { fg = 16047063 })
-vim.api.nvim_set_hl(0, "WinBarNC", { link = "WinBar" })
-vim.api.nvim_set_hl(0, "WinSeparator", { fg = 4803941 })
-vim.api.nvim_set_hl(0, "diffAdded", { fg = 10934934 })
-vim.api.nvim_set_hl(0, "diffChanged", { fg = 9088501 })
-vim.api.nvim_set_hl(0, "diffFile", { fg = 9088501 })
-vim.api.nvim_set_hl(0, "diffIndexLine", { fg = 9164235 })
-vim.api.nvim_set_hl(0, "diffLine", { fg = 7238542 })
-vim.api.nvim_set_hl(0, "diffNewFile", { fg = 16099712 })
-vim.api.nvim_set_hl(0, "diffOldFile", { fg = 15652000 })
-vim.api.nvim_set_hl(0, "diffRemoved", { fg = 15566743 })
-vim.api.nvim_set_hl(0, "htmlH1", { bold = true, cterm = { bold = true }, fg = 16104935 })
-vim.api.nvim_set_hl(0, "htmlH2", { bold = true, cterm = { bold = true }, fg = 9088501 })
-vim.api.nvim_set_hl(0, "lCursor", { bg = 13292534, fg = 2369339 })
-vim.api.nvim_set_hl(0, "markdownH1", { link = "rainbow1" })
-vim.api.nvim_set_hl(0, "markdownH2", { link = "rainbow2" })
-vim.api.nvim_set_hl(0, "markdownH3", { link = "rainbow3" })
-vim.api.nvim_set_hl(0, "markdownH4", { link = "rainbow4" })
-vim.api.nvim_set_hl(0, "markdownH5", { link = "rainbow5" })
-vim.api.nvim_set_hl(0, "markdownH6", { link = "rainbow6" })
-vim.api.nvim_set_hl(0, "rainbow1", { fg = 15566743 })
-vim.api.nvim_set_hl(0, "rainbow2", { fg = 16099712 })
-vim.api.nvim_set_hl(0, "rainbow3", { fg = 15652000 })
-vim.api.nvim_set_hl(0, "rainbow4", { fg = 10934934 })
-vim.api.nvim_set_hl(0, "rainbow5", { fg = 8242405 })
-vim.api.nvim_set_hl(0, "rainbow6", { fg = 12041721 })
diff --git a/colors/ex-lackluster-hack.lua b/colors/ex-lackluster-hack.lua
deleted file mode 100644
index 8659023..0000000
--- a/colors/ex-lackluster-hack.lua
+++ /dev/null
@@ -1,160 +0,0 @@
--- This file is generated by ex-colors. The credit goes to the authors and contributors of the original colorscheme lackluster-hack.
-vim.api.nvim_set_var("colors_name", "ex-lackluster-hack")
-vim.api.nvim_set_hl(0, "@attribute", { fg = 6710886 })
-vim.api.nvim_set_hl(0, "@boolean", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "@character", { fg = 7372944 })
-vim.api.nvim_set_hl(0, "@comment", { fg = 3881787 })
-vim.api.nvim_set_hl(0, "@comment.documentation", { fg = 3881787 })
-vim.api.nvim_set_hl(0, "@comment.error", { fg = 14090240 })
-vim.api.nvim_set_hl(0, "@comment.note", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@comment.todo", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@constant", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "@constant.builtin", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@constructor", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@diff.delta", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@diff.minus", { fg = 16755336 })
-vim.api.nvim_set_hl(0, "@function", { fg = 14610157 })
-vim.api.nvim_set_hl(0, "@function.builtin", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "@function.call", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@function.method", { fg = 14610157 })
-vim.api.nvim_set_hl(0, "@function.method.call", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@keyword", { fg = 6710886 })
-vim.api.nvim_set_hl(0, "@keyword.exception", { fg = 7833770 })
-vim.api.nvim_set_hl(0, "@keyword.return", { fg = 7903608 })
-vim.api.nvim_set_hl(0, "@label", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "@lsp.type.enumMember", { link = "@variable.member" })
-vim.api.nvim_set_hl(0, "@markup.heading", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "@markup.italic", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "@markup.link", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@markup.link.label", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@markup.link.url", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "@markup.list", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "@markup.list.checked", { fg = 7903608 })
-vim.api.nvim_set_hl(0, "@markup.list.unchecked", { fg = 14090240 })
-vim.api.nvim_set_hl(0, "@markup.math", { fg = 16755336 })
-vim.api.nvim_set_hl(0, "@markup.quote", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@markup.strikethrough", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "@markup.strong", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "@module.builtin", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "@number", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "@operator", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@property", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "@punctuation.bracket", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@punctuation.delimiter", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@punctuation.special", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "@string", { fg = 7372944 })
-vim.api.nvim_set_hl(0, "@string.escape", { fg = 7903608 })
-vim.api.nvim_set_hl(0, "@string.regexp", { fg = 7903608 })
-vim.api.nvim_set_hl(0, "@string.special", { fg = 7903608 })
-vim.api.nvim_set_hl(0, "@tag", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "@tag.attribute", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "@tag.builtin", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "@tag.delimiter", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "@type", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "@type.builtin", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "@type.definition", { fg = 13421772 })
-vim.api.nvim_set_hl(0, "@variable", { fg = 13421772 })
-vim.api.nvim_set_hl(0, "@variable.builtin", { fg = 13421772 })
-vim.api.nvim_set_hl(0, "@variable.member", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "@variable.parameter", { fg = 9342606 })
-vim.api.nvim_set_hl(0, "Added", { fg = 7903608 })
-vim.api.nvim_set_hl(0, "Changed", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "Character", { link = "String" })
-vim.api.nvim_set_hl(0, "ColorColumn", { bg = 526344 })
-vim.api.nvim_set_hl(0, "Comment", { fg = 3881787 })
-vim.api.nvim_set_hl(0, "Conceal", { fg = 5198424 })
-vim.api.nvim_set_hl(0, "Conditional", { link = "Keyword" })
-vim.api.nvim_set_hl(0, "Constant", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "CurSearch", { bg = 13421772, fg = 0 })
-vim.api.nvim_set_hl(0, "Cursor", { bg = 13421772 })
-vim.api.nvim_set_hl(0, "CursorLine", { bg = 1644825 })
-vim.api.nvim_set_hl(0, "CursorLineNr", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "Delimiter", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "DiagnosticDeprecated", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "DiagnosticError", { fg = 14090240 })
-vim.api.nvim_set_hl(0, "DiagnosticHint", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "DiagnosticInfo", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "DiagnosticOk", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "DiagnosticSignError", { fg = 14090240 })
-vim.api.nvim_set_hl(0, "DiagnosticSignHint", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "DiagnosticSignInfo", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "DiagnosticSignOk", { fg = 7903608 })
-vim.api.nvim_set_hl(0, "DiagnosticSignWarn", { fg = 16755336 })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineError", { cterm = { undercurl = true }, sp = 14090240, undercurl = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineHint", { cterm = { undercurl = true }, sp = 8026746, undercurl = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineInfo", { cterm = { undercurl = true }, sp = 8026746, undercurl = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineWarn", { cterm = { undercurl = true }, sp = 16755336, undercurl = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnnecessary", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "DiagnosticVirtualTextError", { fg = 14090240 })
-vim.api.nvim_set_hl(0, "DiagnosticVirtualTextHint", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "DiagnosticVirtualTextInfo", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "DiagnosticVirtualTextOk", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "DiagnosticVirtualTextWarn", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "DiagnosticWarn", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "DiffAdd", { fg = 7903608 })
-vim.api.nvim_set_hl(0, "DiffChange", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "DiffDelete", { fg = 16755336 })
-vim.api.nvim_set_hl(0, "DiffText", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "Directory", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "EndOfBuffer", { fg = 1052688 })
-vim.api.nvim_set_hl(0, "Error", { fg = 14090240 })
-vim.api.nvim_set_hl(0, "ErrorMsg", { link = "Error" })
-vim.api.nvim_set_hl(0, "Exception", { link = "Keyword" })
-vim.api.nvim_set_hl(0, "Float", { link = "Constant" })
-vim.api.nvim_set_hl(0, "FloatBorder", { bg = 1710618, fg = 4473924 })
-vim.api.nvim_set_hl(0, "FloatTitle", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "FoldColumn", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "Folded", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "Function", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "Identifier", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "Keyword", { fg = 6710886 })
-vim.api.nvim_set_hl(0, "Label", { link = "Keyword" })
-vim.api.nvim_set_hl(0, "LineNr", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "MatchParen", { bg = 7372944, fg = 13421772 })
-vim.api.nvim_set_hl(0, "ModeMsg", { fg = 14610157 })
-vim.api.nvim_set_hl(0, "MoreMsg", { fg = 14610157 })
-vim.api.nvim_set_hl(0, "MsgArea", { fg = 14610157 })
-vim.api.nvim_set_hl(0, "NonText", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "Normal", { fg = 13421772 })
-vim.api.nvim_set_hl(0, "NormalFloat", { bg = 1710618, fg = 13421772 })
-vim.api.nvim_set_hl(0, "Operator", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "Pmenu", { bg = 1644825, fg = 8026746 })
-vim.api.nvim_set_hl(0, "PmenuSbar", { bg = 2763306, fg = 2763306 })
-vim.api.nvim_set_hl(0, "PmenuSel", { bg = 13421772, fg = 0 })
-vim.api.nvim_set_hl(0, "PmenuThumb", { bg = 5592405, fg = 5592405 })
-vim.api.nvim_set_hl(0, "PreProc", { link = "Keyword" })
-vim.api.nvim_set_hl(0, "Question", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "QuickFixLine", { fg = 7903608 })
-vim.api.nvim_set_hl(0, "Removed", { fg = 16755336 })
-vim.api.nvim_set_hl(0, "Repeat", { link = "Keyword" })
-vim.api.nvim_set_hl(0, "Search", { bg = 7372944, fg = 0 })
-vim.api.nvim_set_hl(0, "SignColumn", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "Special", { fg = 7372944 })
-vim.api.nvim_set_hl(0, "SpecialComment", { fg = 3881787 })
-vim.api.nvim_set_hl(0, "SpellBad", { cterm = { undercurl = true }, undercurl = true })
-vim.api.nvim_set_hl(0, "SpellCap", { link = "SpellBad" })
-vim.api.nvim_set_hl(0, "SpellLocal", { link = "SpellBad" })
-vim.api.nvim_set_hl(0, "SpellRare", { link = "SpellBad" })
-vim.api.nvim_set_hl(0, "Statement", { fg = 6710886 })
-vim.api.nvim_set_hl(0, "StatusLine", { bg = 2368548, fg = 11184810 })
-vim.api.nvim_set_hl(0, "StatusLineNC", { bg = 526344, fg = 4473924 })
-vim.api.nvim_set_hl(0, "String", { fg = 7372944 })
-vim.api.nvim_set_hl(0, "TabLine", { bg = 1644825, fg = 4473924 })
-vim.api.nvim_set_hl(0, "TabLineFill", { bg = 2368548, fg = 11184810 })
-vim.api.nvim_set_hl(0, "TabLineSel", { bg = 13421772, fg = 526344 })
-vim.api.nvim_set_hl(0, "Title", { fg = 5592405 })
-vim.api.nvim_set_hl(0, "Todo", { fg = 8026746 })
-vim.api.nvim_set_hl(0, "Type", { fg = 11184810 })
-vim.api.nvim_set_hl(0, "Visual", { bg = 13421772, fg = 0 })
-vim.api.nvim_set_hl(0, "WarningMsg", { fg = 16755336 })
-vim.api.nvim_set_hl(0, "Whitespace", { fg = 2105376 })
-vim.api.nvim_set_hl(0, "WinSeparator", { fg = 4473924 })
-vim.api.nvim_set_hl(0, "lCursor", { bg = 13421772 })
-vim.api.nvim_create_autocmd("CmdlineEnter", {
- once = true,
- callback = function()
- vim.api.nvim_set_hl(0, "healthError", { fg = 14090240 })
- vim.api.nvim_set_hl(0, "healthSuccess", { fg = 7903608 })
- vim.api.nvim_set_hl(0, "healthWarning", { fg = 16755336 })
- end,
-})
diff --git a/colors/ex-rei.lua b/colors/ex-rei.lua
deleted file mode 100644
index 55ac5ca..0000000
--- a/colors/ex-rei.lua
+++ /dev/null
@@ -1,185 +0,0 @@
--- This file is generated by ex-colors. The credit goes to the authors and contributors of the original colorscheme rei.
-vim.api.nvim_set_var("colors_name", "ex-rei")
-vim.api.nvim_set_var("terminal_color_0", "#556173")
-vim.api.nvim_set_var("terminal_color_1", "#A87692")
-vim.api.nvim_set_var("terminal_color_2", "#809FA1")
-vim.api.nvim_set_var("terminal_color_3", "#FD9491")
-vim.api.nvim_set_var("terminal_color_4", "#91B8E9")
-vim.api.nvim_set_var("terminal_color_5", "#B9AEE6")
-vim.api.nvim_set_var("terminal_color_6", "#9DBCD0")
-vim.api.nvim_set_var("terminal_color_7", "#DAD0E9")
-vim.api.nvim_set_var("terminal_color_8", "#7C90B8")
-vim.api.nvim_set_var("terminal_color_9", "#D9B0C0")
-vim.api.nvim_set_var("terminal_color_10", "#98B1B2")
-vim.api.nvim_set_var("terminal_color_11", "#FDB3B2")
-vim.api.nvim_set_var("terminal_color_12", "#B4CFF0")
-vim.api.nvim_set_var("terminal_color_13", "#BFB4E8")
-vim.api.nvim_set_var("terminal_color_14", "#A5C1D4")
-vim.api.nvim_set_var("terminal_color_15", "#DDD4EB")
-vim.api.nvim_set_hl(0, "@attribute", { fg = 16618641 })
-vim.api.nvim_set_hl(0, "@comment.documentation", { link = "Comment" })
-vim.api.nvim_set_hl(0, "@constant.builtin", { fg = 16568481 })
-vim.api.nvim_set_hl(0, "@constructor", { fg = 11849712 })
-vim.api.nvim_set_hl(
- 0,
- "@function.builtin",
- { bold = true, cterm = { bold = true, italic = true }, fg = 8163512, italic = true }
-)
-vim.api.nvim_set_hl(0, "@function.call", { link = "Function" })
-vim.api.nvim_set_hl(0, "@function.method", { link = "Function" })
-vim.api.nvim_set_hl(0, "@function.method.call", { link = "Function" })
-vim.api.nvim_set_hl(0, "@keyword.conditional", { link = "Conditional" })
-vim.api.nvim_set_hl(0, "@keyword.function", { link = "Function" })
-vim.api.nvim_set_hl(0, "@keyword.import", { link = "Include" })
-vim.api.nvim_set_hl(0, "@keyword.modifier", { link = "Keyword" })
-vim.api.nvim_set_hl(0, "@keyword.operator", { link = "Operator" })
-vim.api.nvim_set_hl(0, "@keyword.repeat", { link = "Repeat" })
-vim.api.nvim_set_hl(0, "@lsp.mod.readonly", { link = "@constant" })
-vim.api.nvim_set_hl(0, "@lsp.type.interface", { fg = 16568481 })
-vim.api.nvim_set_hl(0, "@lsp.type.parameter", { link = "@variables.parameter" })
-vim.api.nvim_set_hl(0, "@markup.heading", { bold = true, cterm = { bold = true }, fg = 13487565 })
-vim.api.nvim_set_hl(0, "@markup.heading.1", { bold = true, cterm = { bold = true }, fg = 9550057 })
-vim.api.nvim_set_hl(0, "@markup.heading.2", { bold = true, cterm = { bold = true }, fg = 9550057 })
-vim.api.nvim_set_hl(0, "@markup.heading.3", { bold = true, cterm = { bold = true }, fg = 9550057 })
-vim.api.nvim_set_hl(0, "@markup.heading.4", { bold = true, cterm = { bold = true }, fg = 9550057 })
-vim.api.nvim_set_hl(0, "@markup.heading.5", { bold = true, cterm = { bold = true }, fg = 9550057 })
-vim.api.nvim_set_hl(0, "@markup.heading.6", { bold = true, cterm = { bold = true }, fg = 9550057 })
-vim.api.nvim_set_hl(0, "@markup.link", { fg = 10461087 })
-vim.api.nvim_set_hl(0, "@markup.link.label", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "@markup.link.url", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "@markup.list", { bold = true, cterm = { bold = true }, fg = 6250335 })
-vim.api.nvim_set_hl(0, "@markup.list.checked", { fg = 8429473 })
-vim.api.nvim_set_hl(0, "@markup.list.unchecked", { fg = 16568481 })
-vim.api.nvim_set_hl(0, "@markup.quote", { fg = 10461087 })
-vim.api.nvim_set_hl(0, "@markup.raw.block", { fg = 14340329 })
-vim.api.nvim_set_hl(0, "@markup.underline", { link = "Underlined" })
-vim.api.nvim_set_hl(0, "@module", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "@property", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "@punctuation.bracket", { fg = 14266560 })
-vim.api.nvim_set_hl(0, "@punctuation.delimiter", { fg = 10461087 })
-vim.api.nvim_set_hl(0, "@punctuation.special", { fg = 10006962 })
-vim.api.nvim_set_hl(0, "@string.documentation", { cterm = { italic = true }, fg = 8429473, italic = true })
-vim.api.nvim_set_hl(0, "@string.escape", { fg = 16568481 })
-vim.api.nvim_set_hl(0, "@string.regexp", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "@string.special", { link = "Special" })
-vim.api.nvim_set_hl(0, "@string.special.path", { link = "Special" })
-vim.api.nvim_set_hl(0, "@string.special.symbol", { fg = 16568481 })
-vim.api.nvim_set_hl(0, "@string.special.url", { cterm = { underline = true }, fg = 10006962, underline = true })
-vim.api.nvim_set_hl(0, "@tag", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "@tag.attribute", { cterm = { italic = true }, fg = 10337488, italic = true })
-vim.api.nvim_set_hl(0, "@tag.delimiter", { fg = 10461087 })
-vim.api.nvim_set_hl(0, "@type.builtin", { fg = 16568481 })
-vim.api.nvim_set_hl(0, "@type.definition", { link = "Type" })
-vim.api.nvim_set_hl(0, "@variable", { fg = 13487565 })
-vim.api.nvim_set_hl(0, "@variable.builtin", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "@variable.parameter", { fg = 14266560 })
-vim.api.nvim_set_hl(0, "Boolean", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "Character", { fg = 8429473 })
-vim.api.nvim_set_hl(0, "ColorColumn", { bg = 3094595 })
-vim.api.nvim_set_hl(0, "Comment", { cterm = { italic = true }, fg = 7434609, italic = true })
-vim.api.nvim_set_hl(0, "Conceal", { fg = 3094595 })
-vim.api.nvim_set_hl(0, "Conditional", { cterm = { italic = true }, fg = 9550057, italic = true })
-vim.api.nvim_set_hl(0, "Constant", { fg = 16618641 })
-vim.api.nvim_set_hl(0, "CurSearch", { bg = 9550057, fg = 923427 })
-vim.api.nvim_set_hl(0, "Cursor", { bg = 13487565, fg = 5595507 })
-vim.api.nvim_set_hl(0, "CursorIM", { bg = 13487565, fg = 5595507 })
-vim.api.nvim_set_hl(0, "CursorLine", { bg = 3094595 })
-vim.api.nvim_set_hl(0, "CursorLineNr", { fg = 10461087 })
-vim.api.nvim_set_hl(0, "Debug", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "Define", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "DiagnosticError", { fg = 14266560 })
-vim.api.nvim_set_hl(0, "DiagnosticHint", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "DiagnosticInfo", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "DiagnosticOk", { fg = 8429473 })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineError", { cterm = { underline = true }, fg = 14266560, underline = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineHint", { cterm = { underline = true }, fg = 10337488, underline = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineInfo", { cterm = { underline = true }, fg = 12168934, underline = true })
-vim.api.nvim_set_hl(0, "DiagnosticUnderlineWarn", { cterm = { underline = true }, fg = 16568481, underline = true })
-vim.api.nvim_set_hl(0, "DiagnosticWarn", { fg = 16568481 })
-vim.api.nvim_set_hl(0, "DiffAdd", { bg = 8429473, fg = 5595507 })
-vim.api.nvim_set_hl(0, "DiffChange", { cterm = { underline = true }, fg = 10337488, underline = true })
-vim.api.nvim_set_hl(0, "DiffDelete", { bg = 16618641, fg = 5595507 })
-vim.api.nvim_set_hl(0, "DiffText", { bg = 10337488, fg = 5595507 })
-vim.api.nvim_set_hl(0, "Directory", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "EndOfBuffer", { fg = 923427 })
-vim.api.nvim_set_hl(0, "Error", { fg = 14266560 })
-vim.api.nvim_set_hl(0, "ErrorMsg", { fg = 16618641 })
-vim.api.nvim_set_hl(0, "Exception", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "Float", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "FloatBorder", { bg = 923427, fg = 4804958 })
-vim.api.nvim_set_hl(0, "FoldColumn", { bg = 923427, fg = 6250335 })
-vim.api.nvim_set_hl(0, "Folded", { fg = 5726059 })
-vim.api.nvim_set_hl(
- 0,
- "Function",
- { bold = true, cterm = { bold = true, italic = true }, fg = 12168934, italic = true }
-)
-vim.api.nvim_set_hl(0, "Identifier", { fg = 13487565 })
-vim.api.nvim_set_hl(0, "IncSearch", { bg = 9550057, fg = 923427 })
-vim.api.nvim_set_hl(0, "Include", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "Keyword", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "Label", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "LineNr", { fg = 5726059 })
-vim.api.nvim_set_hl(0, "LineNrAbove", { fg = 5726059 })
-vim.api.nvim_set_hl(0, "LineNrBelow", { fg = 5726059 })
-vim.api.nvim_set_hl(0, "LspReferenceRead", { cterm = { underline = true }, fg = 12168934, underline = true })
-vim.api.nvim_set_hl(0, "LspReferenceText", { cterm = { underline = true }, fg = 12168934, underline = true })
-vim.api.nvim_set_hl(0, "LspReferenceWrite", { cterm = { underline = true }, fg = 12168934, underline = true })
-vim.api.nvim_set_hl(0, "LspSignatureActiveParameter", { bold = true, cterm = { bold = true }, fg = 16568481 })
-vim.api.nvim_set_hl(0, "Macro", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "MatchParen", { cterm = { underline = true }, fg = 16618641, underline = true })
-vim.api.nvim_set_hl(0, "ModeMsg", { bold = true, cterm = { bold = true }, fg = 4804958 })
-vim.api.nvim_set_hl(0, "NonText", { fg = 6250335 })
-vim.api.nvim_set_hl(0, "Normal", { fg = 13487565 })
-vim.api.nvim_set_hl(0, "NormalFloat", { fg = 13487565 })
-vim.api.nvim_set_hl(0, "NormalNC", { fg = 13487565 })
-vim.api.nvim_set_hl(0, "Number", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "Operator", { fg = 16618641 })
-vim.api.nvim_set_hl(0, "Pmenu", { bg = 5595507, fg = 13487565 })
-vim.api.nvim_set_hl(0, "PmenuSbar", { bg = 4213334 })
-vim.api.nvim_set_hl(0, "PmenuSel", { bg = 4804958, fg = 14340329 })
-vim.api.nvim_set_hl(0, "PmenuThumb", { bg = 4804958 })
-vim.api.nvim_set_hl(0, "PreCondit", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "PreProc", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "Question", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "QuickFixLine", { bg = 4213334, fg = 11040402 })
-vim.api.nvim_set_hl(0, "Repeat", { cterm = { italic = true }, fg = 12168934, italic = true })
-vim.api.nvim_set_hl(0, "Search", { bg = 5595507, fg = 10863060 })
-vim.api.nvim_set_hl(0, "Special", { fg = 9550057 })
-vim.api.nvim_set_hl(0, "SpecialChar", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "SpecialComment", { fg = 6250335 })
-vim.api.nvim_set_hl(0, "SpellBad", { cterm = { underline = true }, fg = 16618641, underline = true })
-vim.api.nvim_set_hl(0, "SpellCap", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "SpellLocal", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "SpellRare", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "Statement", { fg = 13487565 })
-vim.api.nvim_set_hl(0, "StatusLine", { bg = 3094595, fg = 13487565 })
-vim.api.nvim_set_hl(0, "StatusLineNC", { fg = 791325 })
-vim.api.nvim_set_hl(0, "StatusLineTerm", { bg = 3094595, fg = 13487565 })
-vim.api.nvim_set_hl(0, "StatusLineTermNC", { fg = 6250335 })
-vim.api.nvim_set_hl(0, "StorageClass", { fg = 16618641 })
-vim.api.nvim_set_hl(0, "String", { fg = 8429473 })
-vim.api.nvim_set_hl(0, "Structure", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "TabLine", { fg = 6250335 })
-vim.api.nvim_set_hl(0, "TabLineFill", { bg = 5595507 })
-vim.api.nvim_set_hl(0, "TabLineSel", { fg = 13487565 })
-vim.api.nvim_set_hl(0, "Tag", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "Title", { fg = 8429473 })
-vim.api.nvim_set_hl(0, "Todo", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "Type", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "Typedef", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "Visual", { bg = 5726059 })
-vim.api.nvim_set_hl(0, "VisualNOS", { bg = 5726059 })
-vim.api.nvim_set_hl(0, "WarningMsg", { fg = 16568481 })
-vim.api.nvim_set_hl(0, "WildMenu", { bg = 12168934, fg = 5595507 })
-vim.api.nvim_set_hl(0, "WinBar", { bg = 3094595, fg = 13487565 })
-vim.api.nvim_set_hl(0, "WinBarNC", { bg = 791325, fg = 6250335 })
-vim.api.nvim_set_hl(0, "WinSeparator", { fg = 4213334 })
-vim.api.nvim_set_hl(0, "diffAdded", { fg = 8429473 })
-vim.api.nvim_set_hl(0, "diffChanged", { fg = 10337488 })
-vim.api.nvim_set_hl(0, "diffFile", { fg = 6250335 })
-vim.api.nvim_set_hl(0, "diffIndexLine", { fg = 12168934 })
-vim.api.nvim_set_hl(0, "diffLine", { fg = 11040402 })
-vim.api.nvim_set_hl(0, "diffNewFile", { fg = 13487565 })
-vim.api.nvim_set_hl(0, "diffOldFile", { fg = 5726059 })
-vim.api.nvim_set_hl(0, "lCursor", { bg = 13487565, fg = 5595507 })
diff --git a/init.lua b/init.lua
index 4473953..2514f9e 100644
--- a/init.lua
+++ b/init.lua
@@ -1,8 +1,2 @@
-require("rua.core")
-require("rua.lazy")
-
-vim.cmd.colorscheme("ex-lackluster-hack")
--- vim.cmd.colorscheme("ex-catppuccin-macchiato")
--- vim.cmd.colorscheme("ex-rei")
--- vim.cmd.colorscheme("rei")
--- vim.cmd.colorscheme("catppuccin")
+-- bootstrap lazy.nvim, LazyVim and your plugins
+require("config.lazy")
diff --git a/lazy-lock.json b/lazy-lock.json
new file mode 100644
index 0000000..02b3d5d
--- /dev/null
+++ b/lazy-lock.json
@@ -0,0 +1,34 @@
+{
+ "LazyVim": { "branch": "main", "commit": "ec5981dfb1222c3bf246d9bcaa713d5cfa486fbd" },
+ "blink.cmp": { "branch": "main", "commit": "4f38ce99a472932d5776337f08f7a8180f1f571a" },
+ "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
+ "catppuccin": { "branch": "main", "commit": "1bf070129c0b6f77cc23f6a2212dcdc868308c52" },
+ "conform.nvim": { "branch": "master", "commit": "372fc521f8421b7830ea6db4d6ea3bae1c77548c" },
+ "flash.nvim": { "branch": "main", "commit": "3c942666f115e2811e959eabbdd361a025db8b63" },
+ "friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
+ "gitsigns.nvim": { "branch": "main", "commit": "43b0c856ae5f32a195d83f4a27fe21d63e6c966c" },
+ "grug-far.nvim": { "branch": "main", "commit": "78c8d27c6f3300bfa92bb535236732d8e9bcb614" },
+ "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
+ "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" },
+ "lualine.nvim": { "branch": "master", "commit": "15884cee63a8c205334ab13ab1c891cd4d27101a" },
+ "mason-lspconfig.nvim": { "branch": "main", "commit": "d39a75bbce4b8aad5d627191ea915179c77c100f" },
+ "mason.nvim": { "branch": "main", "commit": "7c7318e8bae7e3536ef6b9e86b9e38e74f2e125e" },
+ "mini.ai": { "branch": "main", "commit": "e139eb1101beb0250fea322f8c07a42f0f175688" },
+ "mini.icons": { "branch": "main", "commit": "397ed3807e96b59709ef3292f0a3e253d5c1dc0a" },
+ "mini.pairs": { "branch": "main", "commit": "69864a2efb36c030877421634487fd90db1e4298" },
+ "noice.nvim": { "branch": "main", "commit": "0427460c2d7f673ad60eb02b35f5e9926cf67c59" },
+ "nui.nvim": { "branch": "main", "commit": "f535005e6ad1016383f24e39559833759453564e" },
+ "nvim-lint": { "branch": "master", "commit": "9dfb77ef6c5092a19502883c02dc5a02ec648729" },
+ "nvim-lspconfig": { "branch": "master", "commit": "4bc481b6f0c0cf3671fc894debd0e00347089a4e" },
+ "nvim-treesitter": { "branch": "master", "commit": "28d480e0624b259095e56f353ec911f9f2a0f404" },
+ "nvim-treesitter-textobjects": { "branch": "master", "commit": "0e3be38005e9673d044e994b1e4b123adb040179" },
+ "nvim-ts-autotag": { "branch": "main", "commit": "a1d526af391f6aebb25a8795cbc05351ed3620b5" },
+ "persistence.nvim": { "branch": "main", "commit": "166a79a55bfa7a4db3e26fc031b4d92af71d0b51" },
+ "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
+ "snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" },
+ "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
+ "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" },
+ "trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" },
+ "ts-comments.nvim": { "branch": "main", "commit": "1bd9d0ba1d8b336c3db50692ffd0955fe1bb9f0c" },
+ "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }
+}
diff --git a/lazyvim.json b/lazyvim.json
new file mode 100644
index 0000000..6206f7e
--- /dev/null
+++ b/lazyvim.json
@@ -0,0 +1,10 @@
+{
+ "extras": [
+
+ ],
+ "install_version": 8,
+ "news": {
+ "NEWS.md": "10960"
+ },
+ "version": 8
+}
\ No newline at end of file
diff --git a/lua/config/autocmds.lua b/lua/config/autocmds.lua
new file mode 100644
index 0000000..4221e75
--- /dev/null
+++ b/lua/config/autocmds.lua
@@ -0,0 +1,8 @@
+-- Autocmds are automatically loaded on the VeryLazy event
+-- Default autocmds that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/autocmds.lua
+--
+-- Add any additional autocmds here
+-- with `vim.api.nvim_create_autocmd`
+--
+-- Or remove existing autocmds by their group name (which is prefixed with `lazyvim_` for the defaults)
+-- e.g. vim.api.nvim_del_augroup_by_name("lazyvim_wrap_spell")
diff --git a/lua/config/keymaps.lua b/lua/config/keymaps.lua
new file mode 100644
index 0000000..2c134f7
--- /dev/null
+++ b/lua/config/keymaps.lua
@@ -0,0 +1,3 @@
+-- Keymaps are automatically loaded on the VeryLazy event
+-- Default keymaps that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/keymaps.lua
+-- Add any additional keymaps here
diff --git a/lua/config/lazy.lua b/lua/config/lazy.lua
new file mode 100644
index 0000000..d73bfa1
--- /dev/null
+++ b/lua/config/lazy.lua
@@ -0,0 +1,53 @@
+local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
+if not (vim.uv or vim.loop).fs_stat(lazypath) then
+ local lazyrepo = "https://github.com/folke/lazy.nvim.git"
+ local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
+ if vim.v.shell_error ~= 0 then
+ vim.api.nvim_echo({
+ { "Failed to clone lazy.nvim:\n", "ErrorMsg" },
+ { out, "WarningMsg" },
+ { "\nPress any key to exit..." },
+ }, true, {})
+ vim.fn.getchar()
+ os.exit(1)
+ end
+end
+vim.opt.rtp:prepend(lazypath)
+
+require("lazy").setup({
+ spec = {
+ -- add LazyVim and import its plugins
+ { "LazyVim/LazyVim", import = "lazyvim.plugins" },
+ -- import/override with your plugins
+ { import = "plugins" },
+ },
+ defaults = {
+ -- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup.
+ -- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default.
+ lazy = false,
+ -- It's recommended to leave version=false for now, since a lot the plugin that support versioning,
+ -- have outdated releases, which may break your Neovim install.
+ version = false, -- always use the latest git commit
+ -- version = "*", -- try installing the latest stable version for plugins that support semver
+ },
+ install = { colorscheme = { "tokyonight", "habamax" } },
+ checker = {
+ enabled = true, -- check for plugin updates periodically
+ notify = false, -- notify on update
+ }, -- automatically check for plugin updates
+ performance = {
+ rtp = {
+ -- disable some rtp plugins
+ disabled_plugins = {
+ "gzip",
+ -- "matchit",
+ -- "matchparen",
+ -- "netrwPlugin",
+ "tarPlugin",
+ "tohtml",
+ "tutor",
+ "zipPlugin",
+ },
+ },
+ },
+})
diff --git a/lua/config/options.lua b/lua/config/options.lua
new file mode 100644
index 0000000..3ea1454
--- /dev/null
+++ b/lua/config/options.lua
@@ -0,0 +1,3 @@
+-- Options are automatically loaded before lazy.nvim startup
+-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
+-- Add any additional options here
diff --git a/lua/plugins/example.lua b/lua/plugins/example.lua
new file mode 100644
index 0000000..17f53d6
--- /dev/null
+++ b/lua/plugins/example.lua
@@ -0,0 +1,197 @@
+-- since this is just an example spec, don't actually load anything here and return an empty spec
+-- stylua: ignore
+if true then return {} end
+
+-- every spec file under the "plugins" directory will be loaded automatically by lazy.nvim
+--
+-- In your plugin files, you can:
+-- * add extra plugins
+-- * disable/enabled LazyVim plugins
+-- * override the configuration of LazyVim plugins
+return {
+ -- add gruvbox
+ { "ellisonleao/gruvbox.nvim" },
+
+ -- Configure LazyVim to load gruvbox
+ {
+ "LazyVim/LazyVim",
+ opts = {
+ colorscheme = "gruvbox",
+ },
+ },
+
+ -- change trouble config
+ {
+ "folke/trouble.nvim",
+ -- opts will be merged with the parent spec
+ opts = { use_diagnostic_signs = true },
+ },
+
+ -- disable trouble
+ { "folke/trouble.nvim", enabled = false },
+
+ -- override nvim-cmp and add cmp-emoji
+ {
+ "hrsh7th/nvim-cmp",
+ dependencies = { "hrsh7th/cmp-emoji" },
+ ---@param opts cmp.ConfigSchema
+ opts = function(_, opts)
+ table.insert(opts.sources, { name = "emoji" })
+ end,
+ },
+
+ -- change some telescope options and a keymap to browse plugin files
+ {
+ "nvim-telescope/telescope.nvim",
+ keys = {
+ -- add a keymap to browse plugin files
+ -- stylua: ignore
+ {
+ "fp",
+ function() require("telescope.builtin").find_files({ cwd = require("lazy.core.config").options.root }) end,
+ desc = "Find Plugin File",
+ },
+ },
+ -- change some options
+ opts = {
+ defaults = {
+ layout_strategy = "horizontal",
+ layout_config = { prompt_position = "top" },
+ sorting_strategy = "ascending",
+ winblend = 0,
+ },
+ },
+ },
+
+ -- add pyright to lspconfig
+ {
+ "neovim/nvim-lspconfig",
+ ---@class PluginLspOpts
+ opts = {
+ ---@type lspconfig.options
+ servers = {
+ -- pyright will be automatically installed with mason and loaded with lspconfig
+ pyright = {},
+ },
+ },
+ },
+
+ -- add tsserver and setup with typescript.nvim instead of lspconfig
+ {
+ "neovim/nvim-lspconfig",
+ dependencies = {
+ "jose-elias-alvarez/typescript.nvim",
+ init = function()
+ require("lazyvim.util").lsp.on_attach(function(_, buffer)
+ -- stylua: ignore
+ vim.keymap.set( "n", "co", "TypescriptOrganizeImports", { buffer = buffer, desc = "Organize Imports" })
+ vim.keymap.set("n", "cR", "TypescriptRenameFile", { desc = "Rename File", buffer = buffer })
+ end)
+ end,
+ },
+ ---@class PluginLspOpts
+ opts = {
+ ---@type lspconfig.options
+ servers = {
+ -- tsserver will be automatically installed with mason and loaded with lspconfig
+ tsserver = {},
+ },
+ -- you can do any additional lsp server setup here
+ -- return true if you don't want this server to be setup with lspconfig
+ ---@type table
+ setup = {
+ -- example to setup with typescript.nvim
+ tsserver = function(_, opts)
+ require("typescript").setup({ server = opts })
+ return true
+ end,
+ -- Specify * to use this function as a fallback for any server
+ -- ["*"] = function(server, opts) end,
+ },
+ },
+ },
+
+ -- for typescript, LazyVim also includes extra specs to properly setup lspconfig,
+ -- treesitter, mason and typescript.nvim. So instead of the above, you can use:
+ { import = "lazyvim.plugins.extras.lang.typescript" },
+
+ -- add more treesitter parsers
+ {
+ "nvim-treesitter/nvim-treesitter",
+ opts = {
+ ensure_installed = {
+ "bash",
+ "html",
+ "javascript",
+ "json",
+ "lua",
+ "markdown",
+ "markdown_inline",
+ "python",
+ "query",
+ "regex",
+ "tsx",
+ "typescript",
+ "vim",
+ "yaml",
+ },
+ },
+ },
+
+ -- since `vim.tbl_deep_extend`, can only merge tables and not lists, the code above
+ -- would overwrite `ensure_installed` with the new value.
+ -- If you'd rather extend the default config, use the code below instead:
+ {
+ "nvim-treesitter/nvim-treesitter",
+ opts = function(_, opts)
+ -- add tsx and treesitter
+ vim.list_extend(opts.ensure_installed, {
+ "tsx",
+ "typescript",
+ })
+ end,
+ },
+
+ -- the opts function can also be used to change the default opts:
+ {
+ "nvim-lualine/lualine.nvim",
+ event = "VeryLazy",
+ opts = function(_, opts)
+ table.insert(opts.sections.lualine_x, {
+ function()
+ return "😄"
+ end,
+ })
+ end,
+ },
+
+ -- or you can return new options to override all the defaults
+ {
+ "nvim-lualine/lualine.nvim",
+ event = "VeryLazy",
+ opts = function()
+ return {
+ --[[add your custom lualine config here]]
+ }
+ end,
+ },
+
+ -- use mini.starter instead of alpha
+ { import = "lazyvim.plugins.extras.ui.mini-starter" },
+
+ -- add jsonls and schemastore packages, and setup treesitter for json, json5 and jsonc
+ { import = "lazyvim.plugins.extras.lang.json" },
+
+ -- add any tools you want to have installed below
+ {
+ "williamboman/mason.nvim",
+ opts = {
+ ensure_installed = {
+ "stylua",
+ "shellcheck",
+ "shfmt",
+ "flake8",
+ },
+ },
+ },
+}
diff --git a/lua/rua/config/logos.lua b/lua/rua/config/logos.lua
deleted file mode 100644
index 3f4a5d5..0000000
--- a/lua/rua/config/logos.lua
+++ /dev/null
@@ -1,95 +0,0 @@
-local M = {
- a = {
- "⣇⣿⠘⣿⣿⣿⡿⡿⣟⣟⢟⢟⢝⠵⡝⣿⡿⢂⣼⣿⣷⣌⠩⡫⡻⣝⠹⢿⣿⣷",
- "⡆⣿⣆⠱⣝⡵⣝⢅⠙⣿⢕⢕⢕⢕⢝⣥⢒⠅⣿⣿⣿⡿⣳⣌⠪⡪⣡⢑⢝⣇",
- "⡆⣿⣿⣦⠹⣳⣳⣕⢅⠈⢗⢕⢕⢕⢕⢕⢈⢆⠟⠋⠉⠁⠉⠉⠁⠈⠼⢐⢕⢽",
- "⡗⢰⣶⣶⣦⣝⢝⢕⢕⠅⡆⢕⢕⢕⢕⢕⣴⠏⣠⡶⠛⡉⡉⡛⢶⣦⡀⠐⣕⢕",
- "⡝⡄⢻⢟⣿⣿⣷⣕⣕⣅⣿⣔⣕⣵⣵⣿⣿⢠⣿⢠⣮⡈⣌⠨⠅⠹⣷⡀⢱⢕",
- "⡝⡵⠟⠈⢀⣀⣀⡀⠉⢿⣿⣿⣿⣿⣿⣿⣿⣼⣿⢈⡋⠴⢿⡟⣡⡇⣿⡇⡀⢕",
- "⡝⠁⣠⣾⠟⡉⡉⡉⠻⣦⣻⣿⣿⣿⣿⣿⣿⣿⣿⣧⠸⣿⣦⣥⣿⡇⡿⣰⢗⢄",
- "⠁⢰⣿⡏⣴⣌⠈⣌⠡⠈⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣬⣉⣉⣁⣄⢖⢕⢕⢕",
- "⡀⢻⣿⡇⢙⠁⠴⢿⡟⣡⡆⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣵⣵⣿",
- "⡻⣄⣻⣿⣌⠘⢿⣷⣥⣿⠇⣿⣿⣿⣿⣿⣿⠛⠻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
- "⣷⢄⠻⣿⣟⠿⠦⠍⠉⣡⣾⣿⣿⣿⣿⣿⣿⢸⣿⣦⠙⣿⣿⣿⣿⣿⣿⣿⣿⠟",
- "⡕⡑⣑⣈⣻⢗⢟⢞⢝⣻⣿⣿⣿⣿⣿⣿⣿⠸⣿⠿⠃⣿⣿⣿⣿⣿⣿⡿⠁⣠",
- "⡝⡵⡈⢟⢕⢕⢕⢕⣵⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣶⣿⣿⣿⣿⣿⠿⠋⣀⣈⠙",
- "⡝⡵⡕⡀⠑⠳⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠛⢉⡠⡲⡫⡪⡪⡣",
- },
- b = {
- "░▒▓███████▓▒░░▒▓█▓▒░░▒▓█▓▒░░▒▓██████▓▒░ ",
- "░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░",
- "░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░",
- "░▒▓███████▓▒░░▒▓█▓▒░░▒▓█▓▒░▒▓████████▓▒░",
- "░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░",
- "░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░▒▓█▓▒░░▒▓█▓▒░",
- "░▒▓█▓▒░░▒▓█▓▒░░▒▓██████▓▒░░▒▓█▓▒░░▒▓█▓▒░",
- },
- c = {
- [[⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠋⣠⣶⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣡⣾⣿⣿⣿⣿⣿⢿⣿⣿⣿⣿⣿⣿⣟⠻⣿⣿⣿⣿⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⣿⣿⡿⢫⣷⣿⣿⣿⣿⣿⣿⣿⣾⣯⣿⡿⢧⡚⢷⣌⣽⣿⣿⣿⣿⣿⣶⡌⣿⣿⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⣿⣿⠇⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣮⣇⣘⠿⢹⣿⣿⣿⣿⣿⣻⢿⣿⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⣿⣿⠀⢸⣿⣿⡇⣿⣿⣿⣿⣿⣿⣿⣿⡟⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⣻⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⣿⡇⠀⣬⠏⣿⡇⢻⣿⣿⣿⣿⣿⣿⣿⣷⣼⣿⣿⣸⣿⣿⣿⣿⣿⣿⣿⣿⣿⢻⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⣿⠀⠈⠁⠀⣿⡇⠘⡟⣿⣿⣿⣿⣿⣿⣿⣿⡏⠿⣿⣟⣿⣿⣿⣿⣿⣿⣿⣿⣇⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⡏⠀⠀⠐⠀⢻⣇⠀⠀⠹⣿⣿⣿⣿⣿⣿⣩⡶⠼⠟⠻⠞⣿⡈⠻⣟⢻⣿⣿⣿⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⡇⠀⠀⠀⠀⠀⢿⠀⡆⠀⠘⢿⢻⡿⣿⣧⣷⢣⣶⡃⢀⣾⡆⡋⣧⠙⢿⣿⣿⣟⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⡿⠀⠀⠀⠀⠀⠀⠀⡥⠂⡐⠀⠁⠑⣾⣿⣿⣾⣿⣿⣿⡿⣷⣷⣿⣧⣾⣿⣿⣿⣿⣿⣿⣿]],
- [[⣿⣿⡿⣿⣍⡴⠆⠀⠀⠀⠀⠀⠀⠀⠀⣼⣄⣀⣷⡄⣙⢿⣿⣿⣿⣿⣯⣶⣿⣿⢟⣾⣿⣿⢡⣿⣿⣿⣿⣿]],
- [[⣿⡏⣾⣿⣿⣿⣷⣦⠀⠀⠀⢀⡀⠀⠀⠠⣭⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠟⣡⣾⣿⣿⢏⣾⣿⣿⣿⣿⣿]],
- [[⣿⣿⣿⣿⣿⣿⣿⣿⡴⠀⠀⠀⠀⠀⠠⠀⠰⣿⣿⣿⣷⣿⠿⠿⣿⣿⣭⡶⣫⠔⢻⢿⢇⣾⣿⣿⣿⣿⣿⣿]],
- [[⣿⣿⣿⡿⢫⣽⠟⣋⠀⠀⠀⠀⣶⣦⠀⠀⠀⠈⠻⣿⣿⣿⣾⣿⣿⣿⣿⡿⣣⣿⣿⢸⣾⣿⣿⣿⣿⣿⣿⣿]],
- [[⡿⠛⣹⣶⣶⣶⣾⣿⣷⣦⣤⣤⣀⣀⠀⠀⠀⠀⠀⠀⠉⠛⠻⢿⣿⡿⠫⠾⠿⠋⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿]],
- [[⢀⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣀⡆⣠⢀⣴⣏⡀⠀⠀⠀⠉⠀⠀⢀⣠⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿]],
- [[⠿⠛⠛⠛⠛⠛⠛⠻⢿⣿⣿⣿⣿⣯⣟⠷⢷⣿⡿⠋⠀⠀⠀⠀⣵⡀⢠⡿⠋⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿]],
- [[⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠛⢿⣿⣿⠂⠀⠀⠀⠀⠀⢀⣽⣿⣿⣿⣿⣿⣿⣿⣍⠛⠿⣿⣿⣿⣿⣿⣿]],
- },
- d = {
- "⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⠿⠋⠀⢀⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⠀⠈⠉⠉⠙⠛⠛⠻⢿⣿⡿⠟⠁⠀⣀⣴⣿⣿⣿⣿⣿⠟",
- "⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠃⠀⠀⢀⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⠛⣉⣡⠀⣠⣴⣶⣶⣦⠄⣀⡀⠀⠀⠀⣠⣾⣿⣿⣿⣿⣿⡿⢃⣾",
- "⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡏⠀⣾⣤⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠏⣠⣾⡟⢡⣾⣿⣿⣿⡿⢋⣴⣿⡿⢀⣴⣾⣿⣿⣿⣿⣿⣿⣿⢡⣾⣿",
- "⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠟⠃⠀⢻⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠃⣼⣿⡟⣰⣿⣿⣿⣿⠏⣰⣿⣿⠟⣠⣿⣿⣿⣿⣿⣿⣿⣿⣿⡇⢚⣛⢿",
- "⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠏⠀⣠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣟⠸⣿⠟⢰⣿⣿⣿⣿⠃⣾⣿⣿⠏⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢋⣾",
- "⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠿⠻⠻⠃⠀⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡄⢉⣴⣿⣿⣿⣿⡇⠘⣿⣿⠋⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⡘⣿",
- "⣿⣿⣿⣿⣿⣿⣿⣿⡿⠿⠿⣿⣿⣿⣿⠁⢀⣀⠀⢀⣾⣿⣿⣿⣿⣿⣿⠟⠉⠉⠉⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣦⣤⣤⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣌",
- "⣿⣿⣿⣿⣿⣿⡿⠁⣀⣤⡀⠀⠈⠻⢿⠀⣼⣿⣷⣿⣿⣿⣿⣿⣿⡿⠁⠀⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
- "⣿⣿⣿⠟⠛⠙⠃⠀⣿⣿⣿⠀⠀⠀⠀⠀⠙⠿⣿⣿⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⣾⣿⣿⡿⠿⠿⠿⠿⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠛⠁⠀⠀⠀⠈⠻⣿⣿⣿⣿⣿⣿⣿",
- "⣿⠟⠁⢀⣴⣶⣶⣾⣿⣿⣿⣿⣶⡐⢦⣄⠀⠀⠈⠛⢿⣿⣿⣿⣿⡀⠀⠀⠀⠀⢀⣼⡿⢛⣩⣴⣶⣶⣶⣶⣶⣶⣭⣙⠻⣿⣿⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠘⣿⣿⣿⣿⣿⣿",
- "⠁⠀⣴⣿⣿⣿⣿⠿⠿⣿⣿⣿⣿⣿⣦⡙⠻⣶⣄⡀⠀⠈⠙⢿⣿⣷⣦⣤⣤⣴⣿⡏⣠⢸⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣌⠻⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣿⣿⣿",
- "⠀⢸⣿⣿⣿⠋⣠⠔⠀⠀⠻⣿⣿⣿⣿⢉⡳⢦⣉⠛⢷⣤⣀⠀⠈⠙⠿⣿⣿⣿⣿⢸⣿⡄⠻⣿⣿⠟⡈⣿⣿⣿⣿⣿⢉⣿⣧⢹⣿⣿⣄⠀⠀⠀⠀⠀⠀⠀⢠⣿⣿⣿⣿⣿⣿",
- "⠀⢸⣿⣿⡇⠠⡇⠀⠀⠀⠀⣿⣿⣿⣿⢸⣿⣷⣤⣙⠢⢌⡛⠷⣤⣄⠀⠈⠙⠿⣿⣿⣿⣿⣷⣦⣴⣾⣿⣤⣙⣛⣛⣥⣾⣿⣿⡌⣿⣿⣿⣷⣤⣀⣀⣀⣠⣴⣿⣿⣿⣿⣿⣿⣿",
- "⠀⢸⣿⣿⣷⡀⠡⠀⠀⠀⣰⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣦⣌⡓⠤⣙⣿⣦⡄⠀⠈⠙⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⢡⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
- "⠀⢸⣿⣿⣿⣿⣶⣤⣴⣾⣿⣿⣿⣿⣿⢸⣿⣿⣿⣿⣿⣿⣿⣿⣷⣾⣿⣿⣷⠀⣶⡄⠀⠈⠙⠿⣿⣿⣿⣿⣿⣿⣿⣿⣿⡿⢃⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
- "⠀⢸⣿⣿⣿⣿⣿⠟⠻⣿⣿⡏⣉⣭⣭⡘⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⠀⣿⡇⢸⡇⢠⡀⠈⠙⠋⠉⠉⠉⠉⠛⠫⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
- "⠀⢸⣿⣿⠛⣿⣿⣀⣀⣾⡿⢀⣿⣿⣿⢻⣷⣦⢈⡙⠻⢿⣿⣿⣿⣿⣿⣿⣿⠀⣿⡇⢸⡇⢸⣿⠀⣦⠀⠀⠶⣶⣦⣀⠀⠘⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
- "⠀⢸⣿⣿⣦⣈⡛⠿⠟⣋⣤⣾⣿⣿⣿⣸⣿⣿⢸⡇⢰⡆⢈⡙⠻⢿⣿⣿⣿⠀⢿⡇⢸⡇⢸⣿⢠⣿⡇⣿⡆⢈⡙⠻⠧⠀⢹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
- "⠀⠀⣝⠛⢿⣿⣿⣿⣿⣿⣿⠟⣁⠀⠀⢈⠛⠿⢸⣇⢸⡇⢸⡇⣶⣦⣌⡙⠻⢄⡀⠁⠘⠇⠘⣿⢸⣿⡇⣿⡇⢸⡛⠷⣦⣄⠀⠹⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿",
- },
- e = {
- [[ ____ __ _____ ]],
- [[ / __ \/ / / / |]],
- [[ / /_/ / / / / /| |]],
- [[ / _, _/ /_/ / ___ |]],
- [[/_/ |_|\____/_/ |_|]],
- },
- f = {
- [[⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣤⡤⠤⠤⠤⣤⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀]],
- [[⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡤⠞⠋⠁⠀⠀⠀⠀⠀⠀⠀⠉⠛⢦⣤⠶⠦⣤⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀]],
- [[⠀⠀⠀⠀⠀⠀⠀⢀⣴⠞⢋⡽⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠃⠀⠀⠙⢶⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀]],
- [[⠀⠀⠀⠀⠀⠀⣰⠟⠁⠀⠘⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢰⡀⠀⠀⠉⠓⠦⣤⣤⣤⣤⣤⣤⣄⣀⠀⠀⠀]],
- [[⠀⠀⠀⠀⣠⠞⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣴⣷⡄⠀⠀⢻⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠻⣆⠀]],
- [[⠀⠀⣠⠞⠁⠀⠀⣀⣠⣏⡀⠀⢠⣶⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠹⠿⡃⠀⠀⠀⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠸⡆]],
- [[⢀⡞⠁⠀⣠⠶⠛⠉⠉⠉⠙⢦⡸⣿⡿⠀⠀⠀⡄⢀⣀⣀⡶⠀⠀⠀⢀⡄⣀⠀⣢⠟⢦⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⠃]],
- [[⡞⠀⠀⠸⠁⠀⠀⠀⠀⠀⠀⠀⢳⢀⣠⠀⠀⠀⠉⠉⠀⠀⣀⠀⠀⠀⢀⣠⡴⠞⠁⠀⠀⠈⠓⠦⣄⣀⠀⠀⠀⠀⣀⣤⠞⠁⠀]],
- [[⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⠀⠁⠀⢀⣀⣀⡴⠋⢻⡉⠙⠾⡟⢿⣅⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠙⠛⠉⠉⠀⠀⠀⠀]],
- [[⠘⣦⡀⠀⠀⠀⠀⠀⠀⣀⣤⠞⢉⣹⣯⣍⣿⠉⠟⠀⠀⣸⠳⣄⡀⠀⠀⠙⢧⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀]],
- [[⠀⠈⠙⠒⠒⠒⠒⠚⠋⠁⠀⡴⠋⢀⡀⢠⡇⠀⠀⠀⠀⠃⠀⠀⠀⠀⠀⢀⡾⠋⢻⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀]],
- [[⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⡇⠀⢸⡀⠸⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⠀⠀⢠⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀]],
- [[⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠘⣇⠀⠀⠉⠋⠻⣄⠀⠀⠀⠀⠀⣀⣠⣴⠞⠋⠳⠶⠞⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀]],
- [[⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠳⠦⢤⠤⠶⠋⠙⠳⣆⣀⣈⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀]],
- [[⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀]],
- },
-}
-
-return M
diff --git a/lua/rua/config/rust-analyzer.lua b/lua/rua/config/rust-analyzer.lua
deleted file mode 100644
index e62b8d7..0000000
--- a/lua/rua/config/rust-analyzer.lua
+++ /dev/null
@@ -1,80 +0,0 @@
-local cmp_nvim_lsp = require("cmp_nvim_lsp")
-local capabilities = cmp_nvim_lsp.default_capabilities()
-
--- vim.lsp.set_log_level("DEBUG")
-
-capabilities.workspace = { didChangeWatchedFiles = { dynamicRegistration = false } }
-
-local M = {
- capabilities = capabilities,
- settings = {
- ["rust-analyzer"] = {
- standalone = true,
- checkOnSave = true,
- -- rustfmt = {
- -- overrideCommand = { "leptosfmt", "--stdin", "--rustfmt" },
- -- },
- cargo = {
- allFeatures = true,
- loadOutDirsFromCheck = true,
- buildScripts = {
- enable = true,
- },
- },
- files = {
- excludeDirs = {
- ".flatpak-builder",
- "_build",
- ".dart_tool",
- ".flatpak-builder",
- ".git",
- ".gitlab",
- ".gitlab-ci",
- ".gradle",
- ".idea",
- ".next",
- ".project",
- ".scannerwork",
- ".settings",
- ".venv",
- ".direnv",
- "archetype-resources",
- "bin",
- "docs",
- "hooks",
- "node_modules",
- "po",
- "screenshots",
- "target",
- "out",
- "examples/node_modules",
- },
- watcherExclude = {
- "**/_build",
- "**/.classpath",
- "**/.dart_tool",
- "**/.factorypath",
- "**/.flatpak-builder",
- "**/.git/objects/**",
- "**/.git/subtree-cache/**",
- "**/.idea",
- "**/.project",
- "**/.scannerwork",
- "**/.settings",
- "**/.venv",
- "**/node_modules",
- },
- },
- },
- procMacro = {
- enable = true,
- ignored = {
- ["async-trait"] = { "async_trait" },
- ["napi-derive"] = { "napi" },
- ["async-recursion"] = { "async_recursion" },
- },
- },
- },
-}
-
-return M
diff --git a/lua/rua/config/tailwindcss.lua b/lua/rua/config/tailwindcss.lua
deleted file mode 100644
index 475121a..0000000
--- a/lua/rua/config/tailwindcss.lua
+++ /dev/null
@@ -1,73 +0,0 @@
-return {
- tailwindcss = {
- -- exclude a filetype from the default_config
- filetypes_exclude = { "markdown" },
- -- add additional filetypes to the default_config
- filetypes_include = { "rust" },
- -- to fully override the default_config, change the below
- -- filetypes = {}
- },
- filetypes = {
- "aspnetcorerazor",
- "astro",
- "astro-markdown",
- "blade",
- "clojure",
- "django-html",
- "htmldjango",
- "edge",
- "eelixir",
- "elixir",
- "ejs",
- "erb",
- "eruby",
- "gohtml",
- "gohtmltmpl",
- "haml",
- "handlebars",
- "hbs",
- "html",
- "htmlangular",
- "html-eex",
- "heex",
- "jade",
- "leaf",
- "liquid",
- "markdown",
- "mdx",
- "mustache",
- "njk",
- "nunjucks",
- "php",
- "razor",
- "slim",
- "twig",
- "css",
- "less",
- "postcss",
- "sass",
- "scss",
- "stylus",
- "sugarss",
- "javascript",
- "javascriptreact",
- "reason",
- "rescript",
- "typescript",
- "typescriptreact",
- "vue",
- "svelte",
- "templ",
- "rust",
- },
- settings = {
- tailwindCSS = {
- includeLanguages = {
- elixir = "html-eex",
- eelixir = "html-eex",
- heex = "html-eex",
- rust = "html",
- },
- },
- },
-}
diff --git a/lua/rua/config/vtsls.lua b/lua/rua/config/vtsls.lua
deleted file mode 100644
index 6f3e9f3..0000000
--- a/lua/rua/config/vtsls.lua
+++ /dev/null
@@ -1,82 +0,0 @@
-local cmp_nvim_lsp = require("cmp_nvim_lsp")
-local capabilities = cmp_nvim_lsp.default_capabilities()
-local lspconfig = require("lspconfig")
-
-local function organize_imports()
- local params = {
- command = "typescript.organizeImports",
- arguments = { vim.api.nvim_buf_get_name(0) },
- }
- vim.lsp.buf.execute_command(params)
-end
-
-local mason_registry = require("mason-registry")
-local has_volar, _ = pcall(mason_registry.get_package, "vue-language-server")
-
--- npm i -g @vue/typescript-plugin
-local vue_language_server_path
-if has_volar then
- -- vue_language_server_path = volar:get_install_path() .. "/node_modules/@vue/language-server"
- vue_language_server_path = vim.fn.expand("$MASON/packages/vue-language-server/node_modules/@vue/language-server")
-end
-
-local M = {
- root_dir = lspconfig.util.root_pattern("package.json"), -- for deno
- filetypes = {
- "typescript",
- "javascript",
- "typescript.tsx",
- "javascript.jsx",
- "javascriptreact",
- "typescriptreact",
- "vue",
- },
- settings = {
- typescript = {
- updateImportsOnFileMove = { enabled = "always" },
- suggest = {
- completeFunctionCalls = true,
- },
- inlayHints = {
- enumMemberValues = { enabled = true },
- functionLikeReturnTypes = { enabled = true },
- parameterNames = { enabled = "literals" },
- parameterTypes = { enabled = true },
- propertyDeclarationTypes = { enabled = true },
- variableTypes = { enabled = false },
- },
- },
- vtsls = {
- -- autoUseWorkspaceTsdk = true,
- enableMoveToFileCodeAction = true,
- autoUseWorkspaceTsdk = true,
- experimental = {
- completion = {
- enableServerSideFuzzyMatch = true,
- },
- },
- tsserver = {
- globalPlugins = {
- {
- name = "@vue/typescript-plugin",
- location = vue_language_server_path,
- languages = { "vue" },
- configNamespace = "typescript",
- enableForWorkspaceTypeScriptVersions = true,
- },
- },
- },
- },
- },
- single_file_support = false,
- commands = {
- OrganizeImports = {
- organize_imports,
- description = "Organize Imports",
- },
- },
- -- on_attach = on_attach,
- capabilities = capabilities,
-}
-
-return M
diff --git a/lua/rua/core/autocmd.lua b/lua/rua/core/autocmd.lua
deleted file mode 100644
index c2ba350..0000000
--- a/lua/rua/core/autocmd.lua
+++ /dev/null
@@ -1,232 +0,0 @@
--- 封装设置文件类型的函数
-local function set_filetype(patterns, filetype)
- local autocmd = vim.api.nvim_create_autocmd
- autocmd({ "BufNewFile", "BufRead" }, {
- pattern = patterns,
- callback = function()
- local buf = vim.api.nvim_get_current_buf()
- vim.api.nvim_buf_set_option(buf, "filetype", filetype)
- end,
- })
-end
-
--- 设置 markdown 高亮用于 mdx 文件
-set_filetype({ "*.mdx" }, "markdown")
-
--- 设置 env 文件为 sh 类型
-set_filetype({ ".env.example", ".env.local", ".env.development", ".env.production" }, "sh")
-
--- 设置终端相关选项
-local autocmd = vim.api.nvim_create_autocmd
-autocmd({ "TermOpen" }, {
- callback = function()
- local buf = vim.api.nvim_get_current_buf()
- vim.api.nvim_buf_set_option(buf, "relativenumber", false)
- vim.api.nvim_buf_set_option(buf, "number", false)
- end,
-})
-
--- 解析 .gitignore 文件
-local function parse_gitignore()
- local gitignore_path = vim.fn.findfile(".gitignore", ".;")
- if gitignore_path == "" then
- return {}
- end
- local rules = {}
- local file = io.open(gitignore_path, "r")
- if file then
- for line in file:lines() do
- line = line:gsub("^%s*(.-)%s*$", "%1")
- if line ~= "" and not line:match("^#") then
- table.insert(rules, line)
- end
- end
- file:close()
- end
- return rules
-end
--- 检查文件是否匹配 .gitignore 规则
-local function matches_gitignore(file_path, rules)
- local path_sep = package.config:sub(1, 1)
- for _, rule in ipairs(rules) do
- local pattern = "^" .. rule:gsub("%.", "%%."):gsub("%*", ".*"):gsub("%?", ".") .. "$"
- if file_path:match(pattern) then
- return true
- end
- -- 处理目录匹配
- if rule:sub(-1) == path_sep then
- pattern = "^" .. rule:gsub("%.", "%%."):gsub("%*", ".*"):gsub("%?", ".")
- if file_path:match(pattern) then
- return true
- end
- end
- end
- return false
-end
--- 自动更新磁盘上更改的文件,可跳过某些目录
-local skip_dirs = { "" } -- 手动指定要跳过检测的目录列表
-local gitignore_rules = parse_gitignore()
-autocmd({ "FocusGained", "BufEnter", "CursorHold", "CursorHoldI" }, {
- callback = function()
- if vim.fn.mode() == "c" or vim.fn.bufexists("[Command Line]") then
- return
- end
- local bufname = vim.api.nvim_buf_get_name(0)
- for _, dir in ipairs(skip_dirs) do
- if string.find(bufname, dir, 1, true) then
- return -- 如果文件在手动跳过的目录中,不进行检测
- end
- end
- if matches_gitignore(bufname, gitignore_rules) then
- return -- 如果文件匹配 .gitignore 规则,不进行检测
- end
- vim.cmd("checktime")
- end,
-})
-
--- 文件更改后的通知
-autocmd("FileChangedShellPost", {
- command = [[echohl WarningMsg | echo "File changed on disk. Buffer reloaded." | echohl None]],
-})
-
--- 用 o 换行不要延续注释
-local myAutoGroup = vim.api.nvim_create_augroup("myAutoGroup", {
- clear = true,
-})
-autocmd("BufEnter", {
- group = myAutoGroup,
- pattern = "*",
- callback = function()
- vim.opt.formatoptions = vim.opt.formatoptions
- - "o" -- O 和 o,不延续注释
- + "r" -- 按回车键时延续注释
- end,
-})
-
--- 复制文本后高亮显示
-local highlight_group = vim.api.nvim_create_augroup("YankHighlight", { clear = true })
-autocmd("TextYankPost", {
- callback = function()
- vim.highlight.on_yank()
- end,
- group = highlight_group,
- pattern = "*",
-})
-
--- 恢复光标位置
-autocmd("BufReadPost", {
- pattern = "*",
- callback = function()
- local line = vim.fn.line("'\"")
- local filetype = vim.bo.filetype
- if
- line > 1
- and line <= vim.fn.line("$")
- and filetype ~= "commit"
- and vim.fn.index({ "xxd", "gitrebase" }, filetype) == -1
- then
- vim.cmd('normal! g`"')
- end
- end,
-})
-
--- 函数:获取窗口栏路径
-local function get_winbar_path()
- return vim.fn.expand("%:.")
-end
-
--- 函数:获取打开缓冲区的数量
-local function get_buffer_count()
- local buffers = vim.fn.getbufinfo({ buflisted = 1 })
- return #buffers
-end
-
--- 函数:获取主机名,添加错误日志
-local function get_hostname()
- local hostname = vim.fn.systemlist("hostname")
- if #hostname > 0 then
- return hostname[1]
- else
- vim.notify("Failed to get hostname", vim.log.levels.ERROR)
- return "unknown"
- end
-end
-
--- 函数:更新指定缓冲区的窗口栏
-local function update_winbar(bufnr)
- bufnr = bufnr or vim.api.nvim_get_current_buf()
- local old_buf = vim.api.nvim_get_current_buf()
- vim.api.nvim_set_current_buf(bufnr)
- local home_replaced = get_winbar_path()
- if home_replaced == "" then
- return
- end
- -- local buffer_count = get_buffer_count()
- local ft = vim.bo.filetype
- local hostname = get_hostname()
- local winbar
-
- if ft == "NvimTree" then
- winbar = "RUA"
- else
- local winbar_prefix = "%#WinBar1#%m "
- local winbar_suffix = "%*%=%#WinBar2#" .. hostname
- winbar = winbar_prefix .. "%#WinBar1#" .. home_replaced .. winbar_suffix
- end
-
- -- vim.opt.winbar = winbar
- -- 检查缓冲区是否支持设置 winbar
- if vim.api.nvim_buf_is_valid(bufnr) then
- vim.api.nvim_buf_set_option(bufnr, "winbar", winbar)
- end
- -- 检查 old_buf 是否有效
- if vim.api.nvim_buf_is_valid(old_buf) then
- vim.api.nvim_set_current_buf(old_buf)
- end
-end
-
--- 自动命令:在 BufEnter 和 WinEnter 事件时更新窗口栏
-autocmd({ "BufEnter", "WinEnter" }, {
- callback = function(args)
- update_winbar(args.buf)
- end,
-})
-
--- 启动时更新所有现有缓冲区的窗口栏
-local all_buffers = vim.api.nvim_list_bufs()
-for _, buf in ipairs(all_buffers) do
- if vim.api.nvim_buf_is_valid(buf) then
- update_winbar(buf)
- end
-end
-
--- 大文件检测
-local aug = vim.api.nvim_create_augroup("buf_large", { clear = true })
-autocmd({ "BufReadPre" }, {
- callback = function()
- local bufname = vim.api.nvim_buf_get_name(vim.api.nvim_get_current_buf())
- local ok, stats = pcall(vim.loop.fs_stat, bufname)
- local large_file_size = 100 * 1024 -- 100 KB
-
- if ok and stats and stats.size > large_file_size then
- vim.b.large_buf = true
- vim.opt_local.foldmethod = "manual"
- vim.opt_local.spell = false
- -- 可以根据文件类型进一步优化
- local filetype = vim.bo.filetype
- if filetype == "lua" then
- -- 例如,对于 Lua 文件禁用某些插件
- -- vim.cmd("SomeLuaPluginDisable")
- end
- else
- vim.b.large_buf = false
- end
- end,
- group = aug,
- pattern = "*",
-})
-
--- 在 Vim 退出前保存会话
-autocmd("VimLeavePre", {
- command = ":SessionSave",
-})
diff --git a/lua/rua/core/init.lua b/lua/rua/core/init.lua
deleted file mode 100644
index cc191c4..0000000
--- a/lua/rua/core/init.lua
+++ /dev/null
@@ -1,14 +0,0 @@
-require("rua.core.options")
-require("rua.core.keymaps")
-require("rua.core.usercmd")
-require("rua.core.autocmd")
-
-if vim.g.neovide then
- require("rua.core.neovide")
-end
-
--- To appropriately highlight codefences returned from denols, you will
--- need to augment vim.g.markdown_fenced languages in your init.lua. Example:
-vim.g.markdown_fenced_languages = {
- "ts=typescript",
-}
diff --git a/lua/rua/core/keymaps.lua b/lua/rua/core/keymaps.lua
deleted file mode 100644
index 34d400b..0000000
--- a/lua/rua/core/keymaps.lua
+++ /dev/null
@@ -1,50 +0,0 @@
-local map = vim.keymap.set
-
-map("n", "", ":nohl", { desc = "Clear search highlights", silent = true })
-
--- increment/decrement numbers
--- map("n", "+", "", { desc = "Increment number" }) -- increment
--- map("n", "-", "", { desc = "Decrement number" }) -- decrement
-
--- window management
--- map("n", "|", "v", { desc = "Split window vertically" }) -- split window vertically
--- map("n", "_", "s", { desc = "Split window horizontally" }) -- split window horizontally
--- map("n", "se", "=", { desc = "Make splits equal size" }) -- make split windows equal width & height
-map("n", "", "j")
-map("n", "", "k")
-map("n", "", "l")
-map("n", "", "h")
-
--- move lines
-map("n", "", ":m .+1==")
-map("n", "", ":m .-2==")
-map("i", "", ":m .+1==gi")
-map("i", "", ":m .-2==gi")
-map("v", "", ":m '>+1gv=gv")
-map("v", "", ":m '<-2gv=gv")
-
-map("n", "$", "g_")
-map("v", "$", "g_")
-map("v", ">", ">gv")
-map("v", "<", "", "")
-map("n", "tt", ":term", { desc = "Open new terminal" })
-
--- buffers
-map("n", "", "bn")
-map("n", "", "bp")
-map("n", "x", "bd")
-map("n", "", "w")
-map("n", "la", "%bd|e#|bd#")
-
--- tabs
-map("n", "tc", ":tabclose", { desc = "Close current tab" })
-map("n", "tn", ":tabnew", { desc = "New tab" })
-
--- search
-map("v", "ss", ":s/\\%V", { desc = "Search and replace in visual selection" })
-
--- copy
-map({ "n", "v" }, "y", '"+y', { desc = "Copy to system clipboard" })
diff --git a/lua/rua/core/neovide.lua b/lua/rua/core/neovide.lua
deleted file mode 100644
index 4af9706..0000000
--- a/lua/rua/core/neovide.lua
+++ /dev/null
@@ -1,39 +0,0 @@
-local opt = vim.opt
-
-local function set_ime(args)
- if args.event:match("Enter$") then
- vim.g.neovide_input_ime = true
- else
- vim.g.neovide_input_ime = false
- end
-end
-
-local ime_input = vim.api.nvim_create_augroup("ime_input", { clear = true })
-
-vim.api.nvim_create_autocmd({ "InsertEnter", "InsertLeave" }, {
- group = ime_input,
- pattern = "*",
- callback = set_ime,
-})
-
-vim.api.nvim_create_autocmd({ "CmdlineEnter", "CmdlineLeave" }, {
- group = ime_input,
- pattern = "[/\\?]",
- callback = set_ime,
-})
-
-opt.guifont = "JetBrainsMono Nerd Font:h16"
--- g:neovide_transparency should be 0 if you want to unify transparency of content and title bar.
--- vim.g.neovide_transparency = 0.91
--- vim.g.neovide_background_color = "#0f1117" .. alpha()
-vim.g.transparency = 0.91
-vim.g.neovide_window_blurred = true
-vim.g.neovide_floating_blur_amount_x = 2.0
-vim.g.neovide_floating_blur_amount_y = 2.0
-vim.g.neovide_hide_mouse_when_typing = true
-vim.g.neovide_refresh_rate = 120
-vim.g.neovide_confirm_quit = true
--- vim.g.neovide_input_macos_alt_is_meta = true
-vim.g.neovide_scroll_animation_length = 0.1
-vim.g.neovide_cursor_animation_length = 0.08
-vim.g.neovide_cursor_trail_size = 0
diff --git a/lua/rua/core/options.lua b/lua/rua/core/options.lua
deleted file mode 100644
index f200e78..0000000
--- a/lua/rua/core/options.lua
+++ /dev/null
@@ -1,103 +0,0 @@
--- 获取 vim.opt 引用,方便后续使用
-local opt = vim.opt
-
--- 设置全局变量
-vim.g.mapleader = " "
-vim.g.maplocalleader = "\\"
-vim.g.dap_virtual_text = true
-vim.g.trouble_lualine = true
-
--- 修复 Markdown 缩进设置
-vim.g.markdown_recommended_style = 0
-
--- 隐藏弃用警告
-vim.g.deprecation_warnings = false
-
--- 定义调试相关的符号
-vim.fn.sign_define("DapBreakpoint", { text = "", numhl = "DapBreakpoint", texthl = "DapBreakpoint" })
-vim.fn.sign_define("DagLogPoint", { text = "", numhl = "DapLogPoint", texthl = "DapLogPoint" })
-vim.fn.sign_define("DapStopped", { text = "", numhl = "DapStopped", texthl = "DapStopped" })
-vim.fn.sign_define(
- "DapBreakpointRejected",
- { text = "", numhl = "DapBreakpointRejected", texthl = "DapBreakpointRejected" }
-)
-
--- 设置光标行选项
-vim.o.cursorlineopt = "number,line"
-
--- 设置基本选项
-opt.termguicolors = true -- 启用真彩色支持
-opt.foldmethod = "expr" -- 使用表达式进行折叠
-opt.foldexpr = "nvim_treesitter#foldexpr()" -- 使用 Treesitter 折叠表达式
-opt.foldlevel = 20 -- 初始折叠级别
-opt.ignorecase = true -- 忽略大小写
-opt.wildignore:append({ "*/node_modules/*" }) -- 忽略 node_modules 目录
-
--- 可选设置
--- opt.clipboard:append({ "unnamedplus" })
--- opt.iskeyword:append("-")
-
--- 自动缩进和滚动设置
-opt.autoindent = true -- 自动缩进
-opt.scrolloff = 3 -- 滚动时保留的行数
-opt.encoding = "utf8" -- 文件编码为 UTF-8
-opt.fileencoding = "utf8"
-opt.cursorline = true -- 高亮当前行
-opt.autowrite = true -- 自动保存
-opt.autoread = true -- 自动读取文件更改
-
--- 根据是否在 SSH 会话中设置剪贴板选项
-if not vim.env.SSH_TTY then
- opt.clipboard = "unnamedplus" -- 同步系统剪贴板
-end
-
--- 其他选项设置
-opt.completeopt = "menu,menuone,noselect" -- 补全选项
-opt.conceallevel = 2 -- 隐藏 * 标记用于粗体和斜体,但不隐藏带有替换的标记
-opt.confirm = true -- 退出修改过的缓冲区时确认保存
-opt.expandtab = true -- 使用空格代替制表符
-opt.fillchars = {
- foldopen = "",
- foldclose = "",
- fold = " ",
- foldsep = " ",
- diff = "╱",
- eob = " ",
-}
-opt.foldlevel = 99 -- 折叠级别
-opt.formatoptions = "jcroqlnt" -- 格式化选项
-opt.grepformat = "%f:%l:%c:%m" -- 搜索结果格式
-opt.grepprg = "rg --vimgrep" -- 搜索命令
-opt.inccommand = "nosplit" -- 预览增量替换
-opt.jumpoptions = "view" -- 跳转选项
-opt.laststatus = 3 -- 全局状态栏
-opt.linebreak = true -- 在合适的位置换行
--- opt.list = true -- 显示一些不可见字符(如制表符等)
-opt.mouse = "a" -- 启用鼠标模式
-opt.number = true -- 显示行号
-opt.pumblend = 10 -- 弹出菜单透明度
-opt.pumheight = 10 -- 弹出菜单最大条目数
-opt.relativenumber = true -- 显示相对行号
-opt.sessionoptions = { "buffers", "curdir", "tabpages", "winsize", "help", "globals", "skiprtp", "folds" }
-opt.shiftround = true -- 缩进取整
-opt.shiftwidth = 2 -- 缩进大小
-opt.shortmess:append({ W = true, I = true, c = true, C = true })
-opt.showmode = false -- 不显示模式,因为有状态栏
-opt.sidescrolloff = 8 -- 水平滚动时保留的列数
-opt.signcolumn = "yes" -- 始终显示符号列
-opt.smartcase = true -- 包含大写字母时不忽略大小写
-opt.smartindent = true -- 自动插入缩进
-opt.spelllang = { "en" } -- 拼写检查语言
-opt.spelloptions:append("noplainbuffer")
-opt.splitbelow = true -- 新窗口在当前窗口下方打开
-opt.splitkeep = "screen"
-opt.splitright = true -- 新窗口在当前窗口右侧打开
-opt.tabstop = 2 -- 制表符宽度
-opt.timeoutlen = vim.g.vscode and 1000 or 300 -- 快速触发 which-key
-opt.undofile = true -- 启用撤销文件
-opt.undolevels = 10000 -- 撤销级别
-opt.updatetime = 200 -- 保存交换文件并触发 CursorHold
-opt.virtualedit = "block" -- 允许光标在视觉块模式下移动到无文本处
-opt.wildmode = "longest:full,full" -- 命令行补全模式
-opt.winminwidth = 5 -- 最小窗口宽度
-opt.wrap = false -- 禁用换行
diff --git a/lua/rua/core/usercmd.lua b/lua/rua/core/usercmd.lua
deleted file mode 100644
index 293619e..0000000
--- a/lua/rua/core/usercmd.lua
+++ /dev/null
@@ -1,135 +0,0 @@
-local user_command = vim.api.nvim_create_user_command
-
--- 定义 Difft 命令
-user_command("Difft", function()
- vim.cmd("windo diffthis")
-end, {
- desc = "windo Diffthis",
-})
-
--- 定义 Diffo 命令
-user_command("Diffo", function()
- vim.cmd("windo diffoff")
-end, {
- desc = "windo Diffoff",
-})
-
--- 处理格式化相关命令的辅助函数
-local function toggle_formatting(disable_buffer_only, notify)
- if disable_buffer_only then
- vim.b.disable_autoformat = true
- else
- vim.g.disable_autoformat = true
- end
- if notify then
- vim.notify("autoformat disabled")
- end
-end
-
-local function enable_formatting()
- vim.b.disable_autoformat = false
- vim.g.disable_autoformat = false
-end
-
--- 定义 FormatDisable 命令
-user_command("FormatDisable", function(args)
- toggle_formatting(args.bang, args.bang)
-end, {
- desc = "Disable autoformat-on-save",
- bang = true,
-})
-
--- 定义 FormatEnable 命令
-user_command("FormatEnable", enable_formatting, {
- desc = "Re-enable autoformat-on-save",
-})
-
--- 定义 FormatToggle 命令
-user_command("FormatToggle", function()
- vim.b.disable_autoformat = not vim.b.disable_autoformat
- vim.g.disable_autoformat = not vim.g.disable_autoformat
- if vim.g.disable_autoformat then
- vim.notify("autoformat disabled")
- else
- vim.notify("autoformat enabled")
- end
-end, {
- desc = "Toggle autoformat-on-save",
-})
-
--- mason install command
--- create install all command
-local ensure_installed = {
- -- LSP servers
- lsp_servers = {
- "gopls",
- "lua-language-server",
- "rust-analyzer",
- "html-lsp",
- "vue-language-server", -- vue
- "vtsls", -- typescript
- "tailwindcss-language-server",
- "eslint-lsp",
- "css-lsp",
- "cssmodules-language-server",
- "json-lsp",
- "yaml-language-server",
- "docker-compose-language-service",
- "dockerfile-language-server",
- "bash-language-server",
- "clangd",
- "lemminx", -- xml svg
- "deno",
- "biome", -- formatter
- },
- -- Formatters
- formatters = {
- "prettierd", -- prettier formatter
- "stylua", -- lua formatter
- "isort", -- python formatter
- -- "black", -- python formatter
- -- "shfmt",
- "goimports",
- "gofumpt",
- "golines",
- "clang-format",
- "taplo", -- toml
- },
- -- Linters
- linters = {
- "pylint",
- },
- -- Tools
- tools = {
- "gomodifytags",
- "impl", -- go
- "delve", -- golang debug adapter
- },
-}
-
--- 扁平化 ensure_installed 列表
-local flattened_ensure_installed = {}
-for _, group in pairs(ensure_installed) do
- for _, tool in ipairs(group) do
- table.insert(flattened_ensure_installed, tool)
- end
-end
-
--- Create user command to synchronously install all Mason tools in `opts.ensure_installed`.
-vim.api.nvim_create_user_command("MasonInstallAll", function()
- -- 使用 pcall 引入 mason-registry
- local success, registry = pcall(require, "mason-registry")
- if not success then
- vim.notify("Failed to load mason-registry: " .. registry, vim.log.levels.ERROR)
- return
- end
-
- for _, tool in ipairs(flattened_ensure_installed) do
- local pkg = registry.get_package(tool)
- if not pkg:is_installed() then
- vim.cmd("MasonInstall " .. tool)
- else
- vim.notify(tool .. " is already installed", vim.log.levels.INFO)
- end
- end
-end, {})
diff --git a/lua/rua/lazy.lua b/lua/rua/lazy.lua
deleted file mode 100644
index 3d5b434..0000000
--- a/lua/rua/lazy.lua
+++ /dev/null
@@ -1,29 +0,0 @@
-local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
-if not vim.loop.fs_stat(lazypath) then
- vim.fn.system({
- "git",
- "clone",
- "--filter=blob:none",
- "https://github.com/folke/lazy.nvim.git",
- "--branch=stable", -- latest stable release
- lazypath,
- })
-end
-vim.opt.rtp:prepend(lazypath)
-
-require("lazy").setup({
- { import = "rua.plugins" },
- { import = "rua.plugins.lsp" },
- { import = "rua.plugins.lang" },
-}, {
- checker = {
- enabled = true,
- notify = false,
- },
- change_detection = {
- notify = false,
- },
- defaults = {
- lazy = true,
- },
-})
diff --git a/lua/rua/plugins/alpha.lua b/lua/rua/plugins/alpha.lua
deleted file mode 100644
index 168862a..0000000
--- a/lua/rua/plugins/alpha.lua
+++ /dev/null
@@ -1,79 +0,0 @@
-local leader = "SPC"
-local if_nil = vim.F.if_nil
-
---- @param sc string
---- @param txt string
---- @param keybind string? optional
---- @param keybind_opts table? optional
-local function button(sc, txt, keybind, keybind_opts)
- local sc_ = sc:gsub("%s", ""):gsub(leader, "")
-
- local opts = {
- position = "center",
- shortcut = sc,
- cursor = 3,
- width = 40,
- align_shortcut = "right",
- hl_shortcut = "Keyword",
- }
- if keybind then
- keybind_opts = if_nil(keybind_opts, { noremap = true, silent = true, nowait = true })
- opts.keymap = { "n", sc_, keybind, keybind_opts }
- end
-
- local function on_press()
- local key = vim.api.nvim_replace_termcodes(keybind or sc_ .. "", true, false, true)
- vim.api.nvim_feedkeys(key, "t", false)
- end
-
- return {
- type = "button",
- val = txt,
- on_press = on_press,
- opts = opts,
- }
-end
-
-return {
- "goolord/alpha-nvim",
- event = "VimEnter",
- config = function()
- local alpha = require("alpha")
- local dashboard = require("alpha.themes.dashboard")
-
- local logo = require("rua.config.logos")
- dashboard.section.header.val = logo.c
- dashboard.section.buttons.val = {
- button("SPC l", "💤 > Lazy", "Lazy"),
- button("SPC e", " > Nvim Tree", "NvimTreeToggle"),
- button("SPC m", " > Mason", "Mason"),
- -- button("SPC fw", " > Find Word", "Telescope live_grep"),
- button("SPC wr", " > Restore Session", "SessionRestore"),
- button("q", " > Quit", "qa"),
- }
- dashboard.opts.layout[1].val = 8
-
- -- Send config to alpha
- alpha.setup(dashboard.opts)
-
- -- Disable folding on alpha buffer
- vim.cmd([[autocmd FileType alpha setlocal nofoldenable]])
-
- vim.api.nvim_create_autocmd("User", {
- once = true,
- pattern = "LazyVimStarted",
- callback = function()
- local stats = require("lazy").stats()
- local ms = (math.floor(stats.startuptime * 100 + 0.5) / 100)
- dashboard.section.footer.val = "⚡ Neovim loaded "
- .. stats.loaded
- .. "/"
- .. stats.count
- .. " plugins in "
- .. ms
- .. "ms"
- pcall(vim.cmd.AlphaRedraw)
- end,
- })
- end,
-}
diff --git a/lua/rua/plugins/auto-session.lua b/lua/rua/plugins/auto-session.lua
deleted file mode 100644
index b94b5b9..0000000
--- a/lua/rua/plugins/auto-session.lua
+++ /dev/null
@@ -1,20 +0,0 @@
-return {
- "rmagatti/auto-session",
- lazy = true,
- cmd = {
- "SessionSave",
- "SessionRestore",
- },
- -- event = "VeryLazy",
- -- dependencies = {
- -- "nvim-telescope/telescope.nvim", -- Only needed if you want to use session lens
- -- },
- ---enables autocomplete for opts
- ---@module "auto-session"
- ---@type AutoSession.Config
- opts = {
- suppressed_dirs = { "~/", "~/Projects", "~/Downloads", "/" },
- auto_restore = false,
- -- log_level = 'debug',
- },
-}
diff --git a/lua/rua/plugins/autopairs.lua b/lua/rua/plugins/autopairs.lua
deleted file mode 100644
index 377381b..0000000
--- a/lua/rua/plugins/autopairs.lua
+++ /dev/null
@@ -1,28 +0,0 @@
-return {
- {
- "windwp/nvim-autopairs",
- event = "InsertEnter",
- opts = {},
- },
- {
- "windwp/nvim-ts-autotag",
- event = { "BufReadPre", "BufNewFile" },
- config = function()
- require("nvim-ts-autotag").setup({})
- end,
- },
- {
- "kylechui/nvim-surround",
- version = "*",
- event = "BufReadPre",
- config = function()
- require("nvim-surround").setup({})
- end,
- },
- {
- "folke/ts-comments.nvim",
- opts = {},
- event = "BufReadPost",
- enabled = vim.fn.has("nvim-0.10.0") == 1,
- },
-}
diff --git a/lua/rua/plugins/avante.lua b/lua/rua/plugins/avante.lua
deleted file mode 100644
index 582af67..0000000
--- a/lua/rua/plugins/avante.lua
+++ /dev/null
@@ -1,93 +0,0 @@
-return {
- "yetone/avante.nvim",
- -- event = "VeryLazy",
- lazy = true,
- version = false, -- Never set this value to "*"! Never!
- keys = {
- "aa",
- "at",
- "ar",
- "af",
- },
- cmd = {
- "AvanteAsk",
- "AvanteBuild",
- "AvanteChat",
- "AvanteClear",
- "AvanteEdit",
- "AvanteFocus",
- "AvanteRefresh",
- "AvanteStop",
- "AvanteSwitchProvider",
- "AvanteShowRepoMap",
- "AvanteToggle",
- "AvanteModels",
- },
- opts = {
- provider = "deepseek",
- vendors = {
- deepseek = {
- __inherited_from = "openai",
- api_key_name = "DEEPSEEK_API_KEY",
- endpoint = "https://api.deepseek.com",
- model = "deepseek-coder",
- max_tokens = 8192,
- },
- bbt_ds = {
- __inherited_from = "openai",
- api_key_name = "BBT_API_KEY",
- endpoint = "https://babeltower.pro/v1",
- model = "deepseek-v3:bbt",
- max_tokens = 8192,
- },
- bbt_claude = {
- __inherited_from = "openai",
- api_key_name = "BBT_API_KEY",
- endpoint = "https://babeltower.pro/v1",
- model = "claude-3-7-sonnet:claude",
- max_tokens = 8192,
- },
- },
- },
- -- if you want to build from source then do `make BUILD_FROM_SOURCE=true`
- build = "make",
- -- build = "powershell -ExecutionPolicy Bypass -File Build.ps1 -BuildFromSource false" -- for windows
- dependencies = {
- "nvim-treesitter/nvim-treesitter",
- "stevearc/dressing.nvim",
- "nvim-lua/plenary.nvim",
- "MunifTanjim/nui.nvim",
- --- The below dependencies are optional,
- -- "echasnovski/mini.pick", -- for file_selector provider mini.pick
- "nvim-telescope/telescope.nvim", -- for file_selector provider telescope
- "hrsh7th/nvim-cmp", -- autocompletion for avante commands and mentions
- "ibhagwan/fzf-lua", -- for file_selector provider fzf
- "nvim-tree/nvim-web-devicons", -- or echasnovski/mini.icons
- -- "zbirenbaum/copilot.lua", -- for providers='copilot'
- {
- -- support for image pasting
- "HakonHarnes/img-clip.nvim",
- -- event = "VeryLazy",
- opts = {
- -- recommended settings
- default = {
- embed_image_as_base64 = false,
- prompt_for_file_name = false,
- drag_and_drop = {
- insert_mode = true,
- },
- -- required for Windows users
- use_absolute_path = true,
- },
- },
- },
- {
- -- Make sure to set this up properly if you have lazy=true
- "MeanderingProgrammer/render-markdown.nvim",
- opts = {
- file_types = { "markdown", "Avante" },
- },
- ft = { "markdown", "Avante" },
- },
- },
-}
diff --git a/lua/rua/plugins/colorscheme.lua b/lua/rua/plugins/colorscheme.lua
deleted file mode 100644
index f4a59c0..0000000
--- a/lua/rua/plugins/colorscheme.lua
+++ /dev/null
@@ -1,246 +0,0 @@
-local init_lackluster_icons = function()
- -- local lackluster = require("lackluster")
- require("nvim-web-devicons").setup({
- color_icons = false,
- override = {
- ["default_icon"] = {
- -- color = lackluster.color.gray4,
- color = "#444444",
- name = "Default",
- },
- },
- })
-end
-local init_lackluster = function()
- require("ex-colors").setup({
- -- included_patterns = require("ex-colors.presets").recommended.included_patterns + {
- -- "^Cmp%u", -- hrsh7th/nvim-cmp
- -- '^GitSigns%u', -- lewis6991/gitsigns.nvim
- -- '^RainbowDelimiter%u', -- HiPhish/rainbow-delimiters.nvim
- -- },
- autocmd_patterns = {
- CmdlineEnter = {
- ["*"] = {
- "^debug%u",
- "^health%u",
- },
- },
- -- FileType = {
- -- ['Telescope*'] = {
- -- '^Telescope%u', -- nvim-telescope/telescope.nvim
- -- },
- -- },
- },
- })
- require("lackluster").setup({
- tweak_syntax = {
- string = "default",
- string_escape = "default",
- comment = "#3b3b3b",
- builtin = "default", -- builtin modules and functions
- type = "default",
- keyword = "default",
- keyword_return = "default",
- keyword_exception = "default",
- },
- tweak_background = {
- normal = "none",
- },
- })
- -- vim.cmd.colorscheme("lackluster")
- -- vim.cmd.colorscheme("lackluster-hack")
- -- vim.cmd.colorscheme("lackluster-mint")
-end
-
-return {
- -- {
- -- "catppuccin/nvim",
- -- name = "catppuccin",
- -- -- priority = 1000,
- -- -- lazy = true,
- -- config = function()
- -- require("catppuccin").setup({
- -- flavour = "macchiato", -- latte, frappe, macchiato, mocha
- -- background = { -- :h background
- -- light = "latte",
- -- dark = "mocha",
- -- },
- -- transparent_background = true, -- disables setting the background color.
- -- show_end_of_buffer = false, -- shows the '~' characters after the end of buffers
- -- term_colors = false, -- sets terminal colors (e.g. `g:terminal_color_0`)
- -- dim_inactive = {
- -- enabled = false, -- dims the background color of inactive window
- -- shade = "dark",
- -- percentage = 0.15, -- percentage of the shade to apply to the inactive window
- -- },
- -- no_italic = false, -- Force no italic
- -- no_bold = false, -- Force no bold
- -- no_underline = false, -- Force no underline
- -- styles = { -- Handles the styles of general hi groups (see `:h highlight-args`):
- -- comments = { "italic" }, -- Change the style of comments
- -- conditionals = { "italic" },
- -- loops = {},
- -- functions = {},
- -- keywords = {},
- -- strings = {},
- -- variables = {},
- -- numbers = {},
- -- booleans = {},
- -- properties = {},
- -- types = {},
- -- operators = {},
- -- -- miscs = {}, -- Uncomment to turn off hard-coded styles
- -- },
- -- color_overrides = {
- -- rosewater = "#f4dbd6",
- -- flamingo = "#f0c6c6",
- -- pink = "#f5bde6",
- -- mauve = "#B9AEE6",
- -- red = "#A87692",
- -- maroon = "#FD9491",
- -- peach = "#f5a97f",
- -- yellow = "#FCD0A1",
- -- green = "#809FA1",
- -- teal = "#8bd5ca",
- -- sky = "#91d7e3",
- -- sapphire = "#7dc4e4",
- -- blue = "#91B8E9",
- -- lavender = "#b7bdf8",
- -- text = "#DAD0E9",
- -- subtext1 = "#b8c0e0",
- -- subtext0 = "#a5adcb",
- -- overlay2 = "#939ab7",
- -- overlay1 = "#8087a2",
- -- overlay0 = "#6e738d",
- -- surface2 = "#5b6078",
- -- surface1 = "#494d64",
- -- surface0 = "#363a4f",
- -- base = "#24273a",
- -- mantle = "#1e2030",
- -- crust = "#181926",
- -- },
- -- custom_highlights = {},
- -- default_integrations = true,
- -- integrations = {
- -- cmp = true,
- -- gitsigns = true,
- -- nvimtree = true,
- -- treesitter = true,
- -- alpha = true,
- -- mini = {
- -- enabled = true,
- -- indentscope_color = "",
- -- },
- -- mason = true,
- -- markdown = true,
- -- dap = true,
- -- dap_ui = true,
- -- which_key = false,
- -- native_lsp = {
- -- enabled = true,
- -- virtual_text = {
- -- errors = { "italic" },
- -- hints = { "italic" },
- -- warnings = { "italic" },
- -- information = { "italic" },
- -- ok = { "italic" },
- -- },
- -- underlines = {
- -- errors = { "underline" },
- -- hints = { "underline" },
- -- warnings = { "underline" },
- -- information = { "underline" },
- -- ok = { "underline" },
- -- },
- -- inlay_hints = {
- -- background = true,
- -- },
- -- },
- -- telescope = {
- -- enabled = true,
- -- -- style = "nvchad"
- -- },
- -- -- For more plugins integrations please scroll down (https://github.com/catppuccin/nvim#integrations)
- -- },
- -- })
- -- -- vim.cmd.colorscheme("catppuccin")
- -- end,
- -- },
- {
- "nvim-lualine/lualine.nvim",
- dependencies = { "nvim-tree/nvim-web-devicons" },
- event = "VimEnter",
- config = function()
- local lualine = require("lualine")
-
- -- configure lualine with modified theme
- lualine.setup({
- options = {
- -- theme = "catppuccin",
- -- theme = "lackluster",
- -- theme = "rei",
- component_separators = { left = "", right = "" },
- section_separators = { left = "", right = "" },
- },
- extensions = { "quickfix", "trouble", "mason", "lazy", "nvim-tree" },
- sections = {
- lualine_x = {
- { "encoding" },
- { "fileformat" },
- { "filetype" },
- },
- -- lualine_y = {
- -- { "progress", color = { bg = "#de9aa3", fg = "#000000" } },
- -- },
- -- lualine_z = {
- -- { "location", color = { bg = "#eac8c7" } },
- -- },
- },
- })
- end,
- },
- {
- "aileot/ex-colors.nvim",
- lazy = true,
- cmd = "ExColors",
- ---@type ExColors.Config
- opts = {},
- },
- {
- "nvim-tree/nvim-web-devicons",
- lazy = true,
- init = init_lackluster_icons,
- },
- {
- "slugbyte/lackluster.nvim",
- lazy = true,
- -- priority = 1000,
- -- init = init_lackluster,
- },
- -- {
- -- -- "wheat-thin-wiens/rei.nvim",
- -- "DefectingCat/rei.nvim",
- -- priority = 1000,
- -- -- lazy = true,
- -- config = function()
- -- require("rei").setup({
- -- styles = {
- -- comments = { italic = true },
- -- keywords = {},
- -- identifiers = {},
- -- functions = { italic = true, bold = true },
- -- variables = {},
- -- booleans = {},
- -- loops = { italic = true },
- -- },
- -- integrations = {
- -- telescope = "borderless", -- 'borderless' theme also available, leave as true for default theme
- -- },
- -- transparency = true, -- Enables / Disables background transparency
- -- terminal_colors = true,
- -- highlight_overrides = {},
- -- })
- -- -- vim.cmd.colorscheme("rei")
- -- end,
- -- },
-}
diff --git a/lua/rua/plugins/dap.lua b/lua/rua/plugins/dap.lua
deleted file mode 100644
index 1b427f8..0000000
--- a/lua/rua/plugins/dap.lua
+++ /dev/null
@@ -1,91 +0,0 @@
----@param config {args?:string[]|fun():string[]?}
-local function get_args(config)
- local args = type(config.args) == "function" and (config.args() or {}) or config.args or {}
- config = vim.deepcopy(config)
- ---@cast args string[]
- config.args = function()
- local new_args = vim.fn.input("Run with args: ", table.concat(args, " ")) --[[@as string]]
- return vim.split(vim.fn.expand(new_args) --[[@as string]], " ")
- end
- return config
-end
-
-return {
- {
- "mfussenegger/nvim-dap",
- recommended = true,
- desc = "Debugging support. Requires language specific adapters to be configured. (see lang extras)",
-
- dependencies = {
- "rcarriga/nvim-dap-ui",
- -- virtual text for the debugger
- {
- "theHamsta/nvim-dap-virtual-text",
- opts = {},
- },
- },
-
- config = function()
- vim.api.nvim_set_hl(0, "DapStoppedLine", { default = true, link = "Visual" })
-
- -- setup dap config by VsCode launch.json file
- local vscode = require("dap.ext.vscode")
- local json = require("plenary.json")
- vscode.json_decode = function(str)
- return vim.json.decode(json.json_strip_comments(str))
- end
-
- -- Extends dap.configurations with entries read from .vscode/launch.json
- if vim.fn.filereadable(".vscode/launch.json") then
- vscode.load_launchjs()
- end
- end,
-
- -- stylua: ignore
- keys = {
- -- { "d", "", desc = "+debug", mode = {"n", "v"} },
- { "dB", function() require("dap").set_breakpoint(vim.fn.input('Breakpoint condition: ')) end, desc = "Breakpoint Condition" },
- { "db", function() require("dap").toggle_breakpoint() end, desc = "Toggle Breakpoint" },
- { "dc", function() require("dap").continue() end, desc = "Continue" },
- { "da", function() require("dap").continue({ before = get_args }) end, desc = "Run with Args" },
- { "dC", function() require("dap").run_to_cursor() end, desc = "Run to Cursor" },
- { "dg", function() require("dap").goto_() end, desc = "Go to Line (No Execute)" },
- { "di", function() require("dap").step_into() end, desc = "Step Into" },
- { "dj", function() require("dap").down() end, desc = "Down" },
- { "dk", function() require("dap").up() end, desc = "Up" },
- { "dl", function() require("dap").run_last() end, desc = "Run Last" },
- { "do", function() require("dap").step_out() end, desc = "Step Out" },
- { "dO", function() require("dap").step_over() end, desc = "Step Over" },
- { "dp", function() require("dap").pause() end, desc = "Pause" },
- { "dr", function() require("dap").repl.toggle() end, desc = "Toggle REPL" },
- { "ds", function() require("dap").session() end, desc = "Session" },
- { "dt", function() require("dap").terminate() end, desc = "Terminate" },
- { "dw", function() require("dap.ui.widgets").hover() end, desc = "Widgets" },
- },
- },
- -- fancy UI for the debugger
- {
- "rcarriga/nvim-dap-ui",
- dependencies = { "nvim-neotest/nvim-nio" },
- -- stylua: ignore
- keys = {
- { "du", function() require("dapui").toggle({ }) end, desc = "Dap UI" },
- { "de", function() require("dapui").eval() end, desc = "Eval", mode = {"n", "v"} },
- },
- opts = {},
- config = function(_, opts)
- local dap = require("dap")
- local dapui = require("dapui")
- dapui.setup(opts)
- dap.listeners.after.event_initialized["dapui_config"] = function()
- dapui.open({})
- end
- dap.listeners.before.event_terminated["dapui_config"] = function()
- dapui.close({})
- end
- dap.listeners.before.event_exited["dapui_config"] = function()
- dapui.close({})
- end
- end,
- },
-}
diff --git a/lua/rua/plugins/formatting.lua b/lua/rua/plugins/formatting.lua
deleted file mode 100644
index 24451c7..0000000
--- a/lua/rua/plugins/formatting.lua
+++ /dev/null
@@ -1,149 +0,0 @@
-return {
- "stevearc/conform.nvim",
- event = { "BufReadPre", "BufNewFile" },
- config = function()
- local conform = require("conform")
-
- conform.setup({
- formatters_by_ft = {
- sql = { "sqlfluff" },
- lua = { "stylua" },
- go = { "goimports", "gofumpt" },
- sh = { "shfmt" },
- javascript = { "prettierd" },
- typescript = { "prettierd" },
- javascriptreact = { "prettierd" },
- typescriptreact = { "prettierd" },
- svelte = { "prettierd" },
- css = { "prettierd" },
- less = { "prettierd" },
- scss = { "prettierd" },
- html = { "prettierd" },
- json = { "prettierd" },
- yaml = { "prettierd" },
- ["markdown"] = { "prettierd" },
- ["markdown.mdx"] = { "prettierd" },
- graphql = { "prettierd" },
- python = { "isort", "black" },
- php = { "intelephense" },
- c = { "clang-format" },
- rust = { "rustfmt", lsp_format = "fallback" },
- toml = { "taplo" },
- -- Use the "*" filetype to run formatters on all filetypes.
- -- ["*"] = { "codespell" },
- -- Use the "_" filetype to run formatters on filetypes that don't
- -- have other formatters configured.
- ["_"] = { "trim_whitespace" },
- },
- default_format_opts = {
- lsp_format = "fallback",
- },
- format_on_save = function(bufnr)
- -- Disable with a global or buffer-local variable
- if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then
- return
- end
- return { timeout_ms = 1000, lsp_fallback = true }
- end,
- -- If this is set, Conform will run the formatter asynchronously after save.
- -- It will pass the table to conform.format().
- -- This can also be a function that returns the table.
- format_after_save = function(bufnr)
- -- Disable with a global or buffer-local variable
- if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then
- return { lsp_fallback = false }
- end
- return { lsp_fallback = true }
- end,
- notify_on_error = true,
- lang_to_ext = {
- bash = "sh",
- sql = "sql",
- c_sharp = "cs",
- elixir = "exs",
- latex = "tex",
- markdown = "md",
- python = "py",
- ruby = "rb",
- teal = "tl",
- },
- options = {
- -- Use a specific prettierd parser for a filetype
- -- Otherwise, prettierd will try to infer the parser from the file name
- ft_parsers = {
- -- javascript = "babel",
- -- javascriptreact = "babel",
- -- typescript = "typescript",
- -- typescriptreact = "typescript",
- -- vue = "vue",
- -- css = "css",
- -- scss = "scss",
- -- less = "less",
- -- html = "html",
- -- json = "json",
- -- jsonc = "json",
- -- yaml = "yaml",
- -- markdown = "markdown",
- -- ["markdown.mdx"] = "mdx",
- -- graphql = "graphql",
- -- handlebars = "glimmer",
- },
- -- Use a specific prettierd parser for a file extension
- ext_parsers = {
- -- qmd = "markdown",
- },
- },
- formatters = {
- injected = {
- options = {
- ignore_errors = true,
- lang_to_formatters = {
- sql = { "sqlfluff" },
- },
- lang_to_ext = {
- sql = "sql",
- },
- },
- },
- sqlfluff = {
- command = "sqlfluff",
- args = {
- "fix",
- "--dialect",
- "sqlite",
- "--disable-progress-bar",
- "-f",
- "-n",
- "-",
- },
- stdin = true,
- },
- rustfmt = {
- options = {
- -- The default edition of Rust to use when no Cargo.toml file is found
- default_edition = "2021",
- },
- },
- -- # Example of using dprint only when a dprint.json file is present
- -- dprint = {
- -- condition = function(ctx)
- -- return vim.fs.find({ "dprint.json" }, { path = ctx.filename, upward = true })[1]
- -- end,
- -- },
- --
- -- # Example of using shfmt with extra args
- -- shfmt = {
- -- prepend_args = { "-i", "2", "-ci" },
- -- },
- },
- })
-
- vim.keymap.set({ "n", "v" }, "fm", function()
- conform.format({
- lsp_fallback = true,
- timeout_ms = 1000,
- })
- end, { desc = "Format file or range (in visual mode)" })
- vim.keymap.set("n", "tf", " FormatToggle ", { desc = "Re-enable autoformat-on-save" })
- end,
-}
diff --git a/lua/rua/plugins/git.lua b/lua/rua/plugins/git.lua
deleted file mode 100644
index 7d9a20e..0000000
--- a/lua/rua/plugins/git.lua
+++ /dev/null
@@ -1,101 +0,0 @@
-return {
- {
- "sindrets/diffview.nvim",
- keys = {
- { "gd", " DiffviewOpen ", desc = "Open diff view" },
- },
- opts = {
- enhanced_diff_hl = true,
- view = {
- merge_tool = {
- layout = "diff3_mixed",
- disable_diagnostics = true,
- },
- },
- keymaps = {
- view = {
- [""] = false,
- },
- file_panel = {
- [""] = false,
- },
- file_history_panel = {
- [""] = false,
- },
- option_panel = {
- [""] = false,
- },
- },
- },
- },
- {
- "NeogitOrg/neogit",
- dependencies = {
- "nvim-lua/plenary.nvim", -- required
- "sindrets/diffview.nvim", -- optional - Diff integration
- "nvim-telescope/telescope.nvim", -- optional
- },
- keys = {
- { "gg", " Neogit ", desc = "Open Neogit" },
- { "gh", " DiffviewFileHistory % ", desc = "Open current file history" },
- { "gc", " DiffviewClose ", desc = "Close Diffview" },
- },
- opts = {
- console_timeout = 10000,
- },
- },
- {
- "lewis6991/gitsigns.nvim",
- event = { "BufReadPre", "BufNewFile" },
- cond = function()
- return vim.fn.isdirectory(".git") == 1
- end,
- opts = {
- on_attach = function(bufnr)
- local gs = package.loaded.gitsigns
-
- local function map(mode, l, r, desc)
- vim.keymap.set(mode, l, r, { buffer = bufnr, desc = desc })
- end
-
- -- Navigation
- map("n", "]h", gs.next_hunk, "Next Hunk")
- map("n", "[h", gs.prev_hunk, "Prev Hunk")
-
- -- Actions
- map("n", "hs", gs.stage_hunk, "Stage hunk")
- map("n", "hr", gs.reset_hunk, "Reset hunk")
- map("v", "hs", function()
- gs.stage_hunk({ vim.fn.line("."), vim.fn.line("v") })
- end, "Stage hunk")
- map("v", "hr", function()
- gs.reset_hunk({ vim.fn.line("."), vim.fn.line("v") })
- end, "Reset hunk")
-
- map("n", "hS", gs.stage_buffer, "Stage buffer")
- map("n", "hR", gs.reset_buffer, "Reset buffer")
-
- map("n", "hu", gs.undo_stage_hunk, "Undo stage hunk")
-
- map("n", "hp", gs.preview_hunk, "Preview hunk")
-
- map("n", "hb", function()
- gs.blame_line({ full = true })
- end, "Blame line")
- map("n", "hB", gs.toggle_current_line_blame, "Toggle line blame")
-
- map("n", "hd", gs.diffthis, "Diff this")
- map("n", "hD", function()
- gs.diffthis("~")
- end, "Diff this ~")
-
- -- Text object
- map({ "o", "x" }, "ih", ":Gitsigns select_hunk", "Gitsigns select hunk")
- map("n", "gi", ":Gitsigns", "Gitsigns")
- end,
- preview_config = {
- border = "solid",
- },
- },
- },
-}
diff --git a/lua/rua/plugins/hop.lua b/lua/rua/plugins/hop.lua
deleted file mode 100644
index f2d28f3..0000000
--- a/lua/rua/plugins/hop.lua
+++ /dev/null
@@ -1,38 +0,0 @@
-return {
- "phaazon/hop.nvim",
- branch = "v2",
- keys = {
- {
- "f",
- function()
- local hop = require("hop")
- local directions = require("hop.hint").HintDirection
- hop.hint_char1({ direction = directions.AFTER_CURSOR, current_line_only = false })
- end,
- desc = "Hop motion search in current line after cursor",
- mode = { "n", "v" },
- },
- {
- "F",
- function()
- local hop = require("hop")
- local directions = require("hop.hint").HintDirection
- hop.hint_char1({ direction = directions.BEFORE_CURSOR, current_line_only = false })
- end,
- desc = "Hop motion search in current line before cursor",
- mode = { "n", "v" },
- },
- {
- "",
- function()
- local hop = require("hop")
- hop.hint_words({ current_line_only = false })
- end,
- desc = "Hop motion search words after cursor",
- mode = { "n", "v" },
- },
- },
- opts = {
- keys = "etovxqpdygfblzhckisuran",
- },
-}
diff --git a/lua/rua/plugins/init.lua b/lua/rua/plugins/init.lua
deleted file mode 100644
index a0c2c9f..0000000
--- a/lua/rua/plugins/init.lua
+++ /dev/null
@@ -1,3 +0,0 @@
-return {
- "nvim-lua/plenary.nvim", -- lua functions that many plugins use
-}
diff --git a/lua/rua/plugins/lang/go.lua b/lua/rua/plugins/lang/go.lua
deleted file mode 100644
index a73a7d7..0000000
--- a/lua/rua/plugins/lang/go.lua
+++ /dev/null
@@ -1,7 +0,0 @@
-return {
- {
- "leoluz/nvim-dap-go",
- ft = "go",
- opts = {},
- },
-}
diff --git a/lua/rua/plugins/lang/json.lua b/lua/rua/plugins/lang/json.lua
deleted file mode 100644
index 70a3075..0000000
--- a/lua/rua/plugins/lang/json.lua
+++ /dev/null
@@ -1,3 +0,0 @@
-return {
- { "b0o/schemastore.nvim", version = false }, -- json schema store
-}
diff --git a/lua/rua/plugins/lang/markdown.lua b/lua/rua/plugins/lang/markdown.lua
deleted file mode 100644
index 171a9a4..0000000
--- a/lua/rua/plugins/lang/markdown.lua
+++ /dev/null
@@ -1,58 +0,0 @@
-return {
- {
- "iamcco/markdown-preview.nvim",
- cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" },
- build = function()
- require("lazy").load({ plugins = { "markdown-preview.nvim" } })
- vim.fn["mkdp#util#install"]()
- end,
- keys = {
- {
- "cp",
- ft = "markdown",
- "MarkdownPreviewToggle",
- desc = "Markdown Preview",
- },
- },
- config = function()
- vim.cmd([[do FileType]])
- end,
- },
- -- {
- -- "OXY2DEV/markview.nvim",
- -- ft = "markdown",
- -- },
- {
- "MeanderingProgrammer/render-markdown.nvim",
- opts = {
- file_types = { "markdown", "norg", "rmd", "org" },
- code = {
- sign = false,
- width = "block",
- right_pad = 1,
- },
- heading = {
- sign = false,
- icons = {},
- },
- },
- ft = { "markdown", "norg", "rmd", "org" },
- config = function(_, opts)
- require("render-markdown").setup(opts)
- -- LazyVim.toggle.map("um", {
- -- name = "Render Markdown",
- -- get = function()
- -- return require("render-markdown.state").enabled
- -- end,
- -- set = function(enabled)
- -- local m = require("render-markdown")
- -- if enabled then
- -- m.enable()
- -- else
- -- m.disable()
- -- end
- -- end,
- -- })
- end,
- },
-}
diff --git a/lua/rua/plugins/lang/rust.lua b/lua/rua/plugins/lang/rust.lua
deleted file mode 100644
index 14b1a0e..0000000
--- a/lua/rua/plugins/lang/rust.lua
+++ /dev/null
@@ -1,69 +0,0 @@
-local rok, rust_settings = pcall(require, "rua.config.rust-analyzer")
-
-if not rok then
- return {}
-else
- return {
- {
- "Saecki/crates.nvim",
- event = { "BufRead Cargo.toml" },
- keys = {
- {
- "cu",
- function()
- require("crates").upgrade_all_crates()
- end,
- desc = "Update crates",
- },
- },
- opts = {
- completion = {
- cmp = { enabled = true },
- },
- },
- },
- {
- "mrcjkb/rustaceanvim",
- version = "^6", -- Recommended
- ft = { "rust" },
- opts = {
- server = {
- on_attach = function(_, bufnr)
- local map = vim.keymap.set
- local opts = { buffer = bufnr, silent = true }
- map("n", "ca", function()
- vim.cmd.RustLsp("codeAction")
- end, { desc = "Code Action", buffer = bufnr })
- map("n", "da", function()
- vim.cmd.RustLsp("debuggables")
- end, { desc = "Rust Debuggables", buffer = bufnr })
- map("n", "gh", function()
- vim.cmd.RustLsp({ "hover", "actions" })
- end, { silent = true, buffer = bufnr })
- opts.desc = "Show LSP references"
- map("n", "gr", "Telescope lsp_references", opts) -- show definition, references
- opts.desc = "Go to declaration"
- map("n", "gD", vim.lsp.buf.declaration, opts) -- go to declaration
- opts.desc = "Show LSP definitions"
- map("n", "gd", "Telescope lsp_definitions", opts) -- show lsp definitions
- opts.desc = "Show LSP implementations"
- map("n", "gi", "Telescope lsp_implementations", opts) -- show lsp implementations
- opts.desc = "Show LSP type definitions"
- map("n", "gt", "Telescope lsp_type_definitions", opts) -- show lsp type definitions
- end,
- default_settings = rust_settings.settings,
- },
- },
- config = function(_, opts)
- vim.g.rustaceanvim = vim.tbl_deep_extend("keep", vim.g.rustaceanvim or {}, opts or {})
- if vim.fn.executable("rust-analyzer") == 0 then
- print("**rust-analyzer** not found in PATH, please install it.\nhttps://rust-analyzer.github.io/")
- -- LazyVim.error(
- -- "**rust-analyzer** not found in PATH, please install it.\nhttps://rust-analyzer.github.io/",
- -- { title = "rustaceanvim" }
- -- )
- end
- end,
- },
- }
-end
diff --git a/lua/rua/plugins/lsp/lspconfig.lua b/lua/rua/plugins/lsp/lspconfig.lua
deleted file mode 100644
index 1ca50d1..0000000
--- a/lua/rua/plugins/lsp/lspconfig.lua
+++ /dev/null
@@ -1,334 +0,0 @@
-return {
- {
- "neovim/nvim-lspconfig",
- dependencies = {
- { "hrsh7th/cmp-nvim-lsp" },
- -- { "antosha417/nvim-lsp-file-operations", config = true },
- -- { "folke/neodev.nvim", opts = {} },
- "mason-org/mason-lspconfig.nvim",
- },
- event = "VeryLazy",
- opts = { document_highlight = { enabled = false } },
- config = function()
- local lspconfig = require("lspconfig")
- local mason_lspconfig = require("mason-lspconfig")
- -- local cmp_nvim_lsp = require("cmp_nvim_lsp")
- local map = vim.keymap.set -- for conciseness
-
- vim.api.nvim_create_autocmd("LspAttach", {
- group = vim.api.nvim_create_augroup("UserLspConfig", {}),
- callback = function(ev)
- local opts = { buffer = ev.buf, silent = true }
-
- opts.desc = "Show LSP references"
- map("n", "gr", function()
- require("telescope.builtin").lsp_references()
- end, opts) -- show definition, references
-
- opts.desc = "Go to declaration"
- map("n", "gD", vim.lsp.buf.declaration, opts) -- go to declaration
-
- opts.desc = "Show LSP definitions"
- -- map("n", "gd", "Telescope lsp_definitions", opts) -- show lsp definitions
- -- map("n", "gd", "lua vim.lsp.buf.definition()", opts) -- show lsp definitions
- map("n", "gd", function()
- require("telescope.builtin").lsp_definitions()
- end, opts) -- show lsp definitions
-
- opts.desc = "Show LSP implementations"
- -- map("n", "gi", "Telescope lsp_implementations", opts) -- show lsp implementations
- map("n", "gi", function()
- require("telescope.builtin").lsp_implementations()
- end, opts) -- show lsp implementations
-
- opts.desc = "Show LSP type definitions"
- -- map("n", "gt", "Telescope lsp_type_definitions", opts) -- show lsp type definitions
- map("n", "gt", function()
- require("telescope.builtin").lsp_type_definitions()
- end, opts) -- show lsp type definitions
-
- opts.desc = "See available code actions"
- map({ "n", "v" }, "ca", vim.lsp.buf.code_action, opts) -- see available code actions, in visual mode will apply to selection
-
- opts.desc = "Smart rename"
- map("n", "rn", vim.lsp.buf.rename, opts) -- smart rename
-
- opts.desc = "Show buffer diagnostics"
- -- map("n", "D", "Telescope diagnostics bufnr=0", opts) -- show diagnostics for file
- map("n", "D", function()
- require("telescope.builtin").diagnostics()
- end, opts) -- show diagnostics for file
-
- -- opts.desc = "Show line diagnostics"
- -- map("n", "d", vim.diagnostic.open_float, opts) -- show diagnostics for line
-
- opts.desc = "Go to previous diagnostic"
- map("n", "[d", vim.diagnostic.goto_prev, opts) -- jump to previous diagnostic in buffer
-
- opts.desc = "Go to next diagnostic"
- map("n", "]d", vim.diagnostic.goto_next, opts) -- jump to next diagnostic in buffer
-
- opts.desc = "Show documentation for what is under cursor"
- opts.silent = true
- map("n", "gh", vim.lsp.buf.hover, opts) -- show documentation for what is under cursor
-
- opts.desc = "Restart LSP"
- map("n", "rs", ":LspRestart", opts) -- mapping to restart lsp if necessary
- end,
- })
-
- -- local capabilities = cmp_nvim_lsp.default_capabilities()
-
- local signs = { Error = " ", Warn = " ", Hint = " ", Info = " " }
- for type, icon in pairs(signs) do
- local hl = "DiagnosticSign" .. type
- vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" })
- end
-
- mason_lspconfig.setup({
- automatic_enable = {
- exclude = {
- "biome",
- "dockerls",
- "tailwindcss",
- "rust_analyzer",
- "taplo",
- "denols",
- "vtsls",
- "jsonls",
- "lua_ls",
- },
- },
- })
- vim.lsp.enable("biome")
- vim.lsp.config("biome", {
- settings = {
- cmd = { "biome", "lsp-proxy" },
- filetypes = {
- "astro",
- "css",
- "graphql",
- "javascript",
- "javascriptreact",
- "json",
- "jsonc",
- "svelte",
- "typescript",
- "typescript.tsx",
- "typescriptreact",
- "vue",
- "markdown",
- },
- single_file_support = true,
- },
- })
- vim.lsp.enable("dockerls")
- vim.lsp.config("dockerls", {
- settings = {
- docker = {
- languageserver = {
- formatter = {
- ignoreMultilineInstructions = true,
- },
- },
- },
- },
- })
- vim.lsp.enable("tailwindcss")
- vim.lsp.config("tailwindcss", {
- settings = require("rua.config.tailwindcss"),
- })
- -- vim.lsp.config("rust_analyzer", {})
- vim.lsp.enable("taplo")
- vim.lsp.config("taplo", {
- settings = {
- keys = {
- {
- "gh",
- function()
- if vim.fn.expand("%:t") == "Cargo.toml" and require("crates").popup_available() then
- require("crates").show_popup()
- else
- vim.lsp.buf.hover()
- end
- end,
- desc = "Show Crate Documentation",
- },
- },
- },
- })
- vim.lsp.enable("denols")
- vim.lsp.config("denols", {
- settings = {
- root_dir = lspconfig.util.root_pattern("deno.json", "deno.jsonc"),
- },
- })
- local vtsls_settings = require("rua.config.vtsls")
- vim.lsp.enable("vtsls")
- vim.lsp.config("vtsls", vtsls_settings)
- vim.lsp.enable("jsonls")
- vim.lsp.config("jsonls", {
- settings = {
- json = {
- format = {
- enable = true,
- },
- validate = { enable = true },
- },
- },
- on_new_config = function(new_config)
- new_config.settings.json.schemas = new_config.settings.json.schemas or {}
- vim.list_extend(new_config.settings.json.schemas, require("schemastore").json.schemas())
- end,
- })
- vim.lsp.enable("lua_ls")
- vim.lsp.config("lua_ls", {
- settings = {
- Lua = {
- diagnostics = {
- globals = { "vim" },
- },
- completion = {
- callSnippet = "Replace",
- },
- },
- Luau = {
- diagnostics = {
- globals = { "vim" },
- },
- completion = {
- callSnippet = "Replace",
- },
- },
- },
- })
-
- -- Nvim 0.11+ (see vim.lsp.config)
- -- vim.lsp.config('rust_analyzer', {
- -- -- Server-specific settings. See `:help lsp-quickstart`
- -- settings = {
- -- ['rust-analyzer'] = {},
- -- },
- -- })
- -- Nvim 0.10 (legacy, not supported)
- -- local lspconfig = require('lspconfig')
- -- lspconfig.rust_analyzer.setup {
- -- -- Server-specific settings. See `:help lspconfig-setup`
- -- settings = {
- -- ['rust-analyzer'] = {},
- -- },
- -- }
- -- mason_lspconfig.setup_handlers({
- -- -- default handler for installed servers
- -- function(server_name)
- -- lspconfig[server_name].setup({
- -- capabilities = capabilities,
- -- })
- -- end,
- -- ["biome"] = function()
- -- lspconfig["biome"].setup({
- -- capabilities = capabilities,
- -- settings = {
- -- cmd = { "biome", "lsp-proxy" },
- -- filetypes = {
- -- "astro",
- -- "css",
- -- "graphql",
- -- "javascript",
- -- "javascriptreact",
- -- "json",
- -- "jsonc",
- -- "svelte",
- -- "typescript",
- -- "typescript.tsx",
- -- "typescriptreact",
- -- "vue",
- -- "markdown",
- -- },
- -- single_file_support = true,
- -- },
- -- })
- -- end,
- -- ["dockerls"] = function()
- -- lspconfig["dockerls"].setup({
- -- settings = {
- -- docker = {
- -- languageserver = {
- -- formatter = {
- -- ignoreMultilineInstructions = true,
- -- },
- -- },
- -- },
- -- },
- -- })
- -- end,
- -- ["tailwindcss"] = function()
- -- lspconfig["tailwindcss"].setup(require("rua.config.tailwindcss"))
- -- end,
- -- ["rust_analyzer"] = function()
- -- -- lspconfig["rust_analyzer"].setup(require("rua.config.rust-analyzer"))
- -- end,
- -- ["taplo"] = function()
- -- lspconfig["taplo"].setup({
- -- keys = {
- -- {
- -- "gh",
- -- function()
- -- if vim.fn.expand("%:t") == "Cargo.toml" and require("crates").popup_available() then
- -- require("crates").show_popup()
- -- else
- -- vim.lsp.buf.hover()
- -- end
- -- end,
- -- desc = "Show Crate Documentation",
- -- },
- -- },
- -- })
- -- end,
- -- ["denols"] = function()
- -- lspconfig["denols"].setup({
- -- -- on_attach = on_attach,
- -- capabilities = capabilities,
- -- root_dir = lspconfig.util.root_pattern("deno.json", "deno.jsonc"),
- -- })
- -- end,
- -- ["vtsls"] = function()
- -- lspconfig["vtsls"].setup(require("rua.config.vtsls"))
- -- map("n", "co", " OrganizeImports ", { desc = "Organize imports" })
- -- end,
- -- ["jsonls"] = function()
- -- lspconfig["jsonls"].setup({
- -- -- lazy-load schemastore when needed
- -- on_new_config = function(new_config)
- -- new_config.settings.json.schemas = new_config.settings.json.schemas or {}
- -- vim.list_extend(new_config.settings.json.schemas, require("schemastore").json.schemas())
- -- end,
- -- settings = {
- -- json = {
- -- format = {
- -- enable = true,
- -- },
- -- validate = { enable = true },
- -- },
- -- },
- -- })
- -- end,
- -- ["lua_ls"] = function()
- -- lspconfig["lua_ls"].setup({
- -- capabilities = capabilities,
- -- settings = {
- -- Lua = {
- -- diagnostics = {
- -- globals = { "vim" },
- -- },
- -- completion = {
- -- callSnippet = "Replace",
- -- },
- -- },
- -- },
- -- })
- -- end,
- -- })
- end,
- },
-}
diff --git a/lua/rua/plugins/lsp/mason.lua b/lua/rua/plugins/lsp/mason.lua
deleted file mode 100644
index e8d8c50..0000000
--- a/lua/rua/plugins/lsp/mason.lua
+++ /dev/null
@@ -1,31 +0,0 @@
-return {
- {
- "mason-org/mason.nvim",
- -- event = "VeryLazy",
- cmd = {
- "Mason",
- "MasonUpdate",
- "MasonInstall",
- "MasonUninstall",
- "MasonUninstallAll",
- "MasonLog",
- },
- config = function()
- local mason = require("mason")
-
- -- enable mason and configure icons
- mason.setup({
- ui = {
- icons = {
- package_installed = "✓",
- package_pending = "➜",
- package_uninstalled = "✗",
- },
- },
- })
- end,
- },
- {
- "mason-org/mason-registry",
- },
-}
diff --git a/lua/rua/plugins/nvim-cmp.lua b/lua/rua/plugins/nvim-cmp.lua
deleted file mode 100644
index 51c9d25..0000000
--- a/lua/rua/plugins/nvim-cmp.lua
+++ /dev/null
@@ -1,84 +0,0 @@
-return {
- {
- "hrsh7th/nvim-cmp",
- event = "InsertEnter",
- dependencies = {
- "hrsh7th/cmp-buffer", -- source for text in buffer
- "hrsh7th/cmp-path", -- source for file system paths
- { "petertriho/cmp-git", opts = {} }, -- source for git
- {
- "L3MON4D3/LuaSnip", -- snippet
- -- follow latest release.
- version = "v2.*", -- Replace by the latest released major (first number of latest release)
- -- install jsregexp (optional!).
- build = "make install_jsregexp",
- },
- "saadparwaiz1/cmp_luasnip", -- for autocompletion
- "rafamadriz/friendly-snippets", -- useful snippets
- "onsails/lspkind.nvim", -- vs-code like pictograms
- { "roobert/tailwindcss-colorizer-cmp.nvim", opts = {} }, -- tailwind css
- },
- config = function()
- local cmp = require("cmp")
- local luasnip = require("luasnip")
- local lspkind = require("lspkind")
-
- -- loads vscode style snippets from installed plugins (e.g. friendly-snippets)
- require("luasnip.loaders.from_vscode").lazy_load()
-
- -- cmp formatting.format
- local format_kinds = lspkind.cmp_format({
- maxwidth = 50,
- ellipsis_char = "...",
- })
-
- cmp.setup({
- completion = {
- completeopt = "menu,menuone,preview,noselect",
- },
- snippet = { -- configure how nvim-cmp interacts with snippet engine
- expand = function(args)
- luasnip.lsp_expand(args.body)
- end,
- },
- mapping = cmp.mapping.preset.insert({
- -- [""] = cmp.mapping.select_prev_item(), -- previous suggestion
- -- [""] = cmp.mapping.select_next_item(), -- next suggestion
- [""] = cmp.mapping.scroll_docs(-4),
- [""] = cmp.mapping.scroll_docs(4),
- [""] = cmp.mapping.complete(), -- show completion suggestions
- [""] = cmp.mapping.abort(), -- close completion window
- [""] = cmp.mapping.confirm({ select = true }),
- }),
- -- sources for autocompletion
- sources = cmp.config.sources({
- { name = "nvim_lsp" },
- { name = "luasnip" }, -- snippets
- { name = "buffer" }, -- text within current buffer
- { name = "path" }, -- file system paths
- { name = "crates" }, -- rust crates
- { name = "git" },
- }),
-
- ---@diagnostic disable-next-line: missing-fields
- formatting = {
- format = function(entry, item)
- format_kinds(entry, item) -- add icons
- return require("tailwindcss-colorizer-cmp").formatter(entry, item)
- end,
- },
- })
- end,
- },
- {
- "supermaven-inc/supermaven-nvim",
- event = "BufReadPost",
- config = function()
- local platform = vim.loop.os_uname().sysname
- if platform == "FreeBSD" then
- return
- end
- require("supermaven-nvim").setup({})
- end,
- },
-}
diff --git a/lua/rua/plugins/nvim-tree.lua b/lua/rua/plugins/nvim-tree.lua
deleted file mode 100644
index c9b1ba8..0000000
--- a/lua/rua/plugins/nvim-tree.lua
+++ /dev/null
@@ -1,67 +0,0 @@
-return {
- "nvim-tree/nvim-tree.lua",
- dependencies = {
- { "nvim-tree/nvim-web-devicons" },
- { "antosha417/nvim-lsp-file-operations", config = true },
- },
- lazy = true,
- -- event = "VeryLazy",
- cmd = {
- "NvimTreeFindFileToggle",
- },
- keys = {
- { "e", "NvimTreeFindFileToggle", desc = "Toggle file explorer on current file" },
- },
- config = function()
- local nvimtree = require("nvim-tree")
-
- -- recommended settings from nvim-tree documentation
- vim.g.loaded_netrw = 1
- vim.g.loaded_netrwPlugin = 1
-
- nvimtree.setup({
- view = {
- width = 35,
- relativenumber = false,
- number = false,
- side = "right",
- },
- update_focused_file = {
- enable = true,
- update_root = {
- enable = false,
- },
- },
- -- change folder arrow icons
- renderer = {
- indent_markers = {
- enable = true,
- },
- icons = {
- glyphs = {
- folder = {
- -- arrow_closed = "", -- arrow when folder is closed
- -- arrow_open = "", -- arrow when folder is open
- },
- },
- },
- },
- -- disable window_picker for
- -- explorer to work well with
- -- window splits
- actions = {
- open_file = {
- window_picker = {
- enable = false,
- },
- },
- },
- -- filters = {
- -- custom = { ".DS_Store" },
- -- },
- git = {
- ignore = false,
- },
- })
- end,
-}
diff --git a/lua/rua/plugins/oil.lua b/lua/rua/plugins/oil.lua
deleted file mode 100644
index e6c0811..0000000
--- a/lua/rua/plugins/oil.lua
+++ /dev/null
@@ -1,83 +0,0 @@
-return {
- "stevearc/oil.nvim",
- keys = {
- { "-", "Oil", desc = "Open parent directory" },
- {
- "_",
- function()
- require("oil").open(vim.fn.getcwd())
- end,
- desc = "Open parent directory",
- },
- },
- cmd = { "Oil" },
- -- lazy = false,
- event = "VimEnter",
- dependencies = { "nvim-tree/nvim-web-devicons" },
- config = function()
- require("oil").setup({
- default_file_explorer = true,
- delete_to_trash = false,
- view_options = {
- show_hidden = true,
- },
- columns = {
- "icon",
- "permissions",
- "size",
- "mtime",
- },
- keymaps = {
- ["g?"] = "actions.show_help",
- [""] = "actions.select",
- [""] = false,
- --[[ [""] = { "actions.select", opts = { horizontal = true } }, ]]
- [""] = false,
- [""] = { "actions.select", opts = { tab = true } },
- [""] = "actions.preview",
- [""] = false,
- ["q"] = "actions.close",
- [""] = false,
- [""] = { "actions.refresh" },
- ["-"] = "actions.parent",
- ["_"] = "actions.open_cwd",
- ["`"] = "actions.cd",
- ["~"] = { "actions.cd", opts = { scope = "tab" } },
- ["gs"] = "actions.change_sort",
- ["gx"] = "actions.open_external",
- ["g."] = "actions.toggle_hidden",
- ["g\\"] = "actions.toggle_trash",
- -- Mappings can be a string
- -- ["~"] = "edit $HOME",
- -- Mappings can be a function
- -- ["gd"] = function()
- -- require("oil").set_columns({ "icon", "permissions", "size", "mtime" })
- -- end,
- -- You can pass additional opts to vim.keymap.set by using
- -- a table with the mapping as the first element.
- ["ff"] = {
- function()
- require("telescope.builtin").find_files({
- cwd = require("oil").get_current_dir(),
- })
- end,
- mode = "n",
- nowait = true,
- desc = "Find files in the current directory",
- },
- ["fw"] = {
- function()
- require("telescope.builtin").live_grep({
- cwd = require("oil").get_current_dir(),
- })
- end,
- mode = "n",
- nowait = true,
- desc = "Find files in the current directory",
- },
- },
- skip_confirm_for_simple_edits = true,
- watch_for_changes = true,
- })
- end,
-}
diff --git a/lua/rua/plugins/telescope.lua b/lua/rua/plugins/telescope.lua
deleted file mode 100644
index 3df93fc..0000000
--- a/lua/rua/plugins/telescope.lua
+++ /dev/null
@@ -1,152 +0,0 @@
-local platform = vim.loop.os_uname().sysname
-
-local function fzf_plugin()
- if platform == "FreeBSD" then
- return {
- "nvim-telescope/telescope-fzf-native.nvim",
- build = "cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release",
- }
- else
- return { "nvim-telescope/telescope-fzf-native.nvim", build = "make" }
- end
-end
-
-return {
- "nvim-telescope/telescope.nvim",
- branch = "0.1.x",
- keys = {
- { "ff", "Telescope find_files", desc = "Fuzzy find files in cwd" },
- { "fo", "Telescope oldfiles", desc = "Fuzzy find recent files" },
- { "fw", "Telescope live_grep", desc = "Find string in cwd" },
- { "ft", "TodoTelescope", desc = "Find todos" },
- { "fk", "Telescope keymaps", desc = "Find keymaps" },
- -- { "fm", "Telescope marks", desc = "Find marks" },
- { "fh", "Telescope search_history", desc = "Find search history" },
- { "gm", "Telescope git_commits", desc = "Git commits" },
- {
- "fb",
- function()
- require("telescope.builtin").live_grep({ grep_open_files = true })
- end,
- desc = "Find in all buffers",
- },
- {
- "fc",
- function()
- require("telescope.builtin").command_history()
- end,
- desc = "Search command history",
- },
- {
-
- "fr",
- function()
- require("telescope.builtin").resume()
- end,
- desc = "Resume last search",
- },
- {
-
- "ct",
- function()
- require("telescope.builtin").filetypes()
- end,
- desc = "Set current filetype",
- },
- {
-
- "fd",
- function()
- require("telescope.builtin").diagnostics()
- end,
- desc = "Find Diagnostics",
- },
- {
- "b",
- function()
- -- require("telescope.builtin").buffers({ sort_lastused = true, initial_mode = "normal" })
- require("telescope.builtin").buffers({ sort_lastused = true })
- end,
- desc = "Buffers",
- },
- },
- dependencies = {
- "nvim-lua/plenary.nvim",
- fzf_plugin(),
- "nvim-tree/nvim-web-devicons",
- "folke/todo-comments.nvim",
- "nvim-telescope/telescope-ui-select.nvim",
- },
- config = function()
- local telescope = require("telescope")
- local actions = require("telescope.actions")
- local transform_mod = require("telescope.actions.mt").transform_mod
-
- local trouble = require("trouble")
- local trouble_telescope = require("trouble.sources.telescope")
-
- local custom_actions = transform_mod({
- open_trouble_qflist = function()
- trouble.toggle("quickfix")
- end,
- })
-
- telescope.setup({
- defaults = {
- path_display = {
- -- shorten = 4,
- },
- mappings = {
- n = {
- ["d"] = require("telescope.actions").delete_buffer,
- [""] = actions.send_selected_to_qflist + custom_actions.open_trouble_qflist,
- [""] = trouble_telescope.open,
- },
- i = {
- [""] = actions.move_selection_previous, -- move to prev result
- [""] = actions.move_selection_next, -- move to next result
- [""] = actions.send_selected_to_qflist + custom_actions.open_trouble_qflist,
- [""] = trouble_telescope.open,
- },
- },
- },
- pickers = {
- buffers = {
- theme = "ivy",
- previewer = false,
- },
- git_files = {
- theme = "ivy",
- previewer = false,
- },
- oldfiles = {
- theme = "ivy",
- previewer = false,
- },
- find_files = {
- theme = "ivy",
- previewer = false,
- },
- live_grep = {
- theme = "ivy",
- },
- colorscheme = {
- theme = "ivy",
- },
- marks = {
- theme = "ivy",
- },
- lsp_document_symblos = {
- theme = "ivy",
- },
- lsp_dynamic_workspace_symbols = {
- theme = "ivy",
- },
- lsp_references = {
- theme = "ivy",
- },
- },
- })
- telescope.load_extension("fzf")
- end,
-}
diff --git a/lua/rua/plugins/toggleterm.lua b/lua/rua/plugins/toggleterm.lua
deleted file mode 100644
index 1c2e193..0000000
--- a/lua/rua/plugins/toggleterm.lua
+++ /dev/null
@@ -1,63 +0,0 @@
-return {
- {
- "akinsho/toggleterm.nvim",
- version = "*",
- opts = {},
- config = function()
- local Terminal = require("toggleterm.terminal").Terminal
- local float = Terminal:new({
- direction = "float",
- auto_scroll = true,
- persist_mode = false,
- start_in_insert = true,
- float_opts = {
- border = "curved",
- },
- display_name = "RUA",
- })
- local horizontal = Terminal:new({
- direction = "horizontal",
- persist_mode = false,
- auto_scroll = true,
- start_in_insert = true,
- display_name = "RUA",
- })
- local vertical = Terminal:new({
- direction = "vertical",
- persist_mode = false,
- auto_scroll = true,
- start_in_insert = true,
- display_name = "RUA",
- })
- local lazygit = Terminal:new({
- direction = "float",
- auto_scroll = true,
- persist_mode = false,
- start_in_insert = true,
- float_opts = {
- border = "curved",
- },
- display_name = "Lazygit",
- cmd = "lazygit",
- })
-
- local map = vim.keymap.set
- map({ "n", "t" }, "", function()
- float:toggle()
- end, { noremap = true, silent = true })
- map({ "n", "t" }, "", function()
- horizontal:toggle()
- end, { noremap = true, silent = true })
- map({ "n", "t" }, "", function()
- vertical:toggle()
- end, { noremap = true, silent = true })
- map({ "n", "t" }, "", function()
- horizontal:toggle()
- end)
- map("n", "gl", function()
- lazygit:toggle()
- end, { noremap = true, silent = true })
- end,
- keys = { "", "", "", "", "gl" },
- },
-}
diff --git a/lua/rua/plugins/treesitter.lua b/lua/rua/plugins/treesitter.lua
deleted file mode 100644
index cbda337..0000000
--- a/lua/rua/plugins/treesitter.lua
+++ /dev/null
@@ -1,55 +0,0 @@
-return {
- "nvim-treesitter/nvim-treesitter",
- build = ":TSUpdate",
- cmd = { "TSUpdateSync", "TSUpdate", "TSInstall" },
- opts = {
- indent = { enable = true },
- ensure_installed = {
- -- defaults
- "vim",
- "vimdoc",
- "lua",
- -- web dev
- "html",
- "css",
- "javascript",
- "typescript",
- "tsx",
- "json5",
- "vue",
- "markdown",
- "markdown_inline",
- "jsdoc",
- "scss",
- "styled", -- styled components
- -- low level
- "rust",
- "ron",
- "toml",
- "go",
- "gomod",
- "gowork",
- "gosum",
- "sql",
- -- git
- "git_config",
- "gitcommit",
- "git_rebase",
- "gitignore",
- "gitattributes",
- },
- auto_install = true,
- highlight = {
- enable = function()
- return not vim.b.large_buf
- end,
- disable = function()
- return vim.b.large_buf
- end,
- },
- },
- ---@param opts TSConfig
- config = function(_, opts)
- require("nvim-treesitter.configs").setup(opts)
- end,
-}
diff --git a/lua/rua/plugins/trouble.lua b/lua/rua/plugins/trouble.lua
deleted file mode 100644
index 03c006e..0000000
--- a/lua/rua/plugins/trouble.lua
+++ /dev/null
@@ -1,40 +0,0 @@
-return {
- "folke/trouble.nvim",
- dependencies = { "nvim-tree/nvim-web-devicons", "folke/todo-comments.nvim" },
- opts = {
- focus = true,
- },
- cmd = "Trouble",
- keys = {
- {
- "tX",
- "Trouble diagnostics toggle",
- desc = "Diagnostics (Trouble)",
- },
- {
- "tx",
- "Trouble diagnostics toggle filter.buf=0",
- desc = "Buffer Diagnostics (Trouble)",
- },
- {
- "