diff --git a/lua/taken/init.lua b/lua/taken/init.lua index 8c4f9e3..838e146 100644 --- a/lua/taken/init.lua +++ b/lua/taken/init.lua @@ -1,5 +1,5 @@ -require("taken.lazy") require("taken.core") +require("taken.lazy") require("taken.prefs") vim.notify = require("notify") diff --git a/lua/taken/lazy.lua b/lua/taken/lazy.lua new file mode 100644 index 0000000..1570d59 --- /dev/null +++ b/lua/taken/lazy.lua @@ -0,0 +1,30 @@ +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) + +local lazy = require("lazy") + +local plugins = { + { import = "taken.plugins" }, + { import = "taken.plugins.lsp" } +} + +local opts = { + dev = { + path = "~/git/nvim", + }, + checker = { + enabled = true, + }, +} + +lazy.setup(plugins, opts) diff --git a/lua/taken/lazy/init.lua b/lua/taken/lazy/init.lua deleted file mode 100644 index 1b5fdf6..0000000 --- a/lua/taken/lazy/init.lua +++ /dev/null @@ -1,2 +0,0 @@ -require("taken.lazy.lazy") -require("taken.lazy.pluginloader") diff --git a/lua/taken/lazy/lazy.lua b/lua/taken/lazy/lazy.lua deleted file mode 100644 index 0864ecc..0000000 --- a/lua/taken/lazy/lazy.lua +++ /dev/null @@ -1,240 +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) - -local lazy = require("lazy") - -local plugins = { - { - "catppuccin/nvim", - name = "catppuccin", - priority = 1000, - }, - { "folke/tokyonight.nvim", priority = 1000, lazy = true }, - { "Mofiqul/dracula.nvim", priority = 1000, lazy = true }, - { "roflolilolmao/oceanic-next.nvim", priority = 1000, lazy = true }, - { "olimorris/onedarkpro.nvim", priority = 1000, lazy = true }, - { "NTBBloodbath/doom-one.nvim", priority = 1000, lazy = true }, - { "shaunsingh/moonlight.nvim", priority = 1000, lazy = true }, - { "kvrohit/mellow.nvim", priority = 1000, lazy = true }, - -- telescope - { - "nvim-telescope/telescope.nvim", - version = "0.1.1", - dependencies = { "nvim-lua/plenary.nvim" }, - }, - { - "nvim-telescope/telescope-file-browser.nvim", - dependencies = { "nvim-telescope/telescope.nvim", "nvim-lua/plenary.nvim" }, - }, - { - "nvim-telescope/telescope-project.nvim", - dependencies = { "nvim-telescope/telescope.nvim", "nvim-lua/plenary.nvim" }, - }, - { - "nvim-telescope/telescope-fzf-native.nvim", - build = "make", - dependencies = { "nvim-telescope/telescope.nvim" }, - }, - { - "VonHeikemen/fine-cmdline.nvim", - dependencies = { - { "MunifTanjim/nui.nvim" }, - }, - cmd = "FineCmdline", - config = function() - require("taken.plugins.lazy.cmdline") - end, - }, - -- development - - { - "ray-x/go.nvim", - dependencies = { - "ray-x/guihua.lua", - "neovim/nvim-lspconfig", - "nvim-treesitter/nvim-treesitter", - }, - config = function() - require("taken.plugins.lazy.go") - end, - ft = { "go", "gomod" }, - build = function() - require("go.install").update_all_sync() - end, - }, - { - "github/copilot.vim", - event = "VimEnter", - }, - { - "folke/todo-comments.nvim", - dependencies = { "nvim-lua/plenary.nvim" }, - config = true, - }, - { - "nvim-tree/nvim-tree.lua", - dependencies = { "nvim-tree/nvim-web-devicons" }, - }, - { "nvim-treesitter/nvim-treesitter", build = ":TSUpdate" }, - --lsp - { - "williamboman/mason.nvim", - build = function() - pcall(vim.cmd, "MasonUpdate") - end, - }, - "neovim/nvim-lspconfig", - { - "williamboman/mason-lspconfig.nvim", - dependencies = { "williamboman/mason.nvim", "neovim/nvim-lspconfig" }, - }, - -- formatters and linters - "jose-elias-alvarez/null-ls.nvim", - { - "jayp0521/mason-null-ls.nvim", - dependencies = { "williamboman/mason.nvim", "jose-elias-alvarez/null-ls.nvim" }, - }, - -- completion - "hrsh7th/nvim-cmp", - "hrsh7th/cmp-nvim-lsp", - "hrsh7th/cmp-buffer", - "hrsh7th/cmp-path", - -- snippets - "L3MON4D3/LuaSnip", - "saadparwaiz1/cmp_luasnip", - "rafamadriz/friendly-snippets", - "onsails/lspkind.nvim", - { - "folke/trouble.nvim", - dependencies = { "nvim-tree/nvim-web-devicons" }, - }, - { - "iamcco/markdown-preview.nvim", - build = function() - vim.fn["mkdp#util#install"]() - end, - config = function() - vim.cmd([[ - let g:mkdp_auto_close = 0 - let g:mkdp_theme = 'dark' - ]]) - end, - ft = "markdown", - }, - "numToStr/Comment.nvim", - { - "NeogitOrg/neogit", - dependencies = "nvim-lua/plenary.nvim", - config = function() - require("taken.plugins.lazy.neogit") - end, - cmd = "Neogit", - }, - { - "sindrets/diffview.nvim", - cmd = "DiffviewOpen", - }, - "windwp/nvim-autopairs", - { "windwp/nvim-ts-autotag", dependencies = "nvim-treesitter" }, - { - "lewis6991/gitsigns.nvim", - config = function() - require("gitsigns").setup({}) - end, - }, - { - "f-person/git-blame.nvim", - config = function() - vim.cmd([[ - let g:gitblame_enabled = 1 - ]]) - end, - }, - -- useful plugins - "szw/vim-maximizer", - { - "glepnir/dashboard-nvim", - event = "VimEnter", - dependencies = { "nvim-tree/nvim-web-devicons" }, - }, - { - "nvim-neorg/neorg", - build = ":Neorg sync-parsers", - dependencies = "nvim-lua/plenary.nvim", - config = function() - require("taken.plugins.lazy.neorg") - end, - cmd = "Neorg", - ft = "norg", - }, - { - "NvChad/nvim-colorizer.lua", - config = function() - require("colorizer").setup({}) - end, - }, - "folke/which-key.nvim", - { - "nvim-lualine/lualine.nvim", - dependencies = { "nvim-tree/nvim-web-devicons" }, - }, - { - "akinsho/toggleterm.nvim", - version = "*", - config = function() - require("taken.plugins.lazy.toggleterm") - end, - cmd = "ToggleTerm", - }, - "rcarriga/nvim-notify", - { - "akinsho/bufferline.nvim", - version = "*", - dependencies = "nvim-tree/nvim-web-devicons", - }, - "TakenMC/presence.nvim", - { - "kylechui/nvim-surround", - version = "*", - config = function() - require("nvim-surround").setup({}) - end, - }, - { - "ObserverOfTime/nvimcord", - cmd = "NvimcordUpdate", - enabled = false, - config = function() - require("taken.plugins.lazy.nvimcord") - end, - }, - "xiyaowong/transparent.nvim", - { - "jokajak/keyseer.nvim", - cmd = "KeySeer", - config = function() - require("taken.plugins.lazy.keyseer") - end, - }, -} - -local opts = { - dev = { - path = "~/git/nvim", - }, - checker = { - enabled = true, - }, -} - -lazy.setup(plugins, opts) diff --git a/lua/taken/lazy/pluginloader.lua b/lua/taken/lazy/pluginloader.lua deleted file mode 100644 index 5d1cc5d..0000000 --- a/lua/taken/lazy/pluginloader.lua +++ /dev/null @@ -1,17 +0,0 @@ -local configDir = vim.fn.stdpath("config") -local configFiles = vim.fn.readdir(configDir .. "/lua/taken/plugins") -local lspFiles = vim.fn.readdir(configDir .. "/lua/taken/plugins/lsp") - -for _, file in pairs(configFiles) do - if file:match("%.lua$") then - local name = file:gsub("%.lua$", "") - require("taken.plugins." .. name) - end -end - -for _, file in pairs(lspFiles) do - if file:match("%.lua$") then - local name = file:gsub("%.lua$", "") - require("taken.plugins.lsp." .. name) - end -end diff --git a/lua/taken/plugins/autopairs.lua b/lua/taken/plugins/autopairs.lua index 9fbd072..b25664a 100644 --- a/lua/taken/plugins/autopairs.lua +++ b/lua/taken/plugins/autopairs.lua @@ -1,13 +1,15 @@ -local autopairs_setup, autopairs = pcall(require, "nvim-autopairs") -if not autopairs_setup then - return -end +return { + "windwp/nvim-autopairs", + config = function() + local autopairs = require("nvim-autopairs") -autopairs.setup({ - check_ts = true, - ts_config = { - lua = { "string" }, - javascript = { "template_string" }, - java = false, - }, -}) + autopairs.setup({ + check_ts = true, + ts_config = { + lua = { "string" }, + javascript = { "template_string" }, + java = false, + }, + }) + end, +} diff --git a/lua/taken/plugins/bufferline.lua b/lua/taken/plugins/bufferline.lua index a9d350c..ac8ea3a 100644 --- a/lua/taken/plugins/bufferline.lua +++ b/lua/taken/plugins/bufferline.lua @@ -1,69 +1,74 @@ -local setup, bufferline = pcall(require, "bufferline") -if not setup then - return -end +return { + "akinsho/bufferline.nvim", + version = "*", + dependencies = "nvim-tree/nvim-web-devicons", + config = function() + local bufferline = require("bufferline") -bufferline.setup({ - options = { - mode = "buffers", - style_preset = bufferline.style_preset.default, - themable = true, - numbers = "none", - close_command = "bdelete! %d", - indicator = { - icon = "▎", - style = "icon", - }, - max_name_length = 18, - max_prefix_length = 15, - truncate_names = true, - tab_size = 18, - offsets = { - { - filetype = "NvimTree", - text = "File Explorer", - highlight = "None", - padding = 1, - }, - }, - color_icons = true, - get_element_icon = function(element) - local icon, hl = require("nvim-web-devicons").get_icon_by_filetype(element.filetype, { default = false }) - return icon, hl - end, - always_show_bufferline = true, - diagnostics = "nvim_lsp", - diagnostics_update_in_insert = false, - diagnostics_indicator = function(count, level, diagnostics_dict, context) - if context.buffer:current() then - return "" - end + bufferline.setup({ + options = { + mode = "buffers", + style_preset = bufferline.style_preset.default, + themable = true, + numbers = "none", + close_command = "bdelete! %d", + indicator = { + icon = "▎", + style = "icon", + }, + max_name_length = 18, + max_prefix_length = 15, + truncate_names = true, + tab_size = 18, + offsets = { + { + filetype = "NvimTree", + text = "File Explorer", + highlight = "None", + padding = 1, + }, + }, + color_icons = true, + get_element_icon = function(element) + local icon, hl = + require("nvim-web-devicons").get_icon_by_filetype(element.filetype, { default = false }) + return icon, hl + end, + always_show_bufferline = true, + diagnostics = "nvim_lsp", + diagnostics_update_in_insert = false, + diagnostics_indicator = function(count, level, diagnostics_dict, context) + if context.buffer:current() then + return "" + end - return "" - end, - highlights = { - background = { - guibg = "None", + return "" + end, + highlights = { + background = { + guibg = "None", + }, + fill = { + guibg = "None", + }, + close_button = { + guibg = "None", + }, + separator_visible = { + guibg = "None", + }, + tab_close = { + guibg = "None", + }, + }, }, - fill = { - guibg = "None", - }, - close_button = { - guibg = "None", - }, - separator_visible = { - guibg = "None", - }, - tab_close = { - guibg = "None", - }, - }, - }, -}) + }) -vim.g.transparent_groups = vim.list_extend( - vim.g.transparent_groups or {}, - vim.tbl_map(function(v) - return v.hl_group - end, vim.tbl_values(require("bufferline.config").highlights)) -) + vim.g.transparent_groups = vim.list_extend( + vim.g.transparent_groups or {}, + vim.tbl_map(function(v) + return v.hl_group + end, vim.tbl_values(require("bufferline.config").highlights)) + ) + end, +} diff --git a/lua/taken/plugins/catppuccin.lua b/lua/taken/plugins/catppuccin.lua deleted file mode 100644 index 780dadb..0000000 --- a/lua/taken/plugins/catppuccin.lua +++ /dev/null @@ -1,11 +0,0 @@ -local status, catppuccin = pcall(require, "catppuccin") -if not status then - return -end - -catppuccin.setup({ - integrations = { - notify = true, - mason = true, - }, -}) diff --git a/lua/taken/plugins/cmdline.lua b/lua/taken/plugins/cmdline.lua new file mode 100644 index 0000000..fbe5976 --- /dev/null +++ b/lua/taken/plugins/cmdline.lua @@ -0,0 +1,31 @@ +return { + "VonHeikemen/fine-cmdline.nvim", + dependencies = "MunifTanjim/nui.nvim", + cmd = "FineCmdline", + config = function() + local cmdline = require("fine-cmdline") + + cmdline.setup({ + cmdline = { + enable_keymaps = true, + smart_history = true, + prompt = "> ", + }, + popup = { + position = { + row = "10%", + col = "50%", + }, + size = { + width = "80%", + }, + border = { + style = "rounded", + }, + win_options = { + winhighlight = "Normal:Normal,FloatBorder:FloatBorder", + }, + }, + }) + end, +} diff --git a/lua/taken/plugins/colors.lua b/lua/taken/plugins/colors.lua new file mode 100644 index 0000000..a9b5639 --- /dev/null +++ b/lua/taken/plugins/colors.lua @@ -0,0 +1,23 @@ +return { + { + "catppuccin/nvim", + name = "catppuccin", + priority = 1000, + config = function() + local catppuccin = require("catppuccin") + catppuccin.setup({ + integrations = { + notify = true, + mason = true, + }, + }) + end, + }, + { "folke/tokyonight.nvim", priority = 1000, lazy = true }, + { "Mofiqul/dracula.nvim", priority = 1000, lazy = true }, + { "roflolilolmao/oceanic-next.nvim", priority = 1000, lazy = true }, + { "olimorris/onedarkpro.nvim", priority = 1000, lazy = true }, + { "NTBBloodbath/doom-one.nvim", priority = 1000, lazy = true }, + { "shaunsingh/moonlight.nvim", priority = 1000, lazy = true }, + { "kvrohit/mellow.nvim", priority = 1000, lazy = true }, +} diff --git a/lua/taken/plugins/comment.lua b/lua/taken/plugins/comment.lua index 2416229..30bd392 100644 --- a/lua/taken/plugins/comment.lua +++ b/lua/taken/plugins/comment.lua @@ -1,29 +1,30 @@ -local setup, comment = pcall(require, "Comment") -if not setup then - return -end - -comment.setup({ - padding = true, - sticky = true, - ignore = nil, - toggler = { - line = "gcc", - block = "gbc", - }, - opleader = { - line = "gc", - block = "gb", - }, - extra = { - above = "gcO", - below = "gco", - eol = "gcA", - }, - mappings = { - basic = true, - extra = true, - }, - pre_hook = nil, - post_hook = nil, -}) +return { + "numToStr/Comment.nvim", + config = function() + local comment = require("Comment") + comment.setup({ + padding = true, + sticky = true, + ignore = nil, + toggler = { + line = "gcc", + block = "gbc", + }, + opleader = { + line = "gc", + block = "gb", + }, + extra = { + above = "gcO", + below = "gco", + eol = "gcA", + }, + mappings = { + basic = true, + extra = true, + }, + pre_hook = nil, + post_hook = nil, + }) + end, +} diff --git a/lua/taken/plugins/dashboard.lua b/lua/taken/plugins/dashboard.lua index 1a34733..fb84b01 100644 --- a/lua/taken/plugins/dashboard.lua +++ b/lua/taken/plugins/dashboard.lua @@ -1,82 +1,95 @@ -local staus, db = pcall(require, "dashboard") -if not staus then - return -end +return { + "glepnir/dashboard-nvim", + event = "VimEnter", + dependencies = { "nvim-tree/nvim-web-devicons" }, + config = function() + local db = require("dashboard") -local stats = require("lazy").stats() -local version = vim.version().major .. "." .. vim.version().minor .. "." .. vim.version().patch -local plugins_count = stats.count -local ms = math.floor(stats.startuptime + 0.5) -local time = vim.fn.strftime("%H:%M:%S") -local date = vim.fn.strftime("%d.%m.%Y") + local stats = require("lazy").stats() + local version = vim.version().major .. "." .. vim.version().minor .. "." .. vim.version().patch + local plugins_count = stats.count + local ms = math.floor(stats.startuptime + 0.5) + local time = vim.fn.strftime("%H:%M:%S") + local date = vim.fn.strftime("%d.%m.%Y") -db.setup({ - theme = "doom", - config = { - header = { - [[ ]], - [[ ================= =============== =============== ======== ======== ]], - [[ \\ . . . . . . .\\ //. . . . . . .\\ //. . . . . . .\\ \\. . .\\// . . // ]], - [[ ||. . ._____. . .|| ||. . ._____. . .|| ||. . ._____. . .|| || . . .\/ . . .|| ]], - [[ || . .|| ||. . || || . .|| ||. . || || . .|| ||. . || ||. . . . . . . || ]], - [[ ||. . || || . .|| ||. . || || . .|| ||. . || || . .|| || . | . . . . .|| ]], - [[ || . .|| ||. _-|| ||-_ .|| ||. . || || . .|| ||. _-|| ||-_.|\ . . . . || ]], - [[ ||. . || ||-' || || `-|| || . .|| ||. . || ||-' || || `|\_ . .|. .|| ]], - [[ || . _|| || || || || ||_ . || || . _|| || || || |\ `-_/| . || ]], - [[ ||_-' || .|/ || || \|. || `-_|| ||_-' || .|/ || || | \ / |-_.|| ]], - [[ || ||_-' || || `-_|| || || ||_-' || || | \ / | `|| ]], - [[ || `' || || `' || || `' || || | \ / | || ]], - [[ || .===' `===. .==='.`===. .===' /==. | \/ | || ]], - [[ || .==' \_|-_ `===. .===' _|_ `===. .===' _-|/ `== \/ | || ]], - [[ || .==' _-' `-_ `=' _-' `-_ `=' _-' `-_ /| \/ | || ]], - [[ || .==' _-' `-__\._-' `-_./__-' `' |. /| | || ]], - [[ ||.==' _-' `' | /==.|| ]], - [[ ==' _-' \/ `== ]], - [[ \ _-' `-_ / ]], - [[ `'' ``' ]], - [[ [ TIP: To exit Neovim, just power off your computer. ] ]], - [[ ]], - }, - center = { - { - icon = "󰍉 ", - icon_hl = "main", - desc = "Find files", - desc_hl = "main", - key = "f", - key_hl = "main", - action = "Telescope find_files", + db.setup({ + theme = "doom", + config = { + header = { + [[ ]], + [[ ================= =============== =============== ======== ======== ]], + [[ \\ . . . . . . .\\ //. . . . . . .\\ //. . . . . . .\\ \\. . .\\// . . // ]], + [[ ||. . ._____. . .|| ||. . ._____. . .|| ||. . ._____. . .|| || . . .\/ . . .|| ]], + [[ || . .|| ||. . || || . .|| ||. . || || . .|| ||. . || ||. . . . . . . || ]], + [[ ||. . || || . .|| ||. . || || . .|| ||. . || || . .|| || . | . . . . .|| ]], + [[ || . .|| ||. _-|| ||-_ .|| ||. . || || . .|| ||. _-|| ||-_.|\ . . . . || ]], + [[ ||. . || ||-' || || `-|| || . .|| ||. . || ||-' || || `|\_ . .|. .|| ]], + [[ || . _|| || || || || ||_ . || || . _|| || || || |\ `-_/| . || ]], + [[ ||_-' || .|/ || || \|. || `-_|| ||_-' || .|/ || || | \ / |-_.|| ]], + [[ || ||_-' || || `-_|| || || ||_-' || || | \ / | `|| ]], + [[ || `' || || `' || || `' || || | \ / | || ]], + [[ || .===' `===. .==='.`===. .===' /==. | \/ | || ]], + [[ || .==' \_|-_ `===. .===' _|_ `===. .===' _-|/ `== \/ | || ]], + [[ || .==' _-' `-_ `=' _-' `-_ `=' _-' `-_ /| \/ | || ]], + [[ || .==' _-' `-__\._-' `-_./__-' `' |. /| | || ]], + [[ ||.==' _-' `' | /==.|| ]], + [[ ==' _-' \/ `== ]], + [[ \ _-' `-_ / ]], + [[ `'' ``' ]], + [[ [ TIP: To exit Neovim, just power off your computer. ] ]], + [[ ]], + }, + center = { + { + icon = "󰍉 ", + icon_hl = "main", + desc = "Find files", + desc_hl = "main", + key = "f", + key_hl = "main", + action = "Telescope find_files", + }, + { + icon = " ", + icon_hl = "main", + desc = "Select project", + desc_hl = "main", + key = "p", + key_hl = "main", + action = "Telescope project", + }, + { + icon = " ", + icon_hl = "main", + desc = "Neorg", + desc_hl = "main", + key = "n", + key_hl = "main", + action = "Neorg workspace main", + }, + { + icon = "󰚰 ", + icon_hl = "main", + desc = "Lazy sync", + desc_hl = "main", + key = "l", + key_hl = "main", + action = "Lazy sync", + }, + }, + footer = { + " " + .. version + .. " " + .. plugins_count + .. " plugins in " + .. ms + .. "ms 󰃭 " + .. date + .. "  " + .. time, + }, }, - { - icon = " ", - icon_hl = "main", - desc = "Select project", - desc_hl = "main", - key = "p", - key_hl = "main", - action = "Telescope project", - }, - { - icon = " ", - icon_hl = "main", - desc = "Neorg", - desc_hl = "main", - key = "n", - key_hl = "main", - action = "Neorg workspace main", - }, - { - icon = "󰚰 ", - icon_hl = "main", - desc = "Lazy sync", - desc_hl = "main", - key = "l", - key_hl = "main", - action = "Lazy sync", - }, - }, - footer = { - " " .. version .. " " .. plugins_count .. " plugins in " .. ms .. "ms 󰃭 " .. date .. "  " .. time, - }, - }, -}) + }) + end, +} diff --git a/lua/taken/plugins/go.lua b/lua/taken/plugins/go.lua new file mode 100644 index 0000000..cc67e3d --- /dev/null +++ b/lua/taken/plugins/go.lua @@ -0,0 +1,18 @@ +return { + "ray-x/go.nvim", + dependencies = { + "ray-x/guihua.lua", + "neovim/nvim-lspconfig", + "nvim-treesitter/nvim-treesitter", + }, + ft = { "go", "gomod" }, + build = function() + require("go.install").update_all_sync() + end, + config = function() + local lspconfig = require("lspconfig") + local cfg = require("go.lsp").config() + + lspconfig["gopls"].setup(cfg) + end, +} diff --git a/lua/taken/plugins/keyseer.lua b/lua/taken/plugins/keyseer.lua new file mode 100644 index 0000000..b4a5623 --- /dev/null +++ b/lua/taken/plugins/keyseer.lua @@ -0,0 +1,55 @@ +return { + "jokajak/keyseer.nvim", + cmd = "KeySeer", + config = function() + local keyseer = require("keyseer") + + keyseer.setup({ + debug = false, + initial_mode = "n", + include_builtin_keymaps = true, + include_global_keymaps = true, + include_buffer_keymaps = true, + include_modified_keypresses = false, + ignore_whichkey_conflicts = true, + + ui = { + border = "double", + margin = { 1, 0, 1, 0 }, + winblend = 0, + size = { + width = 65, + height = 10, + }, + icons = { + keyseer = "", + }, + show_header = true, + }, + keyboard = { + layout = "qwertz", + keycap_padding = { 0, 1, 0, 1 }, + highlight_padding = { 0, 0, 0, 0 }, + key_labels = { + ["Up"] = "↑", + ["Down"] = "↓", + ["Left"] = "←", + ["Right"] = "→", + [""] = "F1", + [""] = "F2", + [""] = "F3", + [""] = "F4", + [""] = "F5", + [""] = "F6", + [""] = "F7", + [""] = "F8", + [""] = "F9", + [""] = "F10", + -- [""] = "SPC", + -- [""] = "RET", + -- [""] = "TAB", + }, + }, + }) + end, +} diff --git a/lua/taken/plugins/lazy/cmdline.lua b/lua/taken/plugins/lazy/cmdline.lua deleted file mode 100644 index 78cf79e..0000000 --- a/lua/taken/plugins/lazy/cmdline.lua +++ /dev/null @@ -1,27 +0,0 @@ -local status, cmdline = pcall(require, "fine-cmdline") -if not status then - return -end - -cmdline.setup({ - cmdline = { - enable_keymaps = true, - smart_history = true, - prompt = "> ", - }, - popup = { - position = { - row = "10%", - col = "50%", - }, - size = { - width = "80%", - }, - border = { - style = "rounded", - }, - win_options = { - winhighlight = "Normal:Normal,FloatBorder:FloatBorder", - }, - }, -}) diff --git a/lua/taken/plugins/lazy/go.lua b/lua/taken/plugins/lazy/go.lua deleted file mode 100644 index 145c2ec..0000000 --- a/lua/taken/plugins/lazy/go.lua +++ /dev/null @@ -1,9 +0,0 @@ -local go_status, go = pcall(require, "go") -if not go_status then - return -end - -local lspconfig = require("lspconfig") -local cfg = require("go.lsp").config() - -lspconfig["gopls"].setup(cfg) diff --git a/lua/taken/plugins/lazy/keyseer.lua b/lua/taken/plugins/lazy/keyseer.lua deleted file mode 100644 index d1d79b3..0000000 --- a/lua/taken/plugins/lazy/keyseer.lua +++ /dev/null @@ -1,52 +0,0 @@ -local status, keyseer = pcall(require, "keyseer") -if not status then - return -end - -keyseer.setup({ - debug = false, - initial_mode = "n", - include_builtin_keymaps = true, - include_global_keymaps = true, - include_buffer_keymaps = true, - include_modified_keypresses = false, - ignore_whichkey_conflicts = true, - - ui = { - border = "double", - margin = { 1, 0, 1, 0 }, - winblend = 0, - size = { - width = 65, - height = 10, - }, - icons = { - keyseer = "", - }, - show_header = true, - }, - keyboard = { - layout = "qwertz", - keycap_padding = { 0, 1, 0, 1 }, - highlight_padding = { 0, 0, 0, 0 }, - key_labels = { - ["Up"] = "↑", - ["Down"] = "↓", - ["Left"] = "←", - ["Right"] = "→", - [""] = "F1", - [""] = "F2", - [""] = "F3", - [""] = "F4", - [""] = "F5", - [""] = "F6", - [""] = "F7", - [""] = "F8", - [""] = "F9", - [""] = "F10", - -- [""] = "SPC", - -- [""] = "RET", - -- [""] = "TAB", - }, - }, -}) diff --git a/lua/taken/plugins/lazy/neogit.lua b/lua/taken/plugins/lazy/neogit.lua deleted file mode 100644 index 3408816..0000000 --- a/lua/taken/plugins/lazy/neogit.lua +++ /dev/null @@ -1,58 +0,0 @@ -local setup, neogit = pcall(require, "neogit") -if not setup then - return -end - -neogit.setup({ - auto_refresh = true, - remember_settings = true, - disable_insert_on_commit = false, - commit_popup = { - kind = "split", - }, - preview_buffer = { - kind = "split", - }, - popup = { - kind = "split", - }, - signs = { - section = { "", "" }, - item = { "", "" }, - hunk = { "", "" }, - }, - integrations = { - diffview = true, - }, - sections = { - untracked = { - folded = false, - }, - unstaged = { - folded = false, - }, - staged = { - folded = false, - }, - stashes = { - folded = true, - }, - unpulled = { - folded = true, - hidden = false, - }, - unmerged = { - folded = false, - hidden = false, - }, - recent = { - folded = true, - }, - }, - mappings = { - status = { - ["p"] = "PushPopup", - ["P"] = "PullPopup", - }, - }, -}) diff --git a/lua/taken/plugins/lazy/neorg.lua b/lua/taken/plugins/lazy/neorg.lua deleted file mode 100644 index fcb4633..0000000 --- a/lua/taken/plugins/lazy/neorg.lua +++ /dev/null @@ -1,18 +0,0 @@ -local status, neorg = pcall(require, "neorg") -if not status then - return -end - -neorg.setup({ - load = { - ["core.defaults"] = {}, - ["core.concealer"] = {}, - ["core.dirman"] = { - config = { - workspaces = { - main = "~/neorg/main", - }, - }, - }, - }, -}) diff --git a/lua/taken/plugins/lazy/nvimcord.lua b/lua/taken/plugins/lazy/nvimcord.lua deleted file mode 100644 index ef435ef..0000000 --- a/lua/taken/plugins/lazy/nvimcord.lua +++ /dev/null @@ -1,17 +0,0 @@ -local setup, nvimcord = pcall(require, "nvimcord") -if not setup then - return -end - -nvimcord.setup({ - autostart = false, - client_id = "954365489214291979", - large_file_icon = false, - log_level = vim.log.levels.DEBUG, - workspace_name = function() - return vim.cmd([[pwd]]) - end, - workspace_url = function() - return "" - end, -}) diff --git a/lua/taken/plugins/lazy/toggleterm.lua b/lua/taken/plugins/lazy/toggleterm.lua deleted file mode 100644 index 84e04de..0000000 --- a/lua/taken/plugins/lazy/toggleterm.lua +++ /dev/null @@ -1,9 +0,0 @@ -local status, toggleterm = pcall(require, "toggleterm") -if not status then - return -end - -toggleterm.setup({ - shell = "pwsh.exe -nologo", - start_in_insert = true, -}) diff --git a/lua/taken/plugins/lsp/lspconfig.lua b/lua/taken/plugins/lsp/lspconfig.lua index ea785df..3772907 100644 --- a/lua/taken/plugins/lsp/lspconfig.lua +++ b/lua/taken/plugins/lsp/lspconfig.lua @@ -1,89 +1,88 @@ -local lspconfig_status, lspconfig = pcall(require, "lspconfig") -if not lspconfig_status then - return -end +return { + "neovim/nvim-lspconfig", + dependencies = "hrsh7th/cmp-nvim-lsp", + config = function() + local lspconfig = require("lspconfig") + local cmp_nvim_lsp = require("cmp_nvim_lsp") -local cmp_nvim_lsp_status, cmp_nvim_lsp = pcall(require, "cmp_nvim_lsp") -if not cmp_nvim_lsp_status then - return -end + local on_attach = function(client, bufnr) + local opts = { noremap = true, silent = true, buffer = bufnr } + vim.keymap.set("n", "gd", function() + vim.lsp.buf.definition() + end, opts) + vim.keymap.set("n", "K", function() + vim.lsp.buf.hover() + end, opts) + vim.keymap.set("n", "vws", function() + vim.lsp.buf.workspace_symbol() + end, opts) + vim.keymap.set("n", "vd", function() + vim.diagnostic.open_float() + end, opts) + vim.keymap.set("n", "[d", function() + vim.diagnostic.goto_next() + end, opts) + vim.keymap.set("n", "]d", function() + vim.diagnostic.goto_prev() + end, opts) + vim.keymap.set("n", "vca", function() + vim.lsp.buf.code_action() + end, opts) + vim.keymap.set("n", "vrr", function() + vim.lsp.buf.references() + end, opts) + vim.keymap.set("n", "vrn", function() + vim.lsp.buf.rename() + end, opts) + vim.keymap.set("i", "", function() + vim.lsp.buf.signature_help() + end, opts) + end -local on_attach = function(client, bufnr) - local opts = { noremap = true, silent = true, buffer = bufnr } - vim.keymap.set("n", "gd", function() - vim.lsp.buf.definition() - end, opts) - vim.keymap.set("n", "K", function() - vim.lsp.buf.hover() - end, opts) - vim.keymap.set("n", "vws", function() - vim.lsp.buf.workspace_symbol() - end, opts) - vim.keymap.set("n", "vd", function() - vim.diagnostic.open_float() - end, opts) - vim.keymap.set("n", "[d", function() - vim.diagnostic.goto_next() - end, opts) - vim.keymap.set("n", "]d", function() - vim.diagnostic.goto_prev() - end, opts) - vim.keymap.set("n", "vca", function() - vim.lsp.buf.code_action() - end, opts) - vim.keymap.set("n", "vrr", function() - vim.lsp.buf.references() - end, opts) - vim.keymap.set("n", "vrn", function() - vim.lsp.buf.rename() - end, opts) - vim.keymap.set("i", "", function() - vim.lsp.buf.signature_help() - end, opts) -end + local capabilities = cmp_nvim_lsp.default_capabilities() -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 -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 - -lspconfig["lua_ls"].setup({ - capabilities = capabilities, - on_attach = on_attach, - settings = { - Lua = { - diagnostics = { - globals = { "vim" }, + lspconfig["lua_ls"].setup({ + capabilities = capabilities, + on_attach = on_attach, + settings = { + Lua = { + diagnostics = { + globals = { "vim" }, + }, + }, }, - }, - }, -}) + }) -lspconfig["html"].setup({ - capabilities = capabilities, - on_attach = on_attach, -}) + lspconfig["html"].setup({ + capabilities = capabilities, + on_attach = on_attach, + }) -lspconfig["tsserver"].setup({ - capabilities = capabilities, - on_attach = on_attach, -}) + lspconfig["tsserver"].setup({ + capabilities = capabilities, + on_attach = on_attach, + }) -lspconfig["cssls"].setup({ - capabilities = capabilities, - on_attach = on_attach, -}) + lspconfig["cssls"].setup({ + capabilities = capabilities, + on_attach = on_attach, + }) -lspconfig["pyright"].setup({ - capabilities = capabilities, - on_attach = on_attach, -}) + lspconfig["pyright"].setup({ + capabilities = capabilities, + on_attach = on_attach, + }) -lspconfig["powershell_es"].setup({ - capabilities = capabilities, - on_attach = on_attach, - bundle_path = vim.fn.stdpath("data") .. "/mason/packages/powershell-editor-services", -}) + lspconfig["powershell_es"].setup({ + capabilities = capabilities, + on_attach = on_attach, + bundle_path = vim.fn.stdpath("data") .. "/mason/packages/powershell-editor-services", + }) + end, +} diff --git a/lua/taken/plugins/lsp/mason.lua b/lua/taken/plugins/lsp/mason.lua index 90694b8..d997da7 100644 --- a/lua/taken/plugins/lsp/mason.lua +++ b/lua/taken/plugins/lsp/mason.lua @@ -1,37 +1,38 @@ -local mason_status, mason = pcall(require, "mason") -if not mason_status then - return -end - -local mason_lspconfig_status, mason_lspconfig = pcall(require, "mason-lspconfig") -if not mason_lspconfig_status then - return -end - -local mason_null_ls_status, mason_null_ls = pcall(require, "mason-null-ls") -if not mason_null_ls_status then - return -end - -mason.setup() - -mason_lspconfig.setup({ - ensure_installed = { - "tsserver", - "html", - "cssls", - "lua_ls", - "pyright", - "gopls", - "powershell_es", +return { + "williamboman/mason.nvim", + build = function() + pcall(vim.cmd, "MasonUpdate") + end, + dependencies = { + "williamboman/mason-lspconfig.nvim", + "jayp0521/mason-null-ls.nvim", }, - automatic_installation = true, -}) + config = function() + local mason = require("mason") + local mason_lspconfig = require("mason-lspconfig") + local mason_null_ls = require("mason-null-ls") -mason_null_ls.setup({ - ensure_installed = { - "stylua", - "clang-format", - }, - automatic_installation = true, -}) + mason.setup() + + mason_lspconfig.setup({ + ensure_installed = { + "tsserver", + "html", + "cssls", + "lua_ls", + "pyright", + "gopls", + "powershell_es", + }, + automatic_installation = true, + }) + + mason_null_ls.setup({ + ensure_installed = { + "stylua", + "clang-format", + }, + automatic_installation = true, + }) + end, +} diff --git a/lua/taken/plugins/lsp/null-ls.lua b/lua/taken/plugins/lsp/null-ls.lua index a39ae0d..5e08df0 100644 --- a/lua/taken/plugins/lsp/null-ls.lua +++ b/lua/taken/plugins/lsp/null-ls.lua @@ -1,14 +1,16 @@ -local setup, null_ls = pcall(require, "null-ls") -if not setup then - return -end +return { + "jose-elias-alvarez/null-ls.nvim", + config = function() + local null_ls = require("null-ls") -local formatting = null_ls.builtins.formatting -local diagnostics = null_ls.builtins.diagnostics + local formatting = null_ls.builtins.formatting + local diagnostics = null_ls.builtins.diagnostics -null_ls.setup({ - sources = { - formatting.stylua, - formatting.clang_format, - }, -}) + null_ls.setup({ + sources = { + formatting.stylua, + formatting.clang_format, + }, + }) + end, +} diff --git a/lua/taken/plugins/lualine.lua b/lua/taken/plugins/lualine.lua index 62b2b26..125973a 100644 --- a/lua/taken/plugins/lualine.lua +++ b/lua/taken/plugins/lualine.lua @@ -1,211 +1,214 @@ -local setup, lualine = pcall(require, "lualine") -if not setup then - return -end +return { + "nvim-lualine/lualine.nvim", + dependencies = { "nvim-tree/nvim-web-devicons" }, + config = function() + local lualine = require("lualine") -local colors = { - bg = "#1e1e2e", - fg = "#cdd6f4", - yellow = "#f9e2af", - cyan = "#89dceb", - darkblue = "#2374f6", - green = "#a6e3a1", - orange = "#fab387", - violet = "#f5c2e7", - magenta = "#cba6f7", - blue = "#89b4fa", - red = "#f38ba8", -} - -local conditions = { - buffer_not_empty = function() - return vim.fn.empty(vim.fn.expand("%:t")) ~= 1 - end, - hide_in_width = function() - return vim.fn.winwidth(0) > 80 - end, - check_git_workspace = function() - local filepath = vim.fn.expand("%:p:h") - local gitdir = vim.fn.finddir(".git", filepath .. ";") - return gitdir and #gitdir > 0 and #gitdir < #filepath - end, -} - --- Config -local config = { - options = { - -- Disable sections and component separators - component_separators = "", - section_separators = "", - theme = { - -- We are going to use lualine_c an lualine_x as left and - -- right section. Both are highlighted by c theme . So we - -- are just setting default looks o statusline - normal = { c = { fg = colors.fg, bg = colors.bg } }, - inactive = { c = { fg = colors.fg, bg = colors.bg } }, - }, - }, - sections = { - -- these are to remove the defaults - lualine_a = {}, - lualine_b = {}, - lualine_y = {}, - lualine_z = {}, - -- These will be filled later - lualine_c = {}, - lualine_x = {}, - }, - inactive_sections = { - -- these are to remove the defaults - lualine_a = {}, - lualine_b = {}, - lualine_y = {}, - lualine_z = {}, - lualine_c = {}, - lualine_x = {}, - }, -} - --- Inserts a component in lualine_c at left section -local function ins_left(component) - table.insert(config.sections.lualine_c, component) -end - --- Inserts a component in lualine_x at right section -local function ins_right(component) - table.insert(config.sections.lualine_x, component) -end - -ins_left({ - function() - return "▊" - end, - color = { fg = colors.blue }, -- Sets highlighting of component - padding = { left = 0, right = 1 }, -- We don't need space before this -}) - -ins_left({ - -- mode component - function() - return "" - end, - color = function() - -- auto change color according to neovims mode - local mode_color = { - n = colors.red, - i = colors.green, - v = colors.blue, - [""] = colors.blue, - V = colors.blue, - c = colors.magenta, - no = colors.red, - s = colors.orange, - S = colors.orange, - [""] = colors.orange, - ic = colors.yellow, - R = colors.violet, - Rv = colors.violet, - cv = colors.red, - ce = colors.red, - r = colors.cyan, - rm = colors.cyan, - ["r?"] = colors.cyan, - ["!"] = colors.red, - t = colors.red, + local colors = { + bg = "#1e1e2e", + fg = "#cdd6f4", + yellow = "#f9e2af", + cyan = "#89dceb", + darkblue = "#2374f6", + green = "#a6e3a1", + orange = "#fab387", + violet = "#f5c2e7", + magenta = "#cba6f7", + blue = "#89b4fa", + red = "#f38ba8", } - return { fg = mode_color[vim.fn.mode()] } - end, - padding = { right = 1 }, -}) -ins_left({ - -- filesize component - "filesize", - cond = conditions.buffer_not_empty, -}) + local conditions = { + buffer_not_empty = function() + return vim.fn.empty(vim.fn.expand("%:t")) ~= 1 + end, + hide_in_width = function() + return vim.fn.winwidth(0) > 80 + end, + check_git_workspace = function() + local filepath = vim.fn.expand("%:p:h") + local gitdir = vim.fn.finddir(".git", filepath .. ";") + return gitdir and #gitdir > 0 and #gitdir < #filepath + end, + } -ins_left({ - "filename", - cond = conditions.buffer_not_empty, - color = { fg = colors.magenta, gui = "bold" }, -}) + -- Config + local config = { + options = { + -- Disable sections and component separators + component_separators = "", + section_separators = "", + theme = { + -- We are going to use lualine_c an lualine_x as left and + -- right section. Both are highlighted by c theme . So we + -- are just setting default looks o statusline + normal = { c = { fg = colors.fg, bg = colors.bg } }, + inactive = { c = { fg = colors.fg, bg = colors.bg } }, + }, + }, + sections = { + -- these are to remove the defaults + lualine_a = {}, + lualine_b = {}, + lualine_y = {}, + lualine_z = {}, + -- These will be filled later + lualine_c = {}, + lualine_x = {}, + }, + inactive_sections = { + -- these are to remove the defaults + lualine_a = {}, + lualine_b = {}, + lualine_y = {}, + lualine_z = {}, + lualine_c = {}, + lualine_x = {}, + }, + } -ins_left({ "location" }) - -ins_left({ "progress", color = { fg = colors.fg, gui = "bold" } }) - -ins_left({ - "diagnostics", - sources = { "nvim_diagnostic" }, - symbols = { error = " ", warn = " ", info = " " }, - diagnostics_color = { - color_error = { fg = colors.red }, - color_warn = { fg = colors.yellow }, - color_info = { fg = colors.cyan }, - }, -}) - --- Insert mid section. You can make any number of sections in neovim :) --- for lualine it's any number greater then 2 -ins_left({ - function() - return "%=" - end, -}) - -ins_right({ - -- Lsp server name . - function() - local msg = "No Active Lsp" - local buf_ft = vim.api.nvim_buf_get_option(0, "filetype") - local clients = vim.lsp.get_active_clients() - if next(clients) == nil then - return msg + -- Inserts a component in lualine_c at left section + local function ins_left(component) + table.insert(config.sections.lualine_c, component) end - for _, client in ipairs(clients) do - local filetypes = client.config.filetypes - if filetypes and vim.fn.index(filetypes, buf_ft) ~= -1 then - return client.name - end + + -- Inserts a component in lualine_x at right section + local function ins_right(component) + table.insert(config.sections.lualine_x, component) end - return msg + + ins_left({ + function() + return "▊" + end, + color = { fg = colors.blue }, -- Sets highlighting of component + padding = { left = 0, right = 1 }, -- We don't need space before this + }) + + ins_left({ + -- mode component + function() + return "" + end, + color = function() + -- auto change color according to neovims mode + local mode_color = { + n = colors.red, + i = colors.green, + v = colors.blue, + [""] = colors.blue, + V = colors.blue, + c = colors.magenta, + no = colors.red, + s = colors.orange, + S = colors.orange, + [""] = colors.orange, + ic = colors.yellow, + R = colors.violet, + Rv = colors.violet, + cv = colors.red, + ce = colors.red, + r = colors.cyan, + rm = colors.cyan, + ["r?"] = colors.cyan, + ["!"] = colors.red, + t = colors.red, + } + return { fg = mode_color[vim.fn.mode()] } + end, + padding = { right = 1 }, + }) + + ins_left({ + -- filesize component + "filesize", + cond = conditions.buffer_not_empty, + }) + + ins_left({ + "filename", + cond = conditions.buffer_not_empty, + color = { fg = colors.magenta, gui = "bold" }, + }) + + ins_left({ "location" }) + + ins_left({ "progress", color = { fg = colors.fg, gui = "bold" } }) + + ins_left({ + "diagnostics", + sources = { "nvim_diagnostic" }, + symbols = { error = " ", warn = " ", info = " " }, + diagnostics_color = { + color_error = { fg = colors.red }, + color_warn = { fg = colors.yellow }, + color_info = { fg = colors.cyan }, + }, + }) + + -- Insert mid section. You can make any number of sections in neovim :) + -- for lualine it's any number greater then 2 + ins_left({ + function() + return "%=" + end, + }) + + ins_right({ + -- Lsp server name . + function() + local msg = "No Active Lsp" + local buf_ft = vim.api.nvim_buf_get_option(0, "filetype") + local clients = vim.lsp.get_active_clients() + if next(clients) == nil then + return msg + end + for _, client in ipairs(clients) do + local filetypes = client.config.filetypes + if filetypes and vim.fn.index(filetypes, buf_ft) ~= -1 then + return client.name + end + end + return msg + end, + icon = " :", + color = { fg = "#ffffff", gui = "bold" }, + }) + + -- Add components to right sections + ins_right({ + require("lazy.status").updates, + cond = require("lazy.status").has_updates, + color = { fg = colors.violet }, + }) + + ins_right({ + "branch", + icon = "", + color = { fg = colors.violet, gui = "bold" }, + }) + + ins_right({ + "diff", + -- Is it me or the symbol for modified us really weird + symbols = { added = " ", modified = "󰝤 ", removed = " " }, + diff_color = { + added = { fg = colors.green }, + modified = { fg = colors.orange }, + removed = { fg = colors.red }, + }, + cond = conditions.hide_in_width, + }) + + ins_right({ + function() + return "▊" + end, + color = { fg = colors.blue }, + padding = { left = 1 }, + }) + + -- Now don't forget to initialize lualine + lualine.setup(config) end, - icon = " :", - color = { fg = "#ffffff", gui = "bold" }, -}) - --- Add components to right sections -ins_right({ - require("lazy.status").updates, - cond = require("lazy.status").has_updates, - color = { fg = colors.violet }, -}) - -ins_right({ - "branch", - icon = "", - color = { fg = colors.violet, gui = "bold" }, -}) - -ins_right({ - "diff", - -- Is it me or the symbol for modified us really weird - symbols = { added = " ", modified = "󰝤 ", removed = " " }, - diff_color = { - added = { fg = colors.green }, - modified = { fg = colors.orange }, - removed = { fg = colors.red }, - }, - cond = conditions.hide_in_width, -}) - -ins_right({ - function() - return "▊" - end, - color = { fg = colors.blue }, - padding = { left = 1 }, -}) - --- Now don't forget to initialize lualine -lualine.setup(config) +} diff --git a/lua/taken/plugins/neogit.lua b/lua/taken/plugins/neogit.lua new file mode 100644 index 0000000..2e823ef --- /dev/null +++ b/lua/taken/plugins/neogit.lua @@ -0,0 +1,62 @@ +return { + "NeogitOrg/neogit", + dependencies = "nvim-lua/plenary.nvim", + cmd = "Neogit", + config = function() + local neogit = require("neogit") + + neogit.setup({ + auto_refresh = true, + remember_settings = true, + disable_insert_on_commit = false, + commit_popup = { + kind = "split", + }, + preview_buffer = { + kind = "split", + }, + popup = { + kind = "split", + }, + signs = { + section = { "", "" }, + item = { "", "" }, + hunk = { "", "" }, + }, + integrations = { + diffview = true, + }, + sections = { + untracked = { + folded = false, + }, + unstaged = { + folded = false, + }, + staged = { + folded = false, + }, + stashes = { + folded = true, + }, + unpulled = { + folded = true, + hidden = false, + }, + unmerged = { + folded = false, + hidden = false, + }, + recent = { + folded = true, + }, + }, + mappings = { + status = { + ["p"] = "PushPopup", + ["P"] = "PullPopup", + }, + }, + }) + end, +} diff --git a/lua/taken/plugins/neorg.lua b/lua/taken/plugins/neorg.lua new file mode 100644 index 0000000..6f08fb8 --- /dev/null +++ b/lua/taken/plugins/neorg.lua @@ -0,0 +1,24 @@ +return { + "nvim-neorg/neorg", + build = ":Neorg sync-parsers", + dependencies = "nvim-lua/plenary.nvim", + cmd = "Neorg", + ft = "norg", + config = function() + local neorg = require("neorg") + + neorg.setup({ + load = { + ["core.defaults"] = {}, + ["core.concealer"] = {}, + ["core.dirman"] = { + config = { + workspaces = { + main = "~/neorg/main", + }, + }, + }, + }, + }) + end, +} diff --git a/lua/taken/plugins/nvim-cmp.lua b/lua/taken/plugins/nvim-cmp.lua index 8165a2b..b2fb114 100644 --- a/lua/taken/plugins/nvim-cmp.lua +++ b/lua/taken/plugins/nvim-cmp.lua @@ -1,47 +1,50 @@ -local cmp_status, cmp = pcall(require, "cmp") -if not cmp_status then - return -end - -local luasnip_status, luasnip = pcall(require, "luasnip") -if not luasnip_status then - return -end - -local lspkind_status, lspkind = pcall(require, "lspkind") -if not lspkind_status then - return -end - -require("luasnip/loaders/from_vscode").lazy_load() - -vim.opt.completeopt = "menu,menuone,noselect" - -cmp.setup({ - snippet = { - expand = function(args) - luasnip.lsp_expand(args.body) - end, +return { + "hrsh7th/nvim-cmp", + dependencies = { + "hrsh7th/cmp-nvim-lsp", + "hrsh7th/cmp-buffer", + "hrsh7th/cmp-path", + "L3MON4D3/LuaSnip", + "saadparwaiz1/cmp_luasnip", + "rafamadriz/friendly-snippets", + "onsails/lspkind.nvim", }, - mapping = cmp.mapping.preset.insert({ - [""] = cmp.mapping.select_prev_item(), -- previous suggestion - [""] = cmp.mapping.select_next_item(), -- next suggestion - [""] = cmp.mapping.complete(), -- show completion suggestions - [""] = cmp.mapping.confirm({ select = false }), - [""] = nil, - [""] = nil, - }), + config = function() + local cmp = require("cmp") + local luasnip = require("luasnip") + local lspkind = require("lspkind") - sources = cmp.config.sources({ - { name = "nvim_lsp" }, -- lsp - { name = "luasnip" }, -- snippets - { name = "buffer" }, -- text within current buffer - { name = "path" }, -- file system paths - }), - formatting = { - format = lspkind.cmp_format({ - maxwidth = 50, - ellipsis_char = "...", - }), - }, -}) + require("luasnip/loaders/from_vscode").lazy_load() + + vim.opt.completeopt = "menu,menuone,noselect" + + cmp.setup({ + snippet = { + 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.complete(), -- show completion suggestions + [""] = cmp.mapping.confirm({ select = false }), + [""] = nil, + [""] = nil, + }), + + sources = cmp.config.sources({ + { name = "nvim_lsp" }, -- lsp + { name = "luasnip" }, -- snippets + { name = "buffer" }, -- text within current buffer + { name = "path" }, -- file system paths + }), + formatting = { + format = lspkind.cmp_format({ + maxwidth = 50, + ellipsis_char = "...", + }), + }, + }) + end, +} diff --git a/lua/taken/plugins/nvimcord.lua b/lua/taken/plugins/nvimcord.lua new file mode 100644 index 0000000..600af69 --- /dev/null +++ b/lua/taken/plugins/nvimcord.lua @@ -0,0 +1,21 @@ +return { + "ObserverOfTime/nvimcord", + cmd = "NvimcordUpdate", + enabled = false, + config = function() + local nvimcord = require("nvimcord") + + nvimcord.setup({ + autostart = false, + client_id = "954365489214291979", + large_file_icon = false, + log_level = vim.log.levels.DEBUG, + workspace_name = function() + return vim.cmd([[pwd]]) + end, + workspace_url = function() + return "" + end, + }) + end, +} diff --git a/lua/taken/plugins/nvimtree.lua b/lua/taken/plugins/nvimtree.lua index 16c718c..878ce84 100644 --- a/lua/taken/plugins/nvimtree.lua +++ b/lua/taken/plugins/nvimtree.lua @@ -1,24 +1,27 @@ -local setup, nvimtree = pcall(require, "nvim-tree") -if not setup then - return -end +return { + "nvim-tree/nvim-tree.lua", + dependencies = { "nvim-tree/nvim-web-devicons" }, + config = function() + local nvimtree = require("nvim-tree") -nvimtree.setup({ - sync_root_with_cwd = true, - view = { - width = 30, - }, - git = { - ignore = false, - }, - filters = { - dotfiles = false, - custom = { - "node_modules", - ".git", - }, - exclude = { - ".gitignore", - }, - }, -}) + nvimtree.setup({ + sync_root_with_cwd = true, + view = { + width = 30, + }, + git = { + ignore = false, + }, + filters = { + dotfiles = false, + custom = { + "node_modules", + ".git", + }, + exclude = { + ".gitignore", + }, + }, + }) + end, +} diff --git a/lua/taken/plugins/otherplugins.lua b/lua/taken/plugins/otherplugins.lua new file mode 100644 index 0000000..40ca61f --- /dev/null +++ b/lua/taken/plugins/otherplugins.lua @@ -0,0 +1,59 @@ +return { + { + "github/copilot.vim", + event = "VimEnter", + }, + { + "folke/todo-comments.nvim", + dependencies = { "nvim-lua/plenary.nvim" }, + config = true, + }, + { + "folke/trouble.nvim", + dependencies = { "nvim-tree/nvim-web-devicons" }, + }, + { + "sindrets/diffview.nvim", + cmd = "DiffviewOpen", + }, + { "windwp/nvim-ts-autotag", dependencies = "nvim-treesitter" }, + { + "lewis6991/gitsigns.nvim", + config = true, + }, + { + "szw/vim-maximizer", + cmd = "MaximizerToggle", + }, + { + "NvChad/nvim-colorizer.lua", + config = true, + }, + "rcarriga/nvim-notify", + { + "kylechui/nvim-surround", + version = "*", + config = true, + }, + { + "iamcco/markdown-preview.nvim", + build = function() + vim.fn["mkdp#util#install"]() + end, + config = function() + vim.cmd([[ + let g:mkdp_auto_close = 0 + let g:mkdp_theme = 'dark' + ]]) + end, + ft = "markdown", + }, + { + "f-person/git-blame.nvim", + config = function() + vim.cmd([[ + let g:gitblame_enabled = 1 + ]]) + end, + }, +} diff --git a/lua/taken/plugins/presence.lua b/lua/taken/plugins/presence.lua index a05ba3f..904f416 100644 --- a/lua/taken/plugins/presence.lua +++ b/lua/taken/plugins/presence.lua @@ -1,29 +1,31 @@ -local setup, presence = pcall(require, "presence") -if not setup then - return -end +return { + "TakenMC/presence.nvim", + config = function() + local presence = require("presence") -presence.setup({ - auto_update = true, - neovim_image_text = "The One True Text Editor", - main_image = "neovim", - client_id = "793271441293967371", - log_level = info, - debounce_timeout = 10, - enable_line_number = false, - blacklist = {}, - buttons = { - { label = "Neovim", url = "https://github.com/neovim/neovim" }, - { label = "My config", url = "https://gitlab.com/taken-personal/neovim-config" }, - }, - file_assets = {}, - show_time = true, + presence.setup({ + auto_update = true, + neovim_image_text = "The One True Text Editor", + main_image = "neovim", + client_id = "793271441293967371", + log_level = info, + debounce_timeout = 10, + enable_line_number = false, + blacklist = {}, + buttons = { + { label = "Neovim", url = "https://github.com/neovim/neovim" }, + { label = "My config", url = "https://gitlab.com/taken-personal/neovim-config" }, + }, + file_assets = {}, + show_time = true, - editing_text = "Editing %s", - file_explorer_text = "Browsing %s", - git_commit_text = "Committing changes", - plugin_manager_text = "Managing plugins", - reading_text = "Reading %s", - workspace_text = "Working on %s", - line_number_text = "Line %s out of %s", -}) + editing_text = "Editing %s", + file_explorer_text = "Browsing %s", + git_commit_text = "Committing changes", + plugin_manager_text = "Managing plugins", + reading_text = "Reading %s", + workspace_text = "Working on %s", + line_number_text = "Line %s out of %s", + }) + end, +} diff --git a/lua/taken/plugins/telescope.lua b/lua/taken/plugins/telescope.lua index d13f170..8901343 100644 --- a/lua/taken/plugins/telescope.lua +++ b/lua/taken/plugins/telescope.lua @@ -1,32 +1,41 @@ -local telescope_setup, telescope = pcall(require, "telescope") -if not telescope_setup then - return -end - -telescope.load_extension("project") - -telescope.setup({ - extensions = { - project = { - sync_with_nvim_tree = true, - on_project_selected = function() - require("nvim-tree.api").tree.change_root(vim.fn.getcwd()) - end, - }, - file_browser = { - hidden = { - file_browser = true, - folder_browser = true, - }, - }, - fzf = { - fuzzy = true, -- false will only do exact matching - override_generic_sorter = true, -- override the generic sorter - override_file_sorter = true, -- override the file sorter - case_mode = "smart_case", -- or "ignore_case" or "respect_case" - }, +return { + "nvim-telescope/telescope.nvim", + version = "0.1.1", + dependencies = { + "nvim-lua/plenary.nvim", + "nvim-telescope/telescope-file-browser.nvim", + "nvim-telescope/telescope-project.nvim", + { "nvim-telescope/telescope-fzf-native.nvim", build = "make" }, }, -}) + config = function() + local telescope = require("telescope") -telescope.load_extension("file_browser") -telescope.load_extension("fzf") + telescope.load_extension("project") + + telescope.setup({ + extensions = { + project = { + sync_with_nvim_tree = true, + on_project_selected = function() + require("nvim-tree.api").tree.change_root(vim.fn.getcwd()) + end, + }, + file_browser = { + hidden = { + file_browser = true, + folder_browser = true, + }, + }, + fzf = { + fuzzy = true, -- false will only do exact matching + override_generic_sorter = true, -- override the generic sorter + override_file_sorter = true, -- override the file sorter + case_mode = "smart_case", -- or "ignore_case" or "respect_case" + }, + }, + }) + + telescope.load_extension("file_browser") + telescope.load_extension("fzf") + end, +} diff --git a/lua/taken/plugins/toggleterm.lua b/lua/taken/plugins/toggleterm.lua new file mode 100644 index 0000000..fa8bd87 --- /dev/null +++ b/lua/taken/plugins/toggleterm.lua @@ -0,0 +1,12 @@ +return { + "akinsho/toggleterm.nvim", + version = "*", + cmd = "ToggleTerm", + config = function() + local toggleterm = require("toggleterm") + toggleterm.setup({ + shell = "pwsh.exe -nologo", + start_in_insert = true, + }) + end, +} diff --git a/lua/taken/plugins/transparent.lua b/lua/taken/plugins/transparent.lua index ebb9607..47ceda0 100644 --- a/lua/taken/plugins/transparent.lua +++ b/lua/taken/plugins/transparent.lua @@ -1,47 +1,49 @@ -local status, transparent = pcall(require, "transparent") -if not status then - return -end +return { + "xiyaowong/transparent.nvim", + config = function() + local transparent = require("transparent") -transparent.setup({ - groups = { - "Normal", - "NormalNC", - "Comment", - "Constant", - "Special", - "Identifier", - "Statement", - "PreProc", - "Type", - "Underlined", - "Todo", - "String", - "Function", - "Conditional", - "Repeat", - "Operator", - "Structure", - "LineNr", - "NonText", - "SignColumn", - "CursorLineNr", - "EndOfBuffer", - }, - extra_groups = { - "NormalSB", - "NvimTreeNormal", - "NvimTreeNormalNC", - "NvimTreeNormalSB", - "Folded", - "NonText", - "SpecialKey", - "VertSplit", - "EndOfBuffer", - "SignColumn", - "BufferLineFill", - "BufferLineBackground", - "BufferLineBufferSelected", - }, - exclude_groups = {}, -}) + transparent.setup({ + groups = { + "Normal", + "NormalNC", + "Comment", + "Constant", + "Special", + "Identifier", + "Statement", + "PreProc", + "Type", + "Underlined", + "Todo", + "String", + "Function", + "Conditional", + "Repeat", + "Operator", + "Structure", + "LineNr", + "NonText", + "SignColumn", + "CursorLineNr", + "EndOfBuffer", + }, + extra_groups = { + "NormalSB", + "NvimTreeNormal", + "NvimTreeNormalNC", + "NvimTreeNormalSB", + "Folded", + "NonText", + "SpecialKey", + "VertSplit", + "EndOfBuffer", + "SignColumn", + "BufferLineFill", + "BufferLineBackground", + "BufferLineBufferSelected", + }, + exclude_groups = {}, + }) + end, +} diff --git a/lua/taken/plugins/treesitter.lua b/lua/taken/plugins/treesitter.lua index 1710012..daf0abd 100644 --- a/lua/taken/plugins/treesitter.lua +++ b/lua/taken/plugins/treesitter.lua @@ -1,15 +1,18 @@ -local status, treesitter = pcall(require, "nvim-treesitter.configs") -if not status then - return -end +return { + "nvim-treesitter/nvim-treesitter", + build = ":TSUpdate", + config = function() + local treesitter = require("nvim-treesitter.configs") -treesitter.setup({ - ensure_installed = { "lua", "vim", "vimdoc", "javascript", "java", "json" }, - sync_install = false, - auto_install = true, + treesitter.setup({ + ensure_installed = { "lua", "vim", "vimdoc", "javascript", "java", "json" }, + sync_install = false, + auto_install = true, - highlight = { - enable = true, - additional_vim_regex_highlighting = false, - }, -}) + highlight = { + enable = true, + additional_vim_regex_highlighting = false, + }, + }) + end, +} diff --git a/lua/taken/plugins/whichkey.lua b/lua/taken/plugins/whichkey.lua index c07ec5c..0cdd689 100644 --- a/lua/taken/plugins/whichkey.lua +++ b/lua/taken/plugins/whichkey.lua @@ -1,48 +1,50 @@ -local status, whichkey = pcall(require, "which-key") -if not status then - return -end +return { + "folke/which-key.nvim", + config = function() + local whichkey = require("which-key") -whichkey.setup({ - key_labels = { - [""] = "SPC", - [""] = "SPC", - [""] = "RET", - [""] = "RET", - [""] = "TAB", - }, - icons = { - breadcrumb = "»", - separator = "➜", - group = "➜", - }, -}) + whichkey.setup({ + key_labels = { + [""] = "SPC", + [""] = "SPC", + [""] = "RET", + [""] = "RET", + [""] = "TAB", + }, + icons = { + breadcrumb = "»", + separator = "➜", + group = "➜", + }, + }) -whichkey.register({ - [""] = { - w = { - name = "window", - }, - f = { - name = "find", - }, - b = { - name = "buffer", - }, - g = { - name = "git", - }, - l = { - name = "lazy", - }, - t = { - name = "toggle", - }, - v = { - name = "lsp", - }, - h = { - name = "theme", - }, - }, -}) + whichkey.register({ + [""] = { + w = { + name = "window", + }, + f = { + name = "find", + }, + b = { + name = "buffer", + }, + g = { + name = "git", + }, + l = { + name = "lazy", + }, + t = { + name = "toggle", + }, + v = { + name = "lsp", + }, + h = { + name = "theme", + }, + }, + }) + end, +}