Moving to individual plugin files for lazy

Signed-off-by: Taken <taken@mairimashita.org>
This commit is contained in:
2023-09-03 13:36:05 +02:00
parent e9fad30daf
commit 93d665867b
37 changed files with 1130 additions and 1205 deletions

View File

@@ -1,5 +1,5 @@
require("taken.lazy")
require("taken.core") require("taken.core")
require("taken.lazy")
require("taken.prefs") require("taken.prefs")
vim.notify = require("notify") vim.notify = require("notify")

30
lua/taken/lazy.lua Normal file
View File

@@ -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)

View File

@@ -1,2 +0,0 @@
require("taken.lazy.lazy")
require("taken.lazy.pluginloader")

View File

@@ -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)

View File

@@ -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

View File

@@ -1,13 +1,15 @@
local autopairs_setup, autopairs = pcall(require, "nvim-autopairs") return {
if not autopairs_setup then "windwp/nvim-autopairs",
return config = function()
end local autopairs = require("nvim-autopairs")
autopairs.setup({ autopairs.setup({
check_ts = true, check_ts = true,
ts_config = { ts_config = {
lua = { "string" }, lua = { "string" },
javascript = { "template_string" }, javascript = { "template_string" },
java = false, java = false,
}, },
}) })
end,
}

View File

@@ -1,9 +1,11 @@
local setup, bufferline = pcall(require, "bufferline") return {
if not setup then "akinsho/bufferline.nvim",
return version = "*",
end dependencies = "nvim-tree/nvim-web-devicons",
config = function()
local bufferline = require("bufferline")
bufferline.setup({ bufferline.setup({
options = { options = {
mode = "buffers", mode = "buffers",
style_preset = bufferline.style_preset.default, style_preset = bufferline.style_preset.default,
@@ -28,7 +30,8 @@ bufferline.setup({
}, },
color_icons = true, color_icons = true,
get_element_icon = function(element) get_element_icon = function(element)
local icon, hl = require("nvim-web-devicons").get_icon_by_filetype(element.filetype, { default = false }) local icon, hl =
require("nvim-web-devicons").get_icon_by_filetype(element.filetype, { default = false })
return icon, hl return icon, hl
end, end,
always_show_bufferline = true, always_show_bufferline = true,
@@ -59,11 +62,13 @@ bufferline.setup({
}, },
}, },
}, },
}) })
vim.g.transparent_groups = vim.list_extend( vim.g.transparent_groups = vim.list_extend(
vim.g.transparent_groups or {}, vim.g.transparent_groups or {},
vim.tbl_map(function(v) vim.tbl_map(function(v)
return v.hl_group return v.hl_group
end, vim.tbl_values(require("bufferline.config").highlights)) end, vim.tbl_values(require("bufferline.config").highlights))
) )
end,
}

View File

@@ -1,11 +0,0 @@
local status, catppuccin = pcall(require, "catppuccin")
if not status then
return
end
catppuccin.setup({
integrations = {
notify = true,
mason = true,
},
})

View File

@@ -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,
}

View File

@@ -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 },
}

View File

@@ -1,9 +1,8 @@
local setup, comment = pcall(require, "Comment") return {
if not setup then "numToStr/Comment.nvim",
return config = function()
end local comment = require("Comment")
comment.setup({
comment.setup({
padding = true, padding = true,
sticky = true, sticky = true,
ignore = nil, ignore = nil,
@@ -26,4 +25,6 @@ comment.setup({
}, },
pre_hook = nil, pre_hook = nil,
post_hook = nil, post_hook = nil,
}) })
end,
}

View File

@@ -1,16 +1,18 @@
local staus, db = pcall(require, "dashboard") return {
if not staus then "glepnir/dashboard-nvim",
return event = "VimEnter",
end dependencies = { "nvim-tree/nvim-web-devicons" },
config = function()
local db = require("dashboard")
local stats = require("lazy").stats() local stats = require("lazy").stats()
local version = vim.version().major .. "." .. vim.version().minor .. "." .. vim.version().patch local version = vim.version().major .. "." .. vim.version().minor .. "." .. vim.version().patch
local plugins_count = stats.count local plugins_count = stats.count
local ms = math.floor(stats.startuptime + 0.5) local ms = math.floor(stats.startuptime + 0.5)
local time = vim.fn.strftime("%H:%M:%S") local time = vim.fn.strftime("%H:%M:%S")
local date = vim.fn.strftime("%d.%m.%Y") local date = vim.fn.strftime("%d.%m.%Y")
db.setup({ db.setup({
theme = "doom", theme = "doom",
config = { config = {
header = { header = {
@@ -76,7 +78,18 @@ db.setup({
}, },
}, },
footer = { footer = {
"" .. version .. " " .. plugins_count .. " plugins in " .. ms .. "ms 󰃭 " .. date .. "" .. time, ""
.. version
.. " "
.. plugins_count
.. " plugins in "
.. ms
.. "ms 󰃭 "
.. date
.. ""
.. time,
}, },
}, },
}) })
end,
}

