Refactor: Replace users with home
This commit is contained in:
parent
36a22dc58a
commit
aaaf4808f3
65 changed files with 17 additions and 25 deletions
55
dotfiles/nvim/lua/plugins/cmp.lua
Normal file
55
dotfiles/nvim/lua/plugins/cmp.lua
Normal file
|
@ -0,0 +1,55 @@
|
|||
return {
|
||||
"hrsh7th/nvim-cmp",
|
||||
dependencies = {
|
||||
"L3MON4D3/LuaSnip",
|
||||
"saadparwaiz1/cmp_luasnip",
|
||||
"hrsh7th/cmp-buffer",
|
||||
"hrsh7th/cmp-path",
|
||||
"hrsh7th/cmp-nvim-lsp",
|
||||
{
|
||||
"tamago324/cmp-zsh",
|
||||
config = function()
|
||||
require"cmp_zsh".setup {
|
||||
zshrc = true,
|
||||
filetypes = { "bash", "zsh", "sh" },
|
||||
}
|
||||
end,
|
||||
},
|
||||
"ray-x/cmp-treesitter",
|
||||
"hrsh7th/cmp-nvim-lua",
|
||||
"andersevenrud/cmp-tmux",
|
||||
},
|
||||
config = function()
|
||||
local cmp = require"cmp"
|
||||
cmp.setup {
|
||||
snippet = {
|
||||
expand = function(args)
|
||||
require"luasnip".lsp_expand(args.body)
|
||||
end,
|
||||
},
|
||||
view = {
|
||||
entries = "native",
|
||||
},
|
||||
mapping = cmp.mapping.preset.insert {
|
||||
['<C-k>'] = cmp.mapping.select_prev_item(),
|
||||
['<C-j>'] = cmp.mapping.select_next_item(),
|
||||
['<A-j>'] = cmp.mapping.scroll_docs(4),
|
||||
['<A-k>'] = cmp.mapping.scroll_docs(-4),
|
||||
['<S-CR>'] = cmp.mapping.complete(),
|
||||
['<C-Space>'] = cmp.mapping.confirm({ select = true }),
|
||||
['<C-e>'] = cmp.mapping.abort(),
|
||||
},
|
||||
sources = {
|
||||
{ name = "path" },
|
||||
{ name = "luasnip" },
|
||||
{ name = "zsh" },
|
||||
{ name = "nvim_lsp" },
|
||||
{ name = "buffer" },
|
||||
{ name = "treesitter" },
|
||||
{ name = "nvim-lua" },
|
||||
{ name = "tmux" },
|
||||
},
|
||||
}
|
||||
end
|
||||
}
|
||||
|
5
dotfiles/nvim/lua/plugins/comment.lua
Normal file
5
dotfiles/nvim/lua/plugins/comment.lua
Normal file
|
@ -0,0 +1,5 @@
|
|||
return {
|
||||
"numToStr/Comment.nvim",
|
||||
opts = {},
|
||||
lazy = false
|
||||
}
|
7
dotfiles/nvim/lua/plugins/dressing.lua
Normal file
7
dotfiles/nvim/lua/plugins/dressing.lua
Normal file
|
@ -0,0 +1,7 @@
|
|||
return {
|
||||
"stevearc/dressing.nvim",
|
||||
config = function()
|
||||
require"dressing".setup {
|
||||
}
|
||||
end
|
||||
}
|
11
dotfiles/nvim/lua/plugins/ibl.lua
Normal file
11
dotfiles/nvim/lua/plugins/ibl.lua
Normal file
|
@ -0,0 +1,11 @@
|
|||
return {
|
||||
"lukas-reineke/indent-blankline.nvim",
|
||||
main = "ibl",
|
||||
opts = {},
|
||||
opts = {
|
||||
indent = {
|
||||
char = "▏"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
22
dotfiles/nvim/lua/plugins/init.lua
Normal file
22
dotfiles/nvim/lua/plugins/init.lua
Normal file
|
@ -0,0 +1,22 @@
|
|||
if vim.fn.executable("git") ~= 1 then
|
||||
vim.notify("git is not installed. Skipping plugins.", vim.log.levels.WARN)
|
||||
return
|
||||
end
|
||||
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not (vim.uv or 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)
|
||||
|
||||
plugins = require"util.require_dir"(vim.fn.stdpath("config").."/lua/plugins/", true)
|
||||
|
||||
require"lazy".setup(plugins)
|
||||
|
49
dotfiles/nvim/lua/plugins/kanagawa.lua
Normal file
49
dotfiles/nvim/lua/plugins/kanagawa.lua
Normal file
|
@ -0,0 +1,49 @@
|
|||
return {
|
||||
"rebelot/kanagawa.nvim",
|
||||
config = function()
|
||||
require"kanagawa".setup {
|
||||
theme = "dragon",
|
||||
background = {
|
||||
dark = "dragon",
|
||||
light = "lotus",
|
||||
},
|
||||
transparent = true,
|
||||
colors = {
|
||||
theme = {
|
||||
all = {
|
||||
ui = {
|
||||
bg_gutter = "none",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
overrides = function(colors)
|
||||
local theme = colors.theme
|
||||
return {
|
||||
NormalFloat = { bg = "none" },
|
||||
FloatBorder = { bg = "none" },
|
||||
FloatTitle = { bg = "none" },
|
||||
|
||||
-- Save an hlgroup with dark background and dimmed foreground
|
||||
-- so that you can use it where your still want darker windows.
|
||||
-- E.g.: autocmd TermOpen * setlocal winhighlight=Normal:NormalDark
|
||||
NormalDark = { fg = theme.ui.fg_dim, bg = theme.ui.bg_m3 },
|
||||
|
||||
-- Popular plugins that open floats will link to NormalFloat by default;
|
||||
-- set their background accordingly if you wish to keep them dark and borderless
|
||||
LazyNormal = { bg = theme.ui.bg_m3, fg = theme.ui.fg_dim },
|
||||
MasonNormal = { bg = theme.ui.bg_m3, fg = theme.ui.fg_dim },
|
||||
TelescopeTitle = { fg = theme.ui.special, bold = true },
|
||||
TelescopePromptNormal = { bg = theme.ui.bg_p1 },
|
||||
TelescopePromptBorder = { fg = theme.ui.bg_p1, bg = theme.ui.bg_p1 },
|
||||
TelescopeResultsNormal = { fg = theme.ui.fg_dim, bg = theme.ui.bg_m1 },
|
||||
TelescopeResultsBorder = { fg = theme.ui.bg_m1, bg = theme.ui.bg_m1 },
|
||||
TelescopePreviewNormal = { bg = theme.ui.bg_dim },
|
||||
TelescopePreviewBorder = { bg = theme.ui.bg_dim, fg = theme.ui.bg_dim },
|
||||
}
|
||||
end,
|
||||
}
|
||||
vim.cmd"colorscheme kanagawa"
|
||||
end
|
||||
}
|
||||
|
5
dotfiles/nvim/lua/plugins/lsp/c.lua
Normal file
5
dotfiles/nvim/lua/plugins/lsp/c.lua
Normal file
|
@ -0,0 +1,5 @@
|
|||
return function ()
|
||||
require"lspconfig".clangd.setup {
|
||||
capabilities = require"cmp_nvim_lsp".default_capabilities()
|
||||
}
|
||||
end
|
5
dotfiles/nvim/lua/plugins/lsp/js.lua
Normal file
5
dotfiles/nvim/lua/plugins/lsp/js.lua
Normal file
|
@ -0,0 +1,5 @@
|
|||
return function ()
|
||||
require"lspconfig".tsserver.setup {
|
||||
capabilities = require"cmp_nvim_lsp".default_capabilities()
|
||||
}
|
||||
end
|
24
dotfiles/nvim/lua/plugins/lsp/lua.lua
Normal file
24
dotfiles/nvim/lua/plugins/lsp/lua.lua
Normal file
|
@ -0,0 +1,24 @@
|
|||
return function()
|
||||
require'lspconfig'.lua_ls.setup {
|
||||
capabilities = require"cmp_nvim_lsp".default_capabilities(),
|
||||
on_init = function(client)
|
||||
local path = client.workspace_folders[1].name
|
||||
if vim.loop.fs_stat(path..'/.luarc.json') or vim.loop.fs_stat(path..'/.luarc.jsonc') then
|
||||
return
|
||||
end
|
||||
|
||||
client.config.settings.Lua = vim.tbl_deep_extend('force', client.config.settings.Lua, {
|
||||
runtime = {
|
||||
version = 'LuaJIT'
|
||||
},
|
||||
workspace = {
|
||||
checkThirdParty = false,
|
||||
library = vim.api.nvim_get_runtime_file("", true)
|
||||
}
|
||||
})
|
||||
end,
|
||||
settings = {
|
||||
Lua = {}
|
||||
}
|
||||
}
|
||||
end
|
6
dotfiles/nvim/lua/plugins/lsp/nix.lua
Normal file
6
dotfiles/nvim/lua/plugins/lsp/nix.lua
Normal file
|
@ -0,0 +1,6 @@
|
|||
return function ()
|
||||
require"lspconfig".nil_ls.setup {
|
||||
capabilities = require"cmp_nvim_lsp".default_capabilities()
|
||||
}
|
||||
end
|
||||
|
5
dotfiles/nvim/lua/plugins/lsp/php.lua
Normal file
5
dotfiles/nvim/lua/plugins/lsp/php.lua
Normal file
|
@ -0,0 +1,5 @@
|
|||
return function ()
|
||||
require"lspconfig".intelephense. setup {
|
||||
capabilities = require"cmp_nvim_lsp".default_capabilities(),
|
||||
}
|
||||
end
|
10
dotfiles/nvim/lua/plugins/lsp/python.lua
Normal file
10
dotfiles/nvim/lua/plugins/lsp/python.lua
Normal file
|
@ -0,0 +1,10 @@
|
|||
return function()
|
||||
require"lspconfig".basedpyright.setup {
|
||||
settings = {
|
||||
python = {
|
||||
pythonPath = vim.fn.exepath("python3"),
|
||||
},
|
||||
},
|
||||
}
|
||||
end
|
||||
|
11
dotfiles/nvim/lua/plugins/lsp/rust.lua
Normal file
11
dotfiles/nvim/lua/plugins/lsp/rust.lua
Normal file
|
@ -0,0 +1,11 @@
|
|||
return function()
|
||||
require"lspconfig".rust_analyzer.setup {
|
||||
settings = {
|
||||
["rust-analyzer"] = {
|
||||
diagnostics = {
|
||||
enable = false,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
end
|
29
dotfiles/nvim/lua/plugins/lspconfig.lua
Normal file
29
dotfiles/nvim/lua/plugins/lspconfig.lua
Normal file
|
@ -0,0 +1,29 @@
|
|||
return {
|
||||
"neovim/nvim-lspconfig",
|
||||
config = function()
|
||||
local require_dir = require"util.require_dir"
|
||||
local lspees = require_dir(vim.fn.stdpath("config").."/lua/plugins/lsp/", "plugins.lsp")
|
||||
for _, lspee in ipairs(lspees) do
|
||||
lspee()
|
||||
end
|
||||
|
||||
local map = require"util.map"
|
||||
local vlb = vim.lsp.buf
|
||||
local format = function()
|
||||
vlb.format { async = true }
|
||||
end
|
||||
vim.api.nvim_create_autocmd("LspAttach", {
|
||||
group = vim.api.nvim_create_augroup("UserLspConfig", {}),
|
||||
callback = function()
|
||||
map("n", "<leader>lgD", vlb.declaration, "[l]sp [g]o to [D]eclaration")
|
||||
map("n", "<leader>lgd", vlb.definition, "[l]sp [g]o to [d]definition")
|
||||
map("n", "<leader>lgi", vlb.implementation, "[l]sp [g]o to [i]mplementation")
|
||||
map("n", "<leader>lgr", vlb.references, "[l]sp [g]o to [r]eferences")
|
||||
map("n", "<leader>lh", vlb.hover, "[l]sp [h]over over selection")
|
||||
map("n", "<leader>lfm", format, "[l]sp [f]or[m]at file")
|
||||
map("n", "<leader>lca", vlb.code_action, "[l]sp [C]ode [a]ction")
|
||||
end,
|
||||
})
|
||||
end
|
||||
}
|
||||
|
139
dotfiles/nvim/lua/plugins/lualine.lua
Normal file
139
dotfiles/nvim/lua/plugins/lualine.lua
Normal file
|
@ -0,0 +1,139 @@
|
|||
return {
|
||||
"nvim-lualine/lualine.nvim",
|
||||
dependencies = {
|
||||
"nvim-tree/nvim-web-devicons",
|
||||
},
|
||||
config = function()
|
||||
-- Inspired by https://github.com/nvim-lualine/lualine.nvim/blob/master/examples/evil_lualine.lua
|
||||
local rgb_to_hex = require"util.rgb_to_hex"
|
||||
local hl = require"util.hl"
|
||||
local config = {
|
||||
options = {
|
||||
component_separators = "",
|
||||
section_separators = "",
|
||||
theme = {
|
||||
normal = {
|
||||
c = {
|
||||
fg = rgb_to_hex(hl("Normal").fg),
|
||||
bg = "none",
|
||||
},
|
||||
},
|
||||
inactive = {
|
||||
c = {
|
||||
fg = rgb_to_hex(hl("Normal").fg),
|
||||
bg = "none",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
sections = {
|
||||
lualine_a = {}, lualine_b = {}, lualine_y = {}, lualine_z = {}, -- Remove defaults
|
||||
lualine_c = {}, lualine_x = {}, -- Extend these later
|
||||
},
|
||||
inactive_sections = {
|
||||
lualine_a = {}, lualine_b = {}, lualine_c = {}, lualine_x = {}, lualine_y = {}, lualine_z = {},
|
||||
},
|
||||
}
|
||||
|
||||
local function buffer_not_empty()
|
||||
return vim.fn.empty(vim.fn.expand("%:t")) ~= 1
|
||||
end
|
||||
|
||||
local function ins_l(component)
|
||||
table.insert(config.sections.lualine_c, component)
|
||||
end
|
||||
|
||||
local function ins_r(component)
|
||||
table.insert(config.sections.lualine_x, component)
|
||||
end
|
||||
|
||||
local distro = require"util.get_distro"()
|
||||
|
||||
ins_l {
|
||||
function()
|
||||
return "▊"
|
||||
end,
|
||||
padding = {
|
||||
left = 0,
|
||||
right = 0,
|
||||
},
|
||||
color = {
|
||||
fg = rgb_to_hex(hl("Comment").fg),
|
||||
},
|
||||
}
|
||||
|
||||
ins_l {
|
||||
function()
|
||||
return distro.traits.icon
|
||||
end,
|
||||
color = {
|
||||
fg = distro.traits.color,
|
||||
},
|
||||
}
|
||||
|
||||
ins_l {
|
||||
"filename",
|
||||
cond = buffer_not_empty,
|
||||
color = {
|
||||
fg = rgb_to_hex(hl("Operator").fg),
|
||||
}
|
||||
}
|
||||
|
||||
ins_l {
|
||||
"filesize",
|
||||
cond = buffer_not_empty,
|
||||
}
|
||||
|
||||
ins_l {
|
||||
"o:encoding",
|
||||
cond = buffer_not_empty,
|
||||
}
|
||||
|
||||
ins_l {
|
||||
"fileformat",
|
||||
icons_enabled = false,
|
||||
cond = buffer_not_empty,
|
||||
}
|
||||
|
||||
ins_r { "diagnostics" }
|
||||
ins_r { "diff" }
|
||||
|
||||
ins_r {
|
||||
"branch",
|
||||
padding = {
|
||||
right = 0,
|
||||
},
|
||||
color = {
|
||||
fg = rgb_to_hex(hl("Constant").fg)
|
||||
}
|
||||
}
|
||||
|
||||
ins_r {
|
||||
"location",
|
||||
}
|
||||
|
||||
ins_r {
|
||||
"mode",
|
||||
fmt = string.lower,
|
||||
color = {
|
||||
fg = rgb_to_hex(hl("String").fg),
|
||||
}
|
||||
}
|
||||
|
||||
ins_r {
|
||||
function()
|
||||
return "▊"
|
||||
end,
|
||||
padding = {
|
||||
left = 0,
|
||||
right = 0,
|
||||
},
|
||||
color = {
|
||||
fg = rgb_to_hex(hl("Comment").fg),
|
||||
}
|
||||
}
|
||||
|
||||
require"lualine".setup(config)
|
||||
end
|
||||
}
|
||||
|
6
dotfiles/nvim/lua/plugins/nvim-colorizer.lua
Normal file
6
dotfiles/nvim/lua/plugins/nvim-colorizer.lua
Normal file
|
@ -0,0 +1,6 @@
|
|||
return {
|
||||
"norcalli/nvim-colorizer.lua",
|
||||
config = function()
|
||||
require"colorizer".setup()
|
||||
end,
|
||||
}
|
24
dotfiles/nvim/lua/plugins/telescope.lua
Normal file
24
dotfiles/nvim/lua/plugins/telescope.lua
Normal file
|
@ -0,0 +1,24 @@
|
|||
return {
|
||||
"nvim-telescope/telescope.nvim",
|
||||
dependencies = { "nvim-lua/plenary.nvim" },
|
||||
config = function()
|
||||
require"telescope".setup {}
|
||||
|
||||
local tb = require"telescope.builtin"
|
||||
local map = require"util.map"
|
||||
|
||||
-- Default pickers
|
||||
map("n", "<leader>tf", tb.find_files,"[T]elescope [f]iles")
|
||||
map("n", "<leader>tg", tb.live_grep, "[T]elescope [g]rep")
|
||||
map("n", "<leader>tb", tb.buffers, "[T]elescope [b]uffers")
|
||||
map("n", "<leader>tm", function()
|
||||
tb.man_pages({ "ALL" })
|
||||
end, "[T]elescope [m]an pages")
|
||||
map("n", "<leader>tk", tb.keymaps, "[T]elescope [k]eymaps")
|
||||
map("n", "<leader>tk", tb.keymaps, "[T]elescope [k]eymaps")
|
||||
|
||||
-- LSP pickers
|
||||
map("n", "<leader>tld", tb.diagnostics, "[T]elescope [l]sp [d]iagnostics")
|
||||
map("n", "<leader>tlr", tb.lsp_references, "[T]elescope [l]sp [r]eferences")
|
||||
end,
|
||||
}
|
15
dotfiles/nvim/lua/plugins/treesitter.lua
Normal file
15
dotfiles/nvim/lua/plugins/treesitter.lua
Normal file
|
@ -0,0 +1,15 @@
|
|||
return {
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
config = function()
|
||||
require"nvim-treesitter.configs".setup {
|
||||
ensure_installed = "all", -- pipebomb
|
||||
highlight = {
|
||||
enable = true,
|
||||
},
|
||||
indent = {
|
||||
enable = true,
|
||||
},
|
||||
}
|
||||
end,
|
||||
run = ":TSUpdate",
|
||||
}
|
8
dotfiles/nvim/lua/plugins/vimtex.lua
Normal file
8
dotfiles/nvim/lua/plugins/vimtex.lua
Normal file
|
@ -0,0 +1,8 @@
|
|||
return {
|
||||
"lervag/vimtex",
|
||||
lazy = false,
|
||||
init = function()
|
||||
vim.g.vimtex_view_method = "zathura"
|
||||
end
|
||||
}
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue