diff --git a/nvim/.neoconf.json b/nvim/.neoconf.json new file mode 100644 index 0000000..7c48087 --- /dev/null +++ b/nvim/.neoconf.json @@ -0,0 +1,15 @@ +{ + "neodev": { + "library": { + "enabled": true, + "plugins": true + } + }, + "neoconf": { + "plugins": { + "lua_ls": { + "enabled": true + } + } + } +} diff --git a/nvim/LICENSE b/nvim/LICENSE new file mode 100644 index 0000000..261eeb9 --- /dev/null +++ b/nvim/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/nvim/README.md b/nvim/README.md new file mode 100644 index 0000000..185280b --- /dev/null +++ b/nvim/README.md @@ -0,0 +1,4 @@ +# 💤 LazyVim + +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/nvim/init.lua b/nvim/init.lua index 759c3c9..2514f9e 100644 --- a/nvim/init.lua +++ b/nvim/init.lua @@ -1,16 +1,2 @@ -require("blakeridgway.plugins-setup") -require("blakeridgway.core.options") -require("blakeridgway.core.keymaps") -require("blakeridgway.core.colorscheme") -require("blakeridgway.plugins.comment") -require("blakeridgway.plugins.nvim-tree") -require("blakeridgway.plugins.lualine") -require("blakeridgway.plugins.telescope") -require("blakeridgway.plugins.nvim-cmp") -require("blakeridgway.plugins.lsp.mason") -require("blakeridgway.plugins.lsp.lspconfig") -require("blakeridgway.plugins.lsp.null-ls") -require("blakeridgway.plugins.autopairs") -require("blakeridgway.plugins.treesitter") -require("blakeridgway.plugins.gitsigns") -require("blakeridgway.plugins.discord") +-- bootstrap lazy.nvim, LazyVim and your plugins +require("config.lazy") diff --git a/nvim/lazy-lock.json b/nvim/lazy-lock.json new file mode 100644 index 0000000..ccf6a13 --- /dev/null +++ b/nvim/lazy-lock.json @@ -0,0 +1,65 @@ +{ + "LazyVim": { "branch": "main", "commit": "879e29504d43e9f178d967ecc34d482f902e5a91" }, + "LuaSnip": { "branch": "master", "commit": "6a001360cea89df50f7c5cc8c7a75e6a21f1ef5c" }, + "SchemaStore.nvim": { "branch": "main", "commit": "de7a5763edab2075e1925869af827ca38109ebfa" }, + "bufferline.nvim": { "branch": "main", "commit": "e48ce1805697e4bb97bc171c081e849a65859244" }, + "catppuccin": { "branch": "main", "commit": "079500a625f3ae5aa6efb758f1a17fe4c7a57e52" }, + "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" }, + "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, + "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, + "conform.nvim": { "branch": "master", "commit": "8b407bb6175846cdc4c499e2a8d28109615a2089" }, + "copilot-cmp": { "branch": "master", "commit": "72fbaa03695779f8349be3ac54fa8bd77eed3ee3" }, + "copilot.lua": { "branch": "master", "commit": "dcaaed5b58e6c2d395bca18d25d34e6384856722" }, + "dashboard-nvim": { "branch": "master", "commit": "63df28409d940f9cac0a925df09d3dc369db9841" }, + "dressing.nvim": { "branch": "master", "commit": "8b7ae53d7f04f33be3439a441db8071c96092d19" }, + "friendly-snippets": { "branch": "main", "commit": "53d3df271d031c405255e99410628c26a8f0d2b0" }, + "gitsigns.nvim": { "branch": "main", "commit": "d195f0c35ced5174d3ecce1c4c8ebb3b5bc23fa9" }, + "inc-rename.nvim": { "branch": "main", "commit": "a48c7cec5c4f00d7438dce5fadb55f4d715ef9f2" }, + "incline.nvim": { "branch": "main", "commit": "fdd7e08a6e3d0dd8d9aa02428861fa30c37ba306" }, + "indent-blankline.nvim": { "branch": "master", "commit": "d4c718467d35bc93714425a7102d82e7e5065280" }, + "lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" }, + "lualine.nvim": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "9453e3d6cd2ca45d96e20f343e8f1b927364b630" }, + "mason.nvim": { "branch": "main", "commit": "41e75af1f578e55ba050c863587cffde3556ffa6" }, + "mini.ai": { "branch": "main", "commit": "c28f7d7348f27425a180b1b7dcaa77651f8b71ee" }, + "mini.animate": { "branch": "main", "commit": "507c43c4402c7d7a2101bc72bece6e2202152afa" }, + "mini.bufremove": { "branch": "main", "commit": "f53c7f27e36009fe61563c11cde154b94a0e5b94" }, + "mini.comment": { "branch": "main", "commit": "3d9c8009615857e982f09bc5357fc95f2a2175f3" }, + "mini.hipatterns": { "branch": "main", "commit": "af0306665ee2d5c5fbf8e07e82237fc01ec3baa3" }, + "mini.indentscope": { "branch": "main", "commit": "dc26fa1a6c8976f42930c9f53da88d3d441bb13f" }, + "mini.pairs": { "branch": "main", "commit": "71f117fd57f930da6ef4126b24f594dd398bac26" }, + "mini.surround": { "branch": "main", "commit": "af8129efcabe95fc08a233e9f91569829bed031f" }, + "neo-tree.nvim": { "branch": "v3.x", "commit": "230ff118613fa07138ba579b89d13ec2201530b9" }, + "neoconf.nvim": { "branch": "main", "commit": "64437787dba70fce50dad7bfbb97d184c5bc340f" }, + "neodev.nvim": { "branch": "main", "commit": "40b608b31f3da728e298051c4bf579d8e8a84294" }, + "noice.nvim": { "branch": "main", "commit": "92433164e2f7118d4122c7674c3834d9511722ba" }, + "nui.nvim": { "branch": "main", "commit": "c9b4de623d19a85b353ff70d2ae9c77143abe69c" }, + "nvim-cmp": { "branch": "main", "commit": "538e37ba87284942c1d76ed38dd497e54e65b891" }, + "nvim-lint": { "branch": "master", "commit": "5b42e12f397e9fd2629e6f0ce1c780a12b9e6597" }, + "nvim-lspconfig": { "branch": "master", "commit": "84f2dd42efffa20d505ac44c78568d778ca7e0a1" }, + "nvim-notify": { "branch": "master", "commit": "e4a2022f4fec2d5ebc79afa612f96d8b11c627b3" }, + "nvim-spectre": { "branch": "master", "commit": "a18a58015b46f02b4fe537ebfffd82e46110ff24" }, + "nvim-treesitter": { "branch": "master", "commit": "000f71842bf08840df1e70004b17507fa92b2fb7" }, + "nvim-treesitter-context": { "branch": "master", "commit": "cfa8ee19ac9bae9b7fb2958eabe2b45b70c56ccb" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "ec1c5bdb3d87ac971749fa6c7dbc2b14884f1f6a" }, + "nvim-ts-autotag": { "branch": "main", "commit": "8515e48a277a2f4947d91004d9aa92c29fdc5e18" }, + "nvim-ts-context-commentstring": { "branch": "main", "commit": "1277b4a1f451b0f18c0790e1a7f12e1e5fdebfee" }, + "nvim-web-devicons": { "branch": "master", "commit": "a1425903ab52a0a0460622519e827f224e5b4fee" }, + "persistence.nvim": { "branch": "main", "commit": "ad538bfd5336f1335cdb6fd4e0b0eebfa6e12f32" }, + "plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" }, + "refactoring.nvim": { "branch": "master", "commit": "156532476deb10b1b2a32cb38e1078b3f9951c42" }, + "solarized-osaka.nvim": { "branch": "main", "commit": "83b7026ac7a4e185d4ecbe99926fd94b5735e2ea" }, + "tailwindcss-colorizer-cmp.nvim": { "branch": "main", "commit": "bc25c56083939f274edcfe395c6ff7de23b67c50" }, + "telescope-file-browser.nvim": { "branch": "master", "commit": "8e0543365fe5781c9babea7db89ef06bcff3716d" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "6c921ca12321edaa773e324ef64ea301a1d0da62" }, + "telescope.nvim": { "branch": "master", "commit": "6213322ab56eb27356fdc09a5078e41e3ea7f3bc" }, + "todo-comments.nvim": { "branch": "main", "commit": "4a6737a8d70fe1ac55c64dfa47fcb189ca431872" }, + "tokyonight.nvim": { "branch": "main", "commit": "f247ee700b569ed43f39320413a13ba9b0aef0db" }, + "trouble.nvim": { "branch": "main", "commit": "f1168feada93c0154ede4d1fe9183bf69bac54ea" }, + "twilight.nvim": { "branch": "main", "commit": "8b7b50c0cb2dc781b2f4262a5ddd57571556d1e4" }, + "vim-illuminate": { "branch": "master", "commit": "3bd2ab64b5d63b29e05691e624927e5ebbf0fb86" }, + "vim-startuptime": { "branch": "master", "commit": "454b3de856b7bd298700de33d79774ca9b9e3875" }, + "vscode.nvim": { "branch": "main", "commit": "cd081089f4a2ceddade73d0415e1809ded510191" }, + "zen-mode.nvim": { "branch": "main", "commit": "50e2e2a36cc97847d9ab3b1a3555ba2ef6839b50" } +} \ No newline at end of file diff --git a/nvim/lazyvim.json b/nvim/lazyvim.json new file mode 100644 index 0000000..4d7ba66 --- /dev/null +++ b/nvim/lazyvim.json @@ -0,0 +1,10 @@ +{ + "extras": [ + + ], + "news": { + "NEWS.md": "2123", + "doc/news.txt": "17421" + }, + "version": 2 +} \ No newline at end of file diff --git a/nvim/lua/blakeridgway/core/colorscheme.lua b/nvim/lua/blakeridgway/core/colorscheme.lua deleted file mode 100644 index 1526426..0000000 --- a/nvim/lua/blakeridgway/core/colorscheme.lua +++ /dev/null @@ -1,7 +0,0 @@ --- set colorscheme to nightfly with protected call --- in case it isn't installed -local status, _ = pcall(vim.cmd, "colorscheme nightfly") -if not status then - print("Colorscheme not found!") -- print error if colorscheme not installed - return -end diff --git a/nvim/lua/blakeridgway/core/keymaps.lua b/nvim/lua/blakeridgway/core/keymaps.lua deleted file mode 100644 index c268b7c..0000000 --- a/nvim/lua/blakeridgway/core/keymaps.lua +++ /dev/null @@ -1,55 +0,0 @@ --- set leader key to space -vim.g.mapleader = " " - -local keymap = vim.keymap -- for conciseness - ---------------------- --- General Keymaps ---------------------- - --- use jk to exit insert mode -keymap.set("i", "jk", "") - --- clear search highlights -keymap.set("n", "nh", ":nohl") - --- delete single character without copying into register -keymap.set("n", "x", '"_x') - --- increment/decrement numbers -keymap.set("n", "+", "") -- increment -keymap.set("n", "-", "") -- decrement - --- window management -keymap.set("n", "sv", "v") -- split window vertically -keymap.set("n", "sh", "s") -- split window horizontally -keymap.set("n", "se", "=") -- make split windows equal width & height -keymap.set("n", "sx", ":close") -- close current split window - -keymap.set("n", "to", ":tabnew") -- open new tab -keymap.set("n", "tx", ":tabclose") -- close current tab -keymap.set("n", "tn", ":tabn") -- go to next tab -keymap.set("n", "tp", ":tabp") -- go to previous tab - ----------------------- --- Plugin Keybinds ----------------------- - --- vim-maximizer -keymap.set("n", "sm", ":MaximizerToggle") -- toggle split window maximization - --- nvim-tree -keymap.set("n", "e", ":NvimTreeToggle") -- toggle file explorer - --- telescope -keymap.set("n", "ff", "Telescope find_files") -- find files within current working directory, respects .gitignore -keymap.set("n", "fs", "Telescope live_grep") -- find string in current working directory as you type -keymap.set("n", "fc", "Telescope grep_string") -- find string under cursor in current working directory -keymap.set("n", "fb", "Telescope buffers") -- list open buffers in current neovim instance -keymap.set("n", "fh", "Telescope help_tags") -- list available help tags - --- telescope git commands -keymap.set("n", "gc", "Telescope git_commits") -- list all git commits (use to checkout) ["gc" for git commits] -keymap.set("n", "gfc", "Telescope git_bcommits") -- list git commits for current file/buffer (use to checkout) ["gfc" for git file commits] -keymap.set("n", "gb", "Telescope git_branches") -- list git branches (use to checkout) ["gb" for git branch] -keymap.set("n", "gs", "Telescope git_status") -- list current changes per file with diff preview ["gs" for git status] diff --git a/nvim/lua/blakeridgway/core/options.lua b/nvim/lua/blakeridgway/core/options.lua deleted file mode 100644 index 1aac738..0000000 --- a/nvim/lua/blakeridgway/core/options.lua +++ /dev/null @@ -1,41 +0,0 @@ -local opt = vim.opt -- for conciseness - --- line numbers -opt.relativenumber = true -- show relative line numbers -opt.number = true -- shows absolute line number on cursor line (when relative number is on) - --- tabs & indentation -opt.tabstop = 2 -- 2 spaces for tabs (prettier default) -opt.shiftwidth = 2 -- 2 spaces for indent width -opt.expandtab = true -- expand tab to spaces -opt.autoindent = true -- copy indent from current line when starting new one - --- line wrapping -opt.wrap = false -- disable line wrapping - --- search settings -opt.ignorecase = true -- ignore case when searching -opt.smartcase = true -- if you include mixed case in your search, assumes you want case-sensitive - --- cursor line -opt.cursorline = true -- highlight the current cursor line - --- appearance - --- turn on termguicolors for nightfly colorscheme to work --- (have to use iterm2 or any other true color terminal) -opt.termguicolors = true -opt.background = "dark" -- colorschemes that can be light or dark will be made dark -opt.signcolumn = "yes" -- show sign column so that text doesn't shift - --- backspace -opt.backspace = "indent,eol,start" -- allow backspace on indent, end of line or insert mode start position - --- clipboard -opt.clipboard:append("unnamedplus") -- use system clipboard as default register - --- split windows -opt.splitright = true -- split vertical window to the right -opt.splitbelow = true -- split horizontal window to the bottom - -opt.iskeyword:append("-") -- consider string-string as whole word diff --git a/nvim/lua/blakeridgway/plugins-setup.lua b/nvim/lua/blakeridgway/plugins-setup.lua deleted file mode 100644 index 157ad00..0000000 --- a/nvim/lua/blakeridgway/plugins-setup.lua +++ /dev/null @@ -1,109 +0,0 @@ --- auto install packer if not installed -local ensure_packer = function() - local fn = vim.fn - local install_path = fn.stdpath("data") .. "/site/pack/packer/start/packer.nvim" - if fn.empty(fn.glob(install_path)) > 0 then - fn.system({ "git", "clone", "--depth", "1", "https://github.com/wbthomason/packer.nvim", install_path }) - vim.cmd([[packadd packer.nvim]]) - return true - end - return false -end -local packer_bootstrap = ensure_packer() -- true if packer was just installed - --- autocommand that reloads neovim and installs/updates/removes plugins --- when file is saved -vim.cmd([[ - augroup packer_user_config - autocmd! - autocmd BufWritePost plugins-setup.lua source | PackerSync - augroup end -]]) - --- import packer safely -local status, packer = pcall(require, "packer") -if not status then - return -end - --- add list of plugins to install -return packer.startup(function(use) - -- packer can manage itself - use("wbthomason/packer.nvim") - - use("nvim-lua/plenary.nvim") -- lua functions that many plugins use - - use("bluz71/vim-nightfly-guicolors") -- preferred colorscheme - - use("christoomey/vim-tmux-navigator") -- tmux & split window navigation - - use("szw/vim-maximizer") -- maximizes and restores current window - - -- essential plugins - use("tpope/vim-surround") -- add, delete, change surroundings (it's awesome) - use("inkarkat/vim-ReplaceWithRegister") -- replace with register contents using motion (gr + motion) - - -- commenting with gc - use("numToStr/Comment.nvim") - - -- file explorer - use("nvim-tree/nvim-tree.lua") - - -- vs-code like icons - use("nvim-tree/nvim-web-devicons") - - -- statusline - use("nvim-lualine/lualine.nvim") - - -- fuzzy finding w/ telescope - use({ "nvim-telescope/telescope-fzf-native.nvim", run = "make" }) -- dependency for better sorting performance - use({ "nvim-telescope/telescope.nvim", tag = "0.1.0" }) -- fuzzy finder - - -- autocompletion - use("hrsh7th/nvim-cmp") -- completion plugin - use("hrsh7th/cmp-buffer") -- source for text in buffer - use("hrsh7th/cmp-path") -- source for file system paths - - -- snippets - use("L3MON4D3/LuaSnip") -- snippet engine - use("saadparwaiz1/cmp_luasnip") -- for autocompletion - use("rafamadriz/friendly-snippets") -- useful snippets - - -- managing & installing lsp servers, linters & formatters - use("williamboman/mason.nvim") -- in charge of managing lsp servers, linters & formatters - use("williamboman/mason-lspconfig.nvim") -- bridges gap b/w mason & lspconfig - - -- configuring lsp servers - use("neovim/nvim-lspconfig") -- easily configure language servers - use("hrsh7th/cmp-nvim-lsp") -- for autocompletion - use({ "glepnir/lspsaga.nvim", branch = "main" }) -- enhanced lsp uis - use("jose-elias-alvarez/typescript.nvim") -- additional functionality for typescript server (e.g. rename file & update imports) - use("onsails/lspkind.nvim") -- vs-code like icons for autocompletion - - -- formatting & linting - use("jose-elias-alvarez/null-ls.nvim") -- configure formatters & linters - use("jayp0521/mason-null-ls.nvim") -- bridges gap b/w mason & null-ls - - -- treesitter configuration - use({ - "nvim-treesitter/nvim-treesitter", - run = function() - local ts_update = require("nvim-treesitter.install").update({ with_sync = true }) - ts_update() - end, - }) - - -- auto closing - use("windwp/nvim-autopairs") -- autoclose parens, brackets, quotes, etc... - use({ "windwp/nvim-ts-autotag", after = "nvim-treesitter" }) -- autoclose tags - - -- git integration - use("lewis6991/gitsigns.nvim") -- show line modifications on left hand side - - -- discord rpc - use("andweeb/presence.nvim") - - if packer_bootstrap then - require("packer").sync() - end -end) diff --git a/nvim/lua/blakeridgway/plugins/autopairs.lua b/nvim/lua/blakeridgway/plugins/autopairs.lua deleted file mode 100644 index ec6312a..0000000 --- a/nvim/lua/blakeridgway/plugins/autopairs.lua +++ /dev/null @@ -1,29 +0,0 @@ -local autopairs_setup, autopairs = pcall(require, "nvim-autopairs") -if not autopairs_setup then - return -end - --- configure autopairs -autopairs.setup({ - check_ts = true, -- enable treesitter - ts_config = { - lua = { "string" }, -- don't add pairs in lua string treesitter nodes - javascript = { "template_string" }, -- don't add pairs in javscript template_string treesitter nodes - java = false, -- don't check treesitter on java - }, -}) - --- import nvim-autopairs completion functionality safely -local cmp_autopairs_setup, cmp_autopairs = pcall(require, "nvim-autopairs.completion.cmp") -if not cmp_autopairs_setup then - return -end - --- import nvim-cmp plugin safely (completions plugin) -local cmp_setup, cmp = pcall(require, "cmp") -if not cmp_setup then - return -end - --- make autopairs and completion work together -cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done()) diff --git a/nvim/lua/blakeridgway/plugins/comment.lua b/nvim/lua/blakeridgway/plugins/comment.lua deleted file mode 100644 index 527672d..0000000 --- a/nvim/lua/blakeridgway/plugins/comment.lua +++ /dev/null @@ -1,8 +0,0 @@ --- import comment -local setup, comment = pcall(require, "Comment") -if not setup then - return -end - --- enable comment -comment.setup() diff --git a/nvim/lua/blakeridgway/plugins/discord.lua b/nvim/lua/blakeridgway/plugins/discord.lua deleted file mode 100644 index 2349af0..0000000 --- a/nvim/lua/blakeridgway/plugins/discord.lua +++ /dev/null @@ -1,23 +0,0 @@ -require("presence"):setup({ - -- General options - auto_update = true, -- Update activity based on autocmd events (if `false`, map or manually execute `:lua package.loaded.presence:update()`) - neovim_image_text = "The One True Text Editor", -- Text displayed when hovered over the Neovim image - main_image = "neovim", -- Main image display (either "neovim" or "file") - client_id = "793271441293967371", -- Use your own Discord application client id (not recommended) - log_level = nil, -- Log messages at or above this level (one of the following: "debug", "info", "warn", "error") - debounce_timeout = 10, -- Number of seconds to debounce events (or calls to `:lua package.loaded.presence:update(, true)`) - enable_line_number = false, -- Displays the current line number instead of the current project - blacklist = {}, -- A list of strings or Lua patterns that disable Rich Presence if the current file name, path, or workspace matches - buttons = true, -- Configure Rich Presence button(s), either a boolean to enable/disable, a static table (`{{ label = "