18
lua/taken/plugins/go.lua Normal file
View File

@@ -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,
}

View File

@@ -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>"] = "F1",
["<F2>"] = "F2",
["<F3>"] = "F3",
["<F4>"] = "F4",
["<F5>"] = "F5",
["<F6>"] = "F6",
["<F7>"] = "F7",
["<F8>"] = "F8",
["<F9>"] = "F9",
["<F10>"] = "F10",
-- ["<space>"] = "SPC",
-- ["<cr>"] = "RET",
-- ["<tab>"] = "TAB",
},
},
})
end,
}

View File

@@ -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",
},
},
})

View File

@@ -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)

View File

@@ -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>"] = "F1",
["<F2>"] = "F2",
["<F3>"] = "F3",
["<F4>"] = "F4",
["<F5>"] = "F5",
["<F6>"] = "F6",
["<F7>"] = "F7",
["<F8>"] = "F8",
["<F9>"] = "F9",
["<F10>"] = "F10",
-- ["<space>"] = "SPC",
-- ["<cr>"] = "RET",
-- ["<tab>"] = "TAB",
},
},
})

View File

@@ -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",
},
},
})

View File

@@ -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",
},
},
},
},
})

View File

@@ -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,
})

View File

@@ -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,
})

View File

@@ -1,14 +1,11 @@
local lspconfig_status, lspconfig = pcall(require, "lspconfig") return {
if not lspconfig_status then "neovim/nvim-lspconfig",
return dependencies = "hrsh7th/cmp-nvim-lsp",
end 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") local on_attach = function(client, bufnr)
if not cmp_nvim_lsp_status then
return
end
local on_attach = function(client, bufnr)
local opts = { noremap = true, silent = true, buffer = bufnr } local opts = { noremap = true, silent = true, buffer = bufnr }
vim.keymap.set("n", "gd", function() vim.keymap.set("n", "gd", function()
vim.lsp.buf.definition() vim.lsp.buf.definition()
@@ -40,17 +37,17 @@ local on_attach = function(client, bufnr)
vim.keymap.set("i", "<C-h>", function() vim.keymap.set("i", "<C-h>", function()
vim.lsp.buf.signature_help() vim.lsp.buf.signature_help()
end, opts) end, opts)
end end
local capabilities = cmp_nvim_lsp.default_capabilities() local capabilities = cmp_nvim_lsp.default_capabilities()
local signs = { Error = "", Warn = "", Hint = "", Info = "" } local signs = { Error = "", Warn = "", Hint = "", Info = "" }
for type, icon in pairs(signs) do for type, icon in pairs(signs) do
local hl = "DiagnosticSign" .. type local hl = "DiagnosticSign" .. type
vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" }) vim.fn.sign_define(hl, { text = icon, texthl = hl, numhl = "" })
end end
lspconfig["lua_ls"].setup({ lspconfig["lua_ls"].setup({
capabilities = capabilities, capabilities = capabilities,
on_attach = on_attach, on_attach = on_attach,
settings = { settings = {
@@ -60,30 +57,32 @@ lspconfig["lua_ls"].setup({
}, },
}, },
}, },
}) })
lspconfig["html"].setup({ lspconfig["html"].setup({
capabilities = capabilities, capabilities = capabilities,
on_attach = on_attach, on_attach = on_attach,
}) })
lspconfig["tsserver"].setup({ lspconfig["tsserver"].setup({
capabilities = capabilities, capabilities = capabilities,
on_attach = on_attach, on_attach = on_attach,
}) })
lspconfig["cssls"].setup({ lspconfig["cssls"].setup({
capabilities = capabilities, capabilities = capabilities,
on_attach = on_attach, on_attach = on_attach,
}) })
lspconfig["pyright"].setup({ lspconfig["pyright"].setup({
capabilities = capabilities, capabilities = capabilities,
on_attach = on_attach, on_attach = on_attach,
}) })
lspconfig["powershell_es"].setup({ lspconfig["powershell_es"].setup({
capabilities = capabilities, capabilities = capabilities,
on_attach = on_attach, on_attach = on_attach,
bundle_path = vim.fn.stdpath("data") .. "/mason/packages/powershell-editor-services", bundle_path = vim.fn.stdpath("data") .. "/mason/packages/powershell-editor-services",
}) })
end,
}

