Add dotfiles
This commit is contained in:
64
.config/nvim/lua/plugins/alpha.lua
Normal file
64
.config/nvim/lua/plugins/alpha.lua
Normal file
@@ -0,0 +1,64 @@
|
||||
-------------------
|
||||
-- Helper functions
|
||||
-------------------
|
||||
local function clamp(x, min, max) return math.max(math.min(x, max), min) end
|
||||
|
||||
local function get_random_image()
|
||||
images = {
|
||||
{
|
||||
[[██╗ █████╗ ██████╗██╗ ██╗███████╗]],
|
||||
[[██║ ██╔══██╗██╔════╝██║ ██║██╔════╝]],
|
||||
[[██║ ███████║██║ ███████║███████╗]],
|
||||
[[██║ ██╔══██║██║ ██╔══██║╚════██║]],
|
||||
[[███████╗██║ ██║╚██████╗██║ ██║███████║]],
|
||||
[[╚══════╝╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝╚══════╝]]
|
||||
},
|
||||
{
|
||||
[[ ,,,╓▄▄▓▓▓▓▄ ,▄▓∩]],
|
||||
[[ ,╓▄▄▄▄▓▓▓▓▓▓▓▓▀▓▓▓▓▓▓▓▓▓▀▀▀▓@@æ▄╓,▄▄ ,▄▓▓▓▓ ]],
|
||||
[[ ,▄▄▓▓█████▀╫╫Ñ▒Ñ▒▒▒▒░▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░▒▀▀▀▓@#▓▓▀▓▓▓Ñ ]],
|
||||
[[ -2▓╫▒▒▒▒▒╫▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒░░░░░░░░░░░▒▒▒▒▒▒▒▒▒▓▓▓ ]],
|
||||
[[ ª╨╩Ñ▒▒▒▒▒╫▄▒▒▒▒▒▒▒░░▒▒▒▒▒▒▒▒▒░▒░░░░░░░═╨` `╫╫▓▓▓▓ ]],
|
||||
[[ `ªº╩▒▒▒▒░░░░...░░▒▒▒▄▒▒▒ºª`` `▀▓▓▓ ]],
|
||||
[[ ╙▓µ ]]
|
||||
},
|
||||
{
|
||||
[[███╗ ██╗███████╗ ██████╗ ██╗ ██╗██╗███╗ ███╗]],
|
||||
[[████╗ ██║██╔════╝██╔═══██╗██║ ██║██║████╗ ████║]],
|
||||
[[██╔██╗ ██║█████╗ ██║ ██║██║ ██║██║██╔████╔██║]],
|
||||
[[██║╚██╗██║██╔══╝ ██║ ██║╚██╗ ██╔╝██║██║╚██╔╝██║]],
|
||||
[[██║ ╚████║███████╗╚██████╔╝ ╚████╔╝ ██║██║ ╚═╝ ██║]],
|
||||
[[╚═╝ ╚═══╝╚══════╝ ╚═════╝ ╚═══╝ ╚═╝╚═╝ ╚═╝]]
|
||||
}
|
||||
}
|
||||
|
||||
-- local i = math.random(#images)
|
||||
local i = clamp(math.random(1, 40), 1, #images)
|
||||
return images[i]
|
||||
end
|
||||
|
||||
-----------------
|
||||
-- Configurtation
|
||||
-----------------
|
||||
|
||||
return {
|
||||
{
|
||||
"goolord/alpha-nvim",
|
||||
event = "VimEnter",
|
||||
config = function()
|
||||
local dashboard = require("alpha.themes.dashboard")
|
||||
dashboard.section.header.val = get_random_image()
|
||||
dashboard.section.buttons.val = {
|
||||
dashboard.button('n', ' New file', ':ene <BAR> startinsert <CR>'),
|
||||
dashboard.button('r', ' Recent files', ':Telescope oldfiles <CR>'),
|
||||
dashboard.button('f', ' Find file', ':Telescope find_files <CR>'),
|
||||
dashboard.button('g', ' Find text', ':Telescope live_grep <CR>'),
|
||||
dashboard.button('p', ' Open project', ':Telescope session-lens search_session<CR>'),
|
||||
dashboard.button('l', ' Lazy', ':Lazy<CR>'),
|
||||
dashboard.button('q', ' Quit', ':qa<CR>')
|
||||
}
|
||||
|
||||
require("alpha").setup(dashboard.opts)
|
||||
end
|
||||
}
|
||||
}
|
||||
38
.config/nvim/lua/plugins/auto_session.lua
Normal file
38
.config/nvim/lua/plugins/auto_session.lua
Normal file
@@ -0,0 +1,38 @@
|
||||
return {
|
||||
{
|
||||
"rmagatti/auto-session",
|
||||
dependencies = {
|
||||
"nvim-lualine/lualine.nvim"
|
||||
},
|
||||
event = "VimEnter",
|
||||
init = function()
|
||||
vim.o.sessionoptions = "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,localoptions"
|
||||
|
||||
vim.keymap.set('n', '<leader><C-s>', '<cmd>SessionSave<CR>')
|
||||
vim.keymap.set('n', '<leader><C-d>', '<cmd>SessionDelete<CR>')
|
||||
end,
|
||||
opts = {
|
||||
log_level = "error",
|
||||
auto_save_enabled = false
|
||||
}
|
||||
},
|
||||
{
|
||||
'rmagatti/session-lens',
|
||||
cmd = {
|
||||
"Autosession",
|
||||
"SearchSession"
|
||||
},
|
||||
dependencies = {
|
||||
'rmagatti/auto-session',
|
||||
'nvim-telescope/telescope.nvim'
|
||||
},
|
||||
init = function()
|
||||
vim.keymap.set('n', '<leader>p', function() require('session-lens').search_session() end)
|
||||
end,
|
||||
config = function()
|
||||
require('session-lens').setup({
|
||||
prompt_title = 'Projects'
|
||||
})
|
||||
end
|
||||
}
|
||||
}
|
||||
20
.config/nvim/lua/plugins/copilot.lua
Normal file
20
.config/nvim/lua/plugins/copilot.lua
Normal file
@@ -0,0 +1,20 @@
|
||||
return {
|
||||
{
|
||||
"github/copilot.vim",
|
||||
event = {
|
||||
"BufReadPost",
|
||||
"BufNewFile"
|
||||
},
|
||||
cmd = {
|
||||
"Copilot"
|
||||
},
|
||||
init = function()
|
||||
vim.g.copilot_no_tab_map = true
|
||||
vim.g.copilot_assume_mapped = true
|
||||
vim.api.nvim_set_keymap("i", "<C-y>", 'copilot#Accept("<CR>")', {
|
||||
silent = true,
|
||||
expr = true
|
||||
})
|
||||
end
|
||||
}
|
||||
}
|
||||
6
.config/nvim/lua/plugins/dressing.lua
Normal file
6
.config/nvim/lua/plugins/dressing.lua
Normal file
@@ -0,0 +1,6 @@
|
||||
return {
|
||||
{
|
||||
'stevearc/dressing.nvim',
|
||||
event = 'VimEnter'
|
||||
}
|
||||
}
|
||||
22
.config/nvim/lua/plugins/git.lua
Normal file
22
.config/nvim/lua/plugins/git.lua
Normal file
@@ -0,0 +1,22 @@
|
||||
return {
|
||||
{
|
||||
'tpope/vim-fugitive',
|
||||
cmd = {
|
||||
"Git"
|
||||
},
|
||||
init = function() vim.keymap.set("n", "<leader>gs", vim.cmd.Git) end
|
||||
},
|
||||
{
|
||||
'rbong/vim-flog',
|
||||
cmd = {
|
||||
"Flog",
|
||||
"Floggit",
|
||||
"Flogsplit"
|
||||
},
|
||||
dependencies = {
|
||||
{
|
||||
'tpope/vim-fugitive'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
21
.config/nvim/lua/plugins/harpoon.lua
Normal file
21
.config/nvim/lua/plugins/harpoon.lua
Normal file
@@ -0,0 +1,21 @@
|
||||
return {
|
||||
{
|
||||
"ThePrimeagen/harpoon",
|
||||
-- branch = "harpoon2",
|
||||
dependencies = {
|
||||
{
|
||||
"nvim-lua/plenary.nvim"
|
||||
}
|
||||
},
|
||||
init = function()
|
||||
vim.keymap.set("n", "<C-e>", function() require("harpoon.ui").toggle_quick_menu() end)
|
||||
vim.keymap.set("n", "<leader>a", function() require("harpoon.mark").add_file() end)
|
||||
|
||||
vim.keymap.set("n", "<C-h>", function() require("harpoon.ui").nav_file(1) end)
|
||||
vim.keymap.set("n", "<C-t>", function() require("harpoon.ui").nav_file(2) end)
|
||||
vim.keymap.set("n", "<C-n>", function() require("harpoon.ui").nav_file(3) end)
|
||||
vim.keymap.set("n", "<C-s>", function() require("harpoon.ui").nav_file(4) end)
|
||||
end
|
||||
}
|
||||
|
||||
}
|
||||
6
.config/nvim/lua/plugins/lazy.lua
Normal file
6
.config/nvim/lua/plugins/lazy.lua
Normal file
@@ -0,0 +1,6 @@
|
||||
return {
|
||||
{
|
||||
"folke/lazy.nvim",
|
||||
tag = "stable"
|
||||
}
|
||||
}
|
||||
182
.config/nvim/lua/plugins/lsp.lua
Normal file
182
.config/nvim/lua/plugins/lsp.lua
Normal file
@@ -0,0 +1,182 @@
|
||||
return {
|
||||
{
|
||||
{
|
||||
'VonHeikemen/lsp-zero.nvim',
|
||||
branch = 'v3.x',
|
||||
lazy = true,
|
||||
config = false,
|
||||
init = function()
|
||||
-- Disable automatic setup, we are doing it manually
|
||||
vim.g.lsp_zero_extend_cmp = 0
|
||||
vim.g.lsp_zero_extend_lspconfig = 0
|
||||
end
|
||||
},
|
||||
{
|
||||
'williamboman/mason.nvim',
|
||||
lazy = false,
|
||||
config = true
|
||||
},
|
||||
|
||||
-- Autocompletion
|
||||
{
|
||||
'hrsh7th/nvim-cmp',
|
||||
event = 'InsertEnter',
|
||||
dependencies = {
|
||||
'L3MON4D3/LuaSnip',
|
||||
'hrsh7th/cmp-buffer',
|
||||
'hrsh7th/cmp-path',
|
||||
'hrsh7th/cmp-cmdline',
|
||||
'hrsh7th/cmp-nvim-lsp-signature-help',
|
||||
'saadparwaiz1/cmp_luasnip'
|
||||
},
|
||||
config = function()
|
||||
local lsp_zero = require('lsp-zero')
|
||||
lsp_zero.extend_cmp()
|
||||
|
||||
local cmp = require('cmp')
|
||||
|
||||
cmp.setup({
|
||||
sources = {
|
||||
{
|
||||
name = 'path'
|
||||
},
|
||||
{
|
||||
name = 'nvim_lsp'
|
||||
},
|
||||
{
|
||||
name = 'nvim_lua'
|
||||
},
|
||||
{
|
||||
name = 'luasnip',
|
||||
keyword_length = 2
|
||||
},
|
||||
{
|
||||
name = 'buffer',
|
||||
keyword_length = 3
|
||||
},
|
||||
{
|
||||
name = 'nvim_lsp_signature_help'
|
||||
}
|
||||
},
|
||||
formatting = lsp_zero.cmp_format(),
|
||||
mapping = cmp.mapping.preset.insert({
|
||||
['<C-p>'] = cmp.mapping.select_prev_item(cmp_select),
|
||||
['<C-n>'] = cmp.mapping.select_next_item(cmp_select),
|
||||
['<Tab>'] = cmp.mapping.confirm({
|
||||
select = true
|
||||
}),
|
||||
['<C-Space>'] = cmp.mapping.complete()
|
||||
}),
|
||||
snippet = {
|
||||
expand = function(args) require('luasnip').lsp_expand(args.body) end
|
||||
}
|
||||
})
|
||||
|
||||
cmp.setup.filetype('gitcommit', {
|
||||
sources = cmp.config.sources({
|
||||
{
|
||||
name = 'git'
|
||||
}
|
||||
}, {
|
||||
{
|
||||
name = 'buffer'
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
cmp.setup.cmdline({
|
||||
'/',
|
||||
'?'
|
||||
}, {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = {
|
||||
{
|
||||
name = 'buffer'
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
cmp.setup.cmdline(':', {
|
||||
mapping = cmp.mapping.preset.cmdline(),
|
||||
sources = cmp.config.sources({
|
||||
{
|
||||
name = 'path'
|
||||
}
|
||||
}, {
|
||||
{
|
||||
name = 'cmdline'
|
||||
}
|
||||
})
|
||||
})
|
||||
end
|
||||
},
|
||||
|
||||
-- LSP
|
||||
{
|
||||
'neovim/nvim-lspconfig',
|
||||
cmd = {
|
||||
'LspInfo',
|
||||
'LspInstall',
|
||||
'LspStart'
|
||||
},
|
||||
event = {
|
||||
'BufReadPre',
|
||||
'BufNewFile'
|
||||
},
|
||||
dependencies = {
|
||||
'hrsh7th/cmp-nvim-lsp',
|
||||
'williamboman/mason-lspconfig.nvim',
|
||||
'folke/trouble.nvim' -- required for the current config
|
||||
},
|
||||
config = function()
|
||||
local lsp_zero = require('lsp-zero')
|
||||
lsp_zero.extend_lspconfig()
|
||||
|
||||
lsp_zero.on_attach(function(client, bufnr)
|
||||
local opts = {
|
||||
buffer = bufnr,
|
||||
remap = false
|
||||
}
|
||||
|
||||
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", "<leader>vws", function() vim.lsp.buf.workspace_symbol() end, opts)
|
||||
vim.keymap.set("n", "<leader>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", "<leader>vca", function() vim.lsp.buf.code_action() end, opts)
|
||||
-- vim.keymap.set("n", "<leader>vrr", function() vim.lsp.buf.references() end, opts)
|
||||
vim.keymap.set("n", "<leader>vrr", "<cmd>Trouble lsp_references<CR>", opts)
|
||||
vim.keymap.set("n", "<leader>vrn", function() vim.lsp.buf.rename() end, opts)
|
||||
vim.keymap.set("i", "<C-p>", function() vim.lsp.buf.signature_help() end, opts)
|
||||
vim.keymap.set("n", "<M-cr>", function() vim.lsp.buf.code_action() end, opts)
|
||||
vim.keymap.set("i", "<M-cr>", function() vim.lsp.buf.code_action() end, opts)
|
||||
end)
|
||||
|
||||
require('mason-lspconfig').setup({
|
||||
ensure_installed = {
|
||||
'clangd',
|
||||
'pyright',
|
||||
'cmake',
|
||||
'texlab'
|
||||
},
|
||||
handlers = {
|
||||
lsp_zero.default_setup,
|
||||
lua_ls = function()
|
||||
local lua_opts = lsp_zero.nvim_lua_ls()
|
||||
require('lspconfig').lua_ls.setup(lua_opts)
|
||||
end
|
||||
}
|
||||
})
|
||||
|
||||
require('lspconfig')['clangd'].setup {
|
||||
cmd = {
|
||||
"clangd",
|
||||
"--query-driver=/**/*g++",
|
||||
"--offset-encoding=utf-16"
|
||||
}
|
||||
}
|
||||
end
|
||||
}
|
||||
}
|
||||
}
|
||||
18
.config/nvim/lua/plugins/lualine.lua
Normal file
18
.config/nvim/lua/plugins/lualine.lua
Normal file
@@ -0,0 +1,18 @@
|
||||
return {
|
||||
{
|
||||
'nvim-lualine/lualine.nvim',
|
||||
event = "VimEnter",
|
||||
dependencies = {
|
||||
'nvim-tree/nvim-web-devicons'
|
||||
},
|
||||
opts = {
|
||||
extensions = {
|
||||
'nvim-tree',
|
||||
'trouble',
|
||||
'mason',
|
||||
'lazy',
|
||||
'toggleterm'
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
48
.config/nvim/lua/plugins/luasnip.lua
Normal file
48
.config/nvim/lua/plugins/luasnip.lua
Normal file
@@ -0,0 +1,48 @@
|
||||
return {
|
||||
{
|
||||
"L3MON4D3/LuaSnip",
|
||||
dependencies = {
|
||||
{
|
||||
'rafamadriz/friendly-snippets'
|
||||
}
|
||||
},
|
||||
version = "v2.*",
|
||||
build = "make install_jsregexp",
|
||||
event = {
|
||||
"InsertEnter"
|
||||
},
|
||||
init = function()
|
||||
vim.keymap.set({
|
||||
"i"
|
||||
}, "<c-j>", function() require("luasnip").expand() end, {
|
||||
silent = true
|
||||
})
|
||||
vim.keymap.set({
|
||||
"i",
|
||||
"s"
|
||||
}, "<c-j>", function() require("luasnip").jump(1) end, {
|
||||
silent = true
|
||||
})
|
||||
vim.keymap.set({
|
||||
"i",
|
||||
"s"
|
||||
}, "<c-k>", function() require("luasnip").jump(-1) end, {
|
||||
silent = true
|
||||
})
|
||||
|
||||
end,
|
||||
config = function()
|
||||
local loader = require("luasnip.loaders.from_lua")
|
||||
loader.lazy_load({
|
||||
paths = {
|
||||
"./snippets"
|
||||
}
|
||||
})
|
||||
|
||||
require("luasnip").config.set_config({
|
||||
enable_autosnippets = true,
|
||||
store_selection_keys = "<leader>v"
|
||||
})
|
||||
end
|
||||
}
|
||||
}
|
||||
15
.config/nvim/lua/plugins/markdown_preview.lua
Normal file
15
.config/nvim/lua/plugins/markdown_preview.lua
Normal file
@@ -0,0 +1,15 @@
|
||||
return {
|
||||
{
|
||||
"iamcco/markdown-preview.nvim",
|
||||
cmd = {
|
||||
"MarkdownPreviewToggle",
|
||||
"MarkdownPreview",
|
||||
"MarkdownPreviewStop"
|
||||
},
|
||||
ft = {
|
||||
"markdown"
|
||||
},
|
||||
build = function() vim.fn["mkdp#util#install"]() end
|
||||
}
|
||||
|
||||
}
|
||||
33
.config/nvim/lua/plugins/molten.lua
Normal file
33
.config/nvim/lua/plugins/molten.lua
Normal file
@@ -0,0 +1,33 @@
|
||||
return {
|
||||
{
|
||||
"benlubas/molten-nvim",
|
||||
build = ":UpdateRemotePlugins",
|
||||
version = "v1.7.0",
|
||||
init = function()
|
||||
vim.keymap.set("n", "<localleader>mi", ":MoltenInit<CR>", {
|
||||
silent = true,
|
||||
desc = "Initialize the plugin"
|
||||
})
|
||||
vim.keymap.set("n", "<localleader>e", ":MoltenEvaluateOperator<CR>", {
|
||||
silent = true,
|
||||
desc = "run operator selection"
|
||||
})
|
||||
vim.keymap.set("n", "<localleader>rl", ":MoltenEvaluateLine<CR>", {
|
||||
silent = true,
|
||||
desc = "evaluate line"
|
||||
})
|
||||
vim.keymap.set("n", "<localleader>rr", ":MoltenReevaluateCell<CR>", {
|
||||
silent = true,
|
||||
desc = "re-evaluate cell"
|
||||
})
|
||||
vim.keymap.set("v", "<localleader>r", ":<C-u>MoltenEvaluateVisual<CR>gv", {
|
||||
silent = true,
|
||||
desc = "evaluate visual selection"
|
||||
})
|
||||
|
||||
vim.g.molten_auto_open_output = false
|
||||
vim.g.molten_virt_text_output = true
|
||||
vim.g.molten_virt_text_max_lines = 32
|
||||
end
|
||||
}
|
||||
}
|
||||
37
.config/nvim/lua/plugins/neoformat.lua
Normal file
37
.config/nvim/lua/plugins/neoformat.lua
Normal file
@@ -0,0 +1,37 @@
|
||||
return {
|
||||
{
|
||||
'sbdchd/neoformat',
|
||||
event = {
|
||||
"BufReadPost",
|
||||
"BufNewFile"
|
||||
},
|
||||
init = function()
|
||||
vim.cmd([[
|
||||
let g:neoformat_enabled_python = ['autopep8']
|
||||
let g:neoformat_enabled_cpp = ['clangformat']
|
||||
let g:neoformat_enabled_c = ['clangformat']
|
||||
let g:neoformat_enable_lua = ['luaformatter']
|
||||
let g:neoformat_enabled_cmake = ['cmakeformat']
|
||||
|
||||
let g:neoformat_markdown_mdformat = {
|
||||
\ 'exe': 'mdformat',
|
||||
\ 'args': ['--wrap=79'],
|
||||
\ 'replace': 1,
|
||||
\ }
|
||||
let g:neoformat_enabled_markdown = ['mdformat']
|
||||
|
||||
let g:neoformat_enabled_latex = ['latexindent']
|
||||
let g:latexindent_opt="-m -l -g=/dev/null"
|
||||
]])
|
||||
|
||||
vim.api.nvim_set_keymap('n', '<M-L>', '<cmd>Neoformat<cr>', {
|
||||
noremap = true,
|
||||
silent = true
|
||||
})
|
||||
vim.api.nvim_set_keymap('i', '<M-L>', '<cmd>Neoformat<cr>', {
|
||||
noremap = true,
|
||||
silent = true
|
||||
})
|
||||
end
|
||||
}
|
||||
}
|
||||
14
.config/nvim/lua/plugins/nvim_tree.lua
Normal file
14
.config/nvim/lua/plugins/nvim_tree.lua
Normal file
@@ -0,0 +1,14 @@
|
||||
return {
|
||||
{
|
||||
'nvim-tree/nvim-tree.lua',
|
||||
cmd = {
|
||||
"NvimTreeToggle",
|
||||
"NvimTreeFocus"
|
||||
},
|
||||
init = function()
|
||||
vim.opt.termguicolors = true
|
||||
vim.keymap.set('n', '<leader>t', '<cmd>NvimTreeToggle<cr>', {noremap = true, silent = true})
|
||||
end,
|
||||
config = function() require("nvim-tree").setup() end
|
||||
}
|
||||
}
|
||||
6
.config/nvim/lua/plugins/surround.lua
Normal file
6
.config/nvim/lua/plugins/surround.lua
Normal file
@@ -0,0 +1,6 @@
|
||||
return {
|
||||
{
|
||||
"tpope/vim-surround",
|
||||
event = "InsertEnter"
|
||||
}
|
||||
}
|
||||
50
.config/nvim/lua/plugins/telescope.lua
Normal file
50
.config/nvim/lua/plugins/telescope.lua
Normal file
@@ -0,0 +1,50 @@
|
||||
-- -----------------
|
||||
-- -- Helper Functions
|
||||
-- -------------------
|
||||
-- -- If in a git repo, execute the given function with the option
|
||||
-- -- "cwd=<git root>". Otherwise, execute the function with no options.
|
||||
-- local function execute_in_repo_root(func)
|
||||
-- local function is_git_repo()
|
||||
-- vim.fn.system("git rev-parse --is-inside-work-tree")
|
||||
--
|
||||
-- return vim.v.shell_error == 0
|
||||
-- end
|
||||
--
|
||||
-- local function get_git_root()
|
||||
-- local dot_git_path = vim.fn.finddir(".git", ".;")
|
||||
-- return vim.fn.fnamemodify(dot_git_path, ":h")
|
||||
-- end
|
||||
--
|
||||
-- local opts = {}
|
||||
--
|
||||
-- if is_git_repo() then opts = {cwd = get_git_root()} end
|
||||
--
|
||||
-- func(opts)
|
||||
-- end
|
||||
-----------------------
|
||||
-- Plugin Configuration
|
||||
-----------------------
|
||||
return {
|
||||
{
|
||||
'nvim-telescope/telescope.nvim',
|
||||
version = '0.1.5',
|
||||
dependencies = {
|
||||
{
|
||||
'nvim-lua/plenary.nvim'
|
||||
}
|
||||
},
|
||||
cmd = "Telescope",
|
||||
init = function()
|
||||
-- LuaFormatter off
|
||||
vim.keymap.set('n', '<leader>ff', function() require("telescope.builtin").find_files() end,{desc = "Telescope find files"})
|
||||
vim.keymap.set('n', '<leader>fg', function() require("telescope.builtin").live_grep() end,{desc = "Telescope live grep"})
|
||||
vim.keymap.set('n', '<leader>fa', function()
|
||||
require("telescope.builtin").find_files({hidden = true})
|
||||
end, {desc = "Telescope find all files"})
|
||||
|
||||
vim.keymap.set('n', '<leader>fb', function() require("telescope.builtin").buffers() end, {desc = "Telescope buffers"})
|
||||
vim.keymap.set('n', '<leader>fh', function() require("telescope.builtin").help_tags() end, {desc = "Telescope help tags"})
|
||||
-- LuaFormatter on
|
||||
end
|
||||
}
|
||||
}
|
||||
45
.config/nvim/lua/plugins/themes.lua
Normal file
45
.config/nvim/lua/plugins/themes.lua
Normal file
@@ -0,0 +1,45 @@
|
||||
return {
|
||||
-- {'doums/darcula', config = function() vim.cmd('colorscheme darcula') end}
|
||||
-- {
|
||||
-- "folke/tokyonight.nvim",
|
||||
-- lazy = false,
|
||||
-- priority = 1000,
|
||||
-- opts = {},
|
||||
-- config = function() vim.cmd('colorscheme tokyonight-moon') end
|
||||
-- }
|
||||
-- {
|
||||
-- 'rose-pine/neovim',
|
||||
-- config = function() vim.cmd('colorscheme rose-pine-moon') end
|
||||
-- }
|
||||
-- {
|
||||
-- 'AlexvZyl/nordic.nvim',
|
||||
-- lazy = false,
|
||||
-- priority = 1000,
|
||||
-- init = function()
|
||||
-- require('nordic').setup {
|
||||
-- telescope = {
|
||||
-- style = 'classic'
|
||||
-- -- style = 'flat'
|
||||
-- }
|
||||
-- }
|
||||
-- require'nordic'.load()
|
||||
-- end
|
||||
-- }
|
||||
-- {
|
||||
-- "briones-gabriel/darcula-solid.nvim",
|
||||
-- dependencies = "rktjmp/lush.nvim",
|
||||
-- config = function()
|
||||
-- vim.cmd 'colorscheme darcula-solid'
|
||||
-- vim.cmd 'set termguicolors'
|
||||
-- end
|
||||
-- }
|
||||
{
|
||||
"ellisonleao/gruvbox.nvim",
|
||||
priority = 1000,
|
||||
config = true,
|
||||
opts = {
|
||||
contrast = "hard"
|
||||
},
|
||||
init = function() vim.cmd("colorscheme gruvbox") end
|
||||
}
|
||||
}
|
||||
9
.config/nvim/lua/plugins/todo_comments.lua
Normal file
9
.config/nvim/lua/plugins/todo_comments.lua
Normal file
@@ -0,0 +1,9 @@
|
||||
return {
|
||||
{
|
||||
"folke/todo-comments.nvim",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim"
|
||||
},
|
||||
opts = {}
|
||||
}
|
||||
}
|
||||
21
.config/nvim/lua/plugins/toggleterm.lua
Normal file
21
.config/nvim/lua/plugins/toggleterm.lua
Normal file
@@ -0,0 +1,21 @@
|
||||
return {
|
||||
{
|
||||
"akinsho/toggleterm.nvim",
|
||||
version = '*',
|
||||
opts = {
|
||||
size = 30,
|
||||
open_mapping = [[<c-\>]]
|
||||
},
|
||||
cmd = {
|
||||
"ToggleTerm",
|
||||
"TermExec",
|
||||
"ToggleTermToggleAll",
|
||||
"ToggleTermSendCurrentLine",
|
||||
"ToggleTermSendVisualLines",
|
||||
"ToggleTermSendVisualSelection"
|
||||
},
|
||||
keys = {
|
||||
[[<c-\>]]
|
||||
}
|
||||
}
|
||||
}
|
||||
39
.config/nvim/lua/plugins/treesitter.lua
Normal file
39
.config/nvim/lua/plugins/treesitter.lua
Normal file
@@ -0,0 +1,39 @@
|
||||
return {
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
build = ":TSUpdate",
|
||||
event = {
|
||||
"BufReadPost",
|
||||
"BufNewFile"
|
||||
},
|
||||
cmd = {
|
||||
"TSInstall",
|
||||
"TSBufEnable",
|
||||
"TSBufDisable",
|
||||
"TSModuleInfo",
|
||||
"TSInstallSync"
|
||||
},
|
||||
config = function(_, opts)
|
||||
require("nvim-treesitter.configs").setup({
|
||||
ensure_installed = {
|
||||
"cpp",
|
||||
"c",
|
||||
"lua",
|
||||
"vim",
|
||||
"vimdoc",
|
||||
"query"
|
||||
},
|
||||
sync_install = false,
|
||||
auto_install = true,
|
||||
|
||||
highlight = {
|
||||
enable = true,
|
||||
additional_vim_regex_highlighting = false,
|
||||
disable = {
|
||||
"latex"
|
||||
}
|
||||
}
|
||||
})
|
||||
end
|
||||
}
|
||||
}
|
||||
47
.config/nvim/lua/plugins/trouble.lua
Normal file
47
.config/nvim/lua/plugins/trouble.lua
Normal file
@@ -0,0 +1,47 @@
|
||||
return {
|
||||
{
|
||||
"folke/trouble.nvim",
|
||||
dependencies = {
|
||||
{
|
||||
"nvim-tree/nvim-web-devicons"
|
||||
},
|
||||
{
|
||||
'folke/lsp-colors.nvim'
|
||||
},
|
||||
{
|
||||
'nvim-telescope/telescope.nvim'
|
||||
}
|
||||
},
|
||||
cmd = {
|
||||
"Trouble",
|
||||
"TroubleClose",
|
||||
"TroubleToggle",
|
||||
"TroubleRefresh"
|
||||
},
|
||||
init = function()
|
||||
vim.keymap.set("n", "<leader>xx", function() require("trouble").toggle() end)
|
||||
vim.keymap.set("n", "<leader>xw", function() require("trouble").toggle("workspace_diagnostics") end)
|
||||
vim.keymap.set("n", "<leader>xd", function() require("trouble").toggle("document_diagnostics") end)
|
||||
vim.keymap.set("n", "<leader>xq", function() require("trouble").toggle("quickfix") end)
|
||||
vim.keymap.set("n", "<leader>xl", function() require("trouble").toggle("loclist") end)
|
||||
vim.keymap.set("n", "gR", function() require("trouble").toggle("lsp_references") end)
|
||||
end,
|
||||
config = function()
|
||||
local trouble_provider = require("trouble.providers.telescope")
|
||||
local telescope = require("telescope")
|
||||
|
||||
telescope.setup {
|
||||
defaults = {
|
||||
mappings = {
|
||||
i = {
|
||||
["<c-t>"] = trouble_provider.open_with_trouble
|
||||
},
|
||||
n = {
|
||||
["<c-t>"] = trouble_provider.open_with_trouble
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
end
|
||||
}
|
||||
}
|
||||
13
.config/nvim/lua/plugins/undotree.lua
Normal file
13
.config/nvim/lua/plugins/undotree.lua
Normal file
@@ -0,0 +1,13 @@
|
||||
return {
|
||||
{
|
||||
'mbbill/undotree',
|
||||
cmd = {
|
||||
"UndotreeToggle",
|
||||
"UndotreeHide",
|
||||
"UndotreeShow",
|
||||
"UndotreeFocus",
|
||||
"UndotreePersistUndo"
|
||||
},
|
||||
init = function() vim.keymap.set("n", "<leader>u", "<cmd>UndotreeToggle<CR>") end
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user