View File

@@ -1,21 +1,20 @@
local mason_status, mason = pcall(require, "mason") return {
if not mason_status then "williamboman/mason.nvim",
return build = function()
end pcall(vim.cmd, "MasonUpdate")
end,
dependencies = {
"williamboman/mason-lspconfig.nvim",
"jayp0521/mason-null-ls.nvim",
},
config = function()
local mason = require("mason")
local mason_lspconfig = require("mason-lspconfig")
local mason_null_ls = require("mason-null-ls")
local mason_lspconfig_status, mason_lspconfig = pcall(require, "mason-lspconfig") mason.setup()
if not mason_lspconfig_status then
return
end
local mason_null_ls_status, mason_null_ls = pcall(require, "mason-null-ls") mason_lspconfig.setup({
if not mason_null_ls_status then
return
end
mason.setup()
mason_lspconfig.setup({
ensure_installed = { ensure_installed = {
"tsserver", "tsserver",
"html", "html",
@@ -26,12 +25,14 @@ mason_lspconfig.setup({
"powershell_es", "powershell_es",
}, },
automatic_installation = true, automatic_installation = true,
}) })
mason_null_ls.setup({ mason_null_ls.setup({
ensure_installed = { ensure_installed = {
"stylua", "stylua",
"clang-format", "clang-format",
}, },
automatic_installation = true, automatic_installation = true,
}) })
end,
}

View File

@@ -1,14 +1,16 @@
local setup, null_ls = pcall(require, "null-ls") return {
if not setup then "jose-elias-alvarez/null-ls.nvim",
return config = function()
end local null_ls = require("null-ls")
local formatting = null_ls.builtins.formatting local formatting = null_ls.builtins.formatting
local diagnostics = null_ls.builtins.diagnostics local diagnostics = null_ls.builtins.diagnostics
null_ls.setup({ null_ls.setup({
sources = { sources = {
formatting.stylua, formatting.stylua,
formatting.clang_format, formatting.clang_format,
}, },
}) })
end,
}

View File

@@ -1,9 +1,10 @@
local setup, lualine = pcall(require, "lualine") return {
if not setup then "nvim-lualine/lualine.nvim",
return dependencies = { "nvim-tree/nvim-web-devicons" },
end config = function()
local lualine = require("lualine")
local colors = { local colors = {
bg = "#1e1e2e", bg = "#1e1e2e",
fg = "#cdd6f4", fg = "#cdd6f4",
yellow = "#f9e2af", yellow = "#f9e2af",
@@ -15,9 +16,9 @@ local colors = {
magenta = "#cba6f7", magenta = "#cba6f7",
blue = "#89b4fa", blue = "#89b4fa",
red = "#f38ba8", red = "#f38ba8",
} }
local conditions = { local conditions = {
buffer_not_empty = function() buffer_not_empty = function()
return vim.fn.empty(vim.fn.expand("%:t")) ~= 1 return vim.fn.empty(vim.fn.expand("%:t")) ~= 1
end, end,
@@ -29,10 +30,10 @@ local conditions = {
local gitdir = vim.fn.finddir(".git", filepath .. ";") local gitdir = vim.fn.finddir(".git", filepath .. ";")
return gitdir and #gitdir > 0 and #gitdir < #filepath return gitdir and #gitdir > 0 and #gitdir < #filepath
end, end,
} }
-- Config -- Config
local config = { local config = {
options = { options = {
-- Disable sections and component separators -- Disable sections and component separators
component_separators = "", component_separators = "",
@@ -64,27 +65,27 @@ local config = {
lualine_c = {}, lualine_c = {},
lualine_x = {}, lualine_x = {},
}, },
} }
-- Inserts a component in lualine_c at left section -- Inserts a component in lualine_c at left section
local function ins_left(component) local function ins_left(component)
table.insert(config.sections.lualine_c, component) table.insert(config.sections.lualine_c, component)
end end
-- Inserts a component in lualine_x at right section -- Inserts a component in lualine_x at right section
local function ins_right(component) local function ins_right(component)
table.insert(config.sections.lualine_x, component) table.insert(config.sections.lualine_x, component)
end end
ins_left({ ins_left({
function() function()
return "" return ""
end, end,
color = { fg = colors.blue }, -- Sets highlighting of component color = { fg = colors.blue }, -- Sets highlighting of component
padding = { left = 0, right = 1 }, -- We don't need space before this padding = { left = 0, right = 1 }, -- We don't need space before this
}) })
ins_left({ ins_left({
-- mode component -- mode component
function() function()
return "" return ""
@@ -116,25 +117,25 @@ ins_left({
return { fg = mode_color[vim.fn.mode()] } return { fg = mode_color[vim.fn.mode()] }
end, end,
padding = { right = 1 }, padding = { right = 1 },
}) })
ins_left({ ins_left({
-- filesize component -- filesize component
"filesize", "filesize",
cond = conditions.buffer_not_empty, cond = conditions.buffer_not_empty,
}) })
ins_left({ ins_left({
"filename", "filename",
cond = conditions.buffer_not_empty, cond = conditions.buffer_not_empty,
color = { fg = colors.magenta, gui = "bold" }, color = { fg = colors.magenta, gui = "bold" },
}) })
ins_left({ "location" }) ins_left({ "location" })
ins_left({ "progress", color = { fg = colors.fg, gui = "bold" } }) ins_left({ "progress", color = { fg = colors.fg, gui = "bold" } })
ins_left({ ins_left({
"diagnostics", "diagnostics",
sources = { "nvim_diagnostic" }, sources = { "nvim_diagnostic" },
symbols = { error = "", warn = "", info = "" }, symbols = { error = "", warn = "", info = "" },
@@ -143,17 +144,17 @@ ins_left({
color_warn = { fg = colors.yellow }, color_warn = { fg = colors.yellow },
color_info = { fg = colors.cyan }, color_info = { fg = colors.cyan },
}, },
}) })
-- Insert mid section. You can make any number of sections in neovim :) -- Insert mid section. You can make any number of sections in neovim :)
-- for lualine it's any number greater then 2 -- for lualine it's any number greater then 2
ins_left({ ins_left({
function() function()
return "%=" return "%="
end, end,
}) })
ins_right({ ins_right({
-- Lsp server name . -- Lsp server name .
function() function()
local msg = "No Active Lsp" local msg = "No Active Lsp"
@@ -172,22 +173,22 @@ ins_right({
end, end,
icon = " :", icon = " :",
color = { fg = "#ffffff", gui = "bold" }, color = { fg = "#ffffff", gui = "bold" },
}) })
-- Add components to right sections -- Add components to right sections
ins_right({ ins_right({
require("lazy.status").updates, require("lazy.status").updates,
cond = require("lazy.status").has_updates, cond = require("lazy.status").has_updates,
color = { fg = colors.violet }, color = { fg = colors.violet },
}) })
ins_right({ ins_right({
"branch", "branch",
icon = "", icon = "",
color = { fg = colors.violet, gui = "bold" }, color = { fg = colors.violet, gui = "bold" },
}) })
ins_right({ ins_right({
"diff", "diff",
-- Is it me or the symbol for modified us really weird -- Is it me or the symbol for modified us really weird
symbols = { added = "", modified = "󰝤 ", removed = "" }, symbols = { added = "", modified = "󰝤 ", removed = "" },
@@ -197,15 +198,17 @@ ins_right({
removed = { fg = colors.red }, removed = { fg = colors.red },
}, },
cond = conditions.hide_in_width, cond = conditions.hide_in_width,
}) })
ins_right({ ins_right({
function() function()
return "" return ""
end, end,
color = { fg = colors.blue }, color = { fg = colors.blue },
padding = { left = 1 }, padding = { left = 1 },
}) })
-- Now don't forget to initialize lualine -- Now don't forget to initialize lualine
lualine.setup(config) lualine.setup(config)
end,
}

View File

@@ -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,
}

View File

@@ -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,
}

View File

@@ -1,23 +1,24 @@
local cmp_status, cmp = pcall(require, "cmp") return {
if not cmp_status then "hrsh7th/nvim-cmp",
return dependencies = {
end "hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-buffer",
"hrsh7th/cmp-path",
"L3MON4D3/LuaSnip",
"saadparwaiz1/cmp_luasnip",
"rafamadriz/friendly-snippets",
"onsails/lspkind.nvim",
},
config = function()
local cmp = require("cmp")
local luasnip = require("luasnip")
local lspkind = require("lspkind")
local luasnip_status, luasnip = pcall(require, "luasnip") require("luasnip/loaders/from_vscode").lazy_load()
if not luasnip_status then
return
end
local lspkind_status, lspkind = pcall(require, "lspkind") vim.opt.completeopt = "menu,menuone,noselect"
if not lspkind_status then
return
end
require("luasnip/loaders/from_vscode").lazy_load() cmp.setup({
vim.opt.completeopt = "menu,menuone,noselect"
cmp.setup({
snippet = { snippet = {
expand = function(args) expand = function(args)
luasnip.lsp_expand(args.body) luasnip.lsp_expand(args.body)
@@ -44,4 +45,6 @@ cmp.setup({
ellipsis_char = "...", ellipsis_char = "...",
}), }),
}, },
}) })
end,
}

View File

@@ -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,
}

View File

@@ -1,9 +1,10 @@
local setup, nvimtree = pcall(require, "nvim-tree") return {
if not setup then "nvim-tree/nvim-tree.lua",
return dependencies = { "nvim-tree/nvim-web-devicons" },
end config = function()
local nvimtree = require("nvim-tree")
nvimtree.setup({ nvimtree.setup({
sync_root_with_cwd = true, sync_root_with_cwd = true,
view = { view = {
width = 30, width = 30,
@@ -21,4 +22,6 @@ nvimtree.setup({
".gitignore", ".gitignore",
}, },
}, },
}) })
end,
}

View File

@@ -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,
},
}

View File

@@ -1,9 +1,9 @@
local setup, presence = pcall(require, "presence") return {
if not setup then "TakenMC/presence.nvim",
return config = function()
end local presence = require("presence")
presence.setup({ presence.setup({
auto_update = true, auto_update = true,
neovim_image_text = "The One True Text Editor", neovim_image_text = "The One True Text Editor",
main_image = "neovim", main_image = "neovim",
@@ -26,4 +26,6 @@ presence.setup({
reading_text = "Reading %s", reading_text = "Reading %s",
workspace_text = "Working on %s", workspace_text = "Working on %s",
line_number_text = "Line %s out of %s", line_number_text = "Line %s out of %s",
}) })
end,
}

View File

@@ -1,11 +1,18 @@
local telescope_setup, telescope = pcall(require, "telescope") return {
if not telescope_setup then "nvim-telescope/telescope.nvim",
return version = "0.1.1",
end 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("project") telescope.load_extension("project")
telescope.setup({ telescope.setup({
extensions = { extensions = {
project = { project = {
sync_with_nvim_tree = true, sync_with_nvim_tree = true,
@@ -26,7 +33,9 @@ telescope.setup({
case_mode = "smart_case", -- or "ignore_case" or "respect_case" case_mode = "smart_case", -- or "ignore_case" or "respect_case"
}, },
}, },
}) })
telescope.load_extension("file_browser") telescope.load_extension("file_browser")
telescope.load_extension("fzf") telescope.load_extension("fzf")
end,
}

View File

@@ -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,
}

View File

@@ -1,9 +1,9 @@
local status, transparent = pcall(require, "transparent") return {
if not status then "xiyaowong/transparent.nvim",
return config = function()
end local transparent = require("transparent")
transparent.setup({ transparent.setup({
groups = { groups = {
"Normal", "Normal",
"NormalNC", "NormalNC",
@@ -44,4 +44,6 @@ transparent.setup({
"BufferLineBufferSelected", "BufferLineBufferSelected",
}, },
exclude_groups = {}, exclude_groups = {},
}) })
end,
}

View File

@@ -1,9 +1,10 @@
local status, treesitter = pcall(require, "nvim-treesitter.configs") return {
if not status then "nvim-treesitter/nvim-treesitter",
return build = ":TSUpdate",
end config = function()
local treesitter = require("nvim-treesitter.configs")
treesitter.setup({ treesitter.setup({
ensure_installed = { "lua", "vim", "vimdoc", "javascript", "java", "json" }, ensure_installed = { "lua", "vim", "vimdoc", "javascript", "java", "json" },
sync_install = false, sync_install = false,
auto_install = true, auto_install = true,
@@ -12,4 +13,6 @@ treesitter.setup({
enable = true, enable = true,
additional_vim_regex_highlighting = false, additional_vim_regex_highlighting = false,
}, },
}) })
end,
}

View File

@@ -1,9 +1,9 @@
local status, whichkey = pcall(require, "which-key") return {
if not status then "folke/which-key.nvim",
return config = function()
end local whichkey = require("which-key")
whichkey.setup({ whichkey.setup({
key_labels = { key_labels = {
["<leader>"] = "SPC", ["<leader>"] = "SPC",
["<space>"] = "SPC", ["<space>"] = "SPC",
@@ -16,9 +16,9 @@ whichkey.setup({
separator = "", separator = "",
group = "", group = "",
}, },
}) })
whichkey.register({ whichkey.register({
["<leader>"] = { ["<leader>"] = {
w = { w = {
name = "window", name = "window",
@@ -45,4 +45,6 @@ whichkey.register({
name = "theme", name = "theme",
}, },
}, },
}) })
end,
}