This commit is contained in:
iofq 2024-08-10 01:45:39 -05:00
parent b33413dd18
commit 9082d546f6
19 changed files with 362 additions and 291 deletions

View file

@ -1,2 +1,2 @@
vim.cmd("colorscheme terafox") vim.cmd('colorscheme terafox')
vim.keymap.set("n", "<leader>aa", "<cmd>AerialToggle!<CR>", { desc = "Toggle Aerial" }) vim.keymap.set('n', '<leader>aa', '<cmd>AerialToggle!<CR>', { desc = 'Toggle Aerial' })

View file

@ -1,23 +1,23 @@
-- vim settings ++ mini.nvim.basics -- vim settings ++ mini.nvim.basics
---------------------------------------- ----------------------------------------
vim.opt.backspace = "indent,eol,start" vim.opt.backspace = 'indent,eol,start'
vim.opt.completeopt = "menuone" vim.opt.completeopt = 'menuone'
vim.opt.expandtab = true -- insert tabs as spaces vim.opt.expandtab = true -- insert tabs as spaces
vim.opt.inccommand = "split" -- incremental live completion vim.opt.inccommand = 'split' -- incremental live completion
vim.opt.laststatus = 1 vim.opt.laststatus = 1
vim.opt.list = true vim.opt.list = true
vim.opt.nrformats:append("alpha") -- let Ctrl-a do letters as well vim.opt.nrformats:append('alpha') -- let Ctrl-a do letters as well
vim.opt.path:append("**") -- enable fuzzy :find ing vim.opt.path:append('**') -- enable fuzzy :find ing
vim.opt.relativenumber = true vim.opt.relativenumber = true
vim.opt.shadafile = "NONE" -- disable shada vim.opt.shadafile = 'NONE' -- disable shada
vim.opt.shiftwidth = 0 -- >> shifts by tabstop vim.opt.shiftwidth = 0 -- >> shifts by tabstop
vim.opt.showmatch = true -- highlight matching brackets vim.opt.showmatch = true -- highlight matching brackets
vim.opt.showmode = true vim.opt.showmode = true
vim.opt.softtabstop = -1 -- backspace removes tabstop vim.opt.softtabstop = -1 -- backspace removes tabstop
vim.opt.swapfile = false vim.opt.swapfile = false
vim.opt.tabstop = 2 -- 2 space tabs are based vim.opt.tabstop = 2 -- 2 space tabs are based
vim.opt.updatetime = 250 -- decrease update time vim.opt.updatetime = 250 -- decrease update time
vim.opt.virtualedit = "onemore" vim.opt.virtualedit = 'onemore'
vim.g.fzf_layout = { window = { width = 0.9, height = 0.6 } } vim.g.fzf_layout = { window = { width = 0.9, height = 0.6 } }
@ -25,16 +25,16 @@ vim.g.fzf_layout = { window = { width = 0.9, height = 0.6 } }
vim.cmd([[ hi NormalFloat ctermbg=none ]]) vim.cmd([[ hi NormalFloat ctermbg=none ]])
-- Switch tab length on the fly -- Switch tab length on the fly
vim.keymap.set("n", "\\t", function() vim.keymap.set('n', '\\t', function()
vim.o.tabstop = vim.o.tabstop == 2 and 4 or 2 vim.o.tabstop = vim.o.tabstop == 2 and 4 or 2
end, { silent = true, desc = "toggle tabstop"}) end, { silent = true, desc = 'toggle tabstop' })
-- autocmd -- autocmd
---------------------------------------- ----------------------------------------
local undopath = "~/.local/share/nvim/undo" local undopath = '~/.local/share/nvim/undo'
vim.api.nvim_create_autocmd("VimEnter", { vim.api.nvim_create_autocmd('VimEnter', {
command = "silent !mkdir -p " .. undopath, command = 'silent !mkdir -p ' .. undopath,
group = vim.api.nvim_create_augroup("Init", {}), group = vim.api.nvim_create_augroup('Init', {}),
}) })
-- Configure Neovim diagnostic messages -- Configure Neovim diagnostic messages

View file

@ -3,11 +3,11 @@ if vim.g.did_load_aerial_plugin then
end end
vim.g.did_load_aerial_plugin = true vim.g.did_load_aerial_plugin = true
require("aerial").setup({ require('aerial').setup {
default_direction = "left", default_direction = 'left',
autojump = true, autojump = true,
on_attach = function(bufnr) on_attach = function(bufnr)
vim.keymap.set("n", "{", "<cmd>AerialPrev<CR>", { buffer = bufnr }) vim.keymap.set('n', '{', '<cmd>AerialPrev<CR>', { buffer = bufnr })
vim.keymap.set("n", "}", "<cmd>AerialNext<CR>", { buffer = bufnr }) vim.keymap.set('n', '}', '<cmd>AerialNext<CR>', { buffer = bufnr })
end, end,
}) }

View file

@ -3,17 +3,17 @@ if vim.g.did_load_colors_plugin then
end end
vim.g.did_load_colors_plugin = true vim.g.did_load_colors_plugin = true
require("rose-pine").setup({ require('rose-pine').setup {
variant = "moon", variant = 'moon',
styles = { styles = {
bold = false, bold = false,
italic = false, italic = false,
transparency = true, transparency = true,
},
})
require('nightfox').setup({
options = {
transparent = true, -- Disable setting background
terminal_colors = false, -- Set terminal colors (vim.g.terminal_color_*) used in `:terminal`
}, },
}) }
require('nightfox').setup {
options = {
transparent = true, -- Disable setting background
terminal_colors = false, -- Set terminal colors (vim.g.terminal_color_*) used in `:terminal`
},
}

View file

@ -2,9 +2,9 @@ if vim.g.did_load_completion_plugin then
return return
end end
vim.g.did_load_completion_plugin = true vim.g.did_load_completion_plugin = true
local cmp = require'cmp' local cmp = require('cmp')
cmp.setup({ cmp.setup {
snippet = { snippet = {
expand = function(args) expand = function(args)
require('luasnip').lsp_expand(args.body) require('luasnip').lsp_expand(args.body)
@ -14,34 +14,34 @@ cmp.setup({
native_menu = false, native_menu = false,
ghost_text = true, ghost_text = true,
}, },
mapping = cmp.mapping.preset.insert({ mapping = cmp.mapping.preset.insert {
['<C-j>'] = cmp.mapping.scroll_docs(-4), ['<C-j>'] = cmp.mapping.scroll_docs(-4),
['<C-k>'] = cmp.mapping.scroll_docs(4), ['<C-k>'] = cmp.mapping.scroll_docs(4),
['<C-Space>'] = cmp.mapping.complete(), ['<C-Space>'] = cmp.mapping.complete(),
['q'] = cmp.mapping.abort(), ['q'] = cmp.mapping.abort(),
['<C-Space>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. ['<C-Space>'] = cmp.mapping.confirm { select = true }, -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
}), },
sources = cmp.config.sources({ sources = cmp.config.sources({
{ name = 'nvim_lsp' }, { name = 'nvim_lsp' },
{ name = 'luasnip' }, { name = 'luasnip' },
}, { }, {
{ name = 'buffer' }, { name = 'buffer' },
}) }),
}) }
cmp.setup.cmdline({ '/', '?' }, { cmp.setup.cmdline({ '/', '?' }, {
mapping = cmp.mapping.preset.cmdline(), mapping = cmp.mapping.preset.cmdline(),
sources = { sources = {
{ name = 'buffer' } { name = 'buffer' },
} },
}) })
cmp.setup.cmdline(':', { cmp.setup.cmdline(':', {
mapping = cmp.mapping.preset.cmdline(), mapping = cmp.mapping.preset.cmdline(),
sources = cmp.config.sources({ sources = cmp.config.sources({
{ name = 'path' } { name = 'path' },
}, { }, {
{ name = 'cmdline' } { name = 'cmdline' },
}), }),
matching = { disallow_symbol_nonprefix_matching = false } matching = { disallow_symbol_nonprefix_matching = false },
}) })

View file

@ -3,5 +3,5 @@ if vim.g.did_load_diffview_plugin then
end end
vim.g.did_load_diffview_plugin = true vim.g.did_load_diffview_plugin = true
require("diffview").setup({ use_icons = false, }) require('diffview').setup { use_icons = false }
vim.keymap.set('n', '<leader>gdd', vim.cmd.DiffviewOpen, { desc = '[g]it [d]iffview open' }) vim.keymap.set('n', '<leader>gdd', vim.cmd.DiffviewOpen, { desc = '[g]it [d]iffview open' })

View file

@ -2,6 +2,6 @@ if vim.g.did_load_diffview_plugin then
return return
end end
vim.g.did_load_diffview_plugin = true vim.g.did_load_diffview_plugin = true
require("diffview").setup({ require('diffview').setup {
use_icons = false, use_icons = false,
}) }

View file

@ -4,27 +4,39 @@ end
vim.g.did_load_gitsigns_plugin = true vim.g.did_load_gitsigns_plugin = true
vim.schedule(function() vim.schedule(function()
require('gitsigns').setup{ require('gitsigns').setup {
signcolumn = false, signcolumn = false,
numhl = true, numhl = true,
on_attach = function() on_attach = function()
local gs = package.loaded.gitsigns local gs = package.loaded.gitsigns
vim.keymap.set("n", "<leader>gg", gs.preview_hunk, {desc = "git preview hunk"}) vim.keymap.set('n', '<leader>gg', gs.preview_hunk, { desc = 'git preview hunk' })
vim.keymap.set('n', '<leader>gb', function() gs.blame_line{full=true} end, {desc = "git blame_line"}) vim.keymap.set('n', '<leader>gb', function()
vim.keymap.set('n', '<leader>gr', gs.reset_hunk, {desc = "git reset hunk"}) gs.blame_line { full = true }
vim.keymap.set('v', '<leader>gr', function() gs.reset_hunk {vim.fn.line('.'), vim.fn.line('v')} end, {desc = "git reset hunk"}) end, { desc = 'git blame_line' })
-- Navigation vim.keymap.set('n', '<leader>gr', gs.reset_hunk, { desc = 'git reset hunk' })
vim.keymap.set('n', ']g', function() vim.keymap.set('v', '<leader>gr', function()
if vim.wo.diff then return ']c' end gs.reset_hunk { vim.fn.line('.'), vim.fn.line('v') }
vim.schedule(function() gs.next_hunk() end) end, { desc = 'git reset hunk' })
return '<Ignore>' -- Navigation
end, {expr=true}) vim.keymap.set('n', ']g', function()
if vim.wo.diff then
return ']c'
end
vim.schedule(function()
gs.next_hunk()
end)
return '<Ignore>'
end, { expr = true })
vim.keymap.set('n', '[g', function() vim.keymap.set('n', '[g', function()
if vim.wo.diff then return '[c' end if vim.wo.diff then
vim.schedule(function() gs.prev_hunk() end) return '[c'
return '<Ignore>' end
end, {expr=true}) vim.schedule(function()
end gs.prev_hunk()
end)
return '<Ignore>'
end, { expr = true })
end,
} }
end) end)

View file

@ -1,13 +1,13 @@
vim.keymap.set("n","gr", "gT", {noremap = true, silent = true}) vim.keymap.set('n', 'gr', 'gT', { noremap = true, silent = true })
vim.keymap.set("n","n", "nzz", {noremap = true, silent = true}) vim.keymap.set('n', 'n', 'nzz', { noremap = true, silent = true })
vim.keymap.set("n", "N", "Nzz", {noremap = true, silent = true}) vim.keymap.set('n', 'N', 'Nzz', { noremap = true, silent = true })
vim.keymap.set('n', '<C-d>', '<C-d>zz') vim.keymap.set('n', '<C-d>', '<C-d>zz')
vim.keymap.set('n', '<C-u>', '<C-u>zz') vim.keymap.set('n', '<C-u>', '<C-u>zz')
vim.keymap.set('n', '<C-f>', '<C-f>zz') vim.keymap.set('n', '<C-f>', '<C-f>zz')
vim.keymap.set('n', '<C-b>', '<C-b>zz') vim.keymap.set('n', '<C-b>', '<C-b>zz')
vim.keymap.set("n","<CR>", "m0i<cr><Esc>`0", {noremap = true, silent = true}) vim.keymap.set('n', '<CR>', 'm0i<cr><Esc>`0', { noremap = true, silent = true })
vim.keymap.set({'v', 'i'}, 'wq', '<esc>l', {noremap = true, silent = true}) vim.keymap.set({ 'v', 'i' }, 'wq', '<esc>l', { noremap = true, silent = true })
vim.keymap.set({'n', 'v', 'i'}, 'qwq', '<esc>l<cmd>wqa<CR>', {noremap = true, silent = true}) vim.keymap.set({ 'n', 'v', 'i' }, 'qwq', '<esc>l<cmd>wqa<CR>', { noremap = true, silent = true })
vim.keymap.set({'n', 'v'}, '<leader>yy', '"+y', {noremap = true, silent = true, desc = "Yank to clip"}) vim.keymap.set({ 'n', 'v' }, '<leader>yy', '"+y', { noremap = true, silent = true, desc = 'Yank to clip' })
vim.keymap.set({'n', 'v'}, '<leader>yp', '"+p', {noremap = true, silent = true, desc = "Paste from clip"}) vim.keymap.set({ 'n', 'v' }, '<leader>yp', '"+p', { noremap = true, silent = true, desc = 'Paste from clip' })
vim.keymap.set({'n', 'v'}, '<leader>yd', '"+d', {noremap = true, silent = true, desc = "Delete to clip"}) vim.keymap.set({ 'n', 'v' }, '<leader>yd', '"+d', { noremap = true, silent = true, desc = 'Delete to clip' })

View file

@ -7,59 +7,99 @@ vim.g.did_load_lsp_plugin = true
local lspconfig = require('lspconfig') local lspconfig = require('lspconfig')
local capabilities = require('cmp_nvim_lsp').default_capabilities() local capabilities = require('cmp_nvim_lsp').default_capabilities()
lspconfig.gopls.setup { on_attach = function(_, bufnr) lspconfig.gopls.setup {
on_attach = function(_, bufnr)
capabilities = capabilities capabilities = capabilities
vim.api.nvim_command("au BufWritePre <buffer> lua vim.lsp.buf.format { async = false }") vim.api.nvim_command('au BufWritePre <buffer> lua vim.lsp.buf.format { async = false }')
end end,
} }
lspconfig.pyright.setup { capabilities = capabilities } lspconfig.pyright.setup { capabilities = capabilities }
lspconfig.nil_ls.setup { capabilities = capabilities } lspconfig.nil_ls.setup { capabilities = capabilities }
vim.keymap.set('n', '<leader>de', vim.diagnostic.open_float, {desc = "Toggle diagnostic"}) vim.keymap.set('n', '<leader>de', vim.diagnostic.open_float, { desc = 'Toggle diagnostic' })
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, {desc = "Prev diagnostic"}) vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, { desc = 'Prev diagnostic' })
vim.keymap.set('n', ']d', vim.diagnostic.goto_next, {desc = "Next diagnostic"}) vim.keymap.set('n', ']d', vim.diagnostic.goto_next, { desc = 'Next diagnostic' })
vim.diagnostic.config({ vim.diagnostic.config {
virtual_text = true, virtual_text = true,
underline = true, underline = true,
update_in_insert = false, update_in_insert = false,
}) }
-- Use LspAttach autocommand to only map the following keys -- Use LspAttach autocommand to only map the following keys
-- after the language server attaches to the current buffer -- after the language server attaches to the current buffer
vim.api.nvim_create_autocmd('LspAttach', { vim.api.nvim_create_autocmd('LspAttach', {
group = vim.api.nvim_create_augroup('UserLspConfig', {}), group = vim.api.nvim_create_augroup('UserLspConfig', {}),
callback = function(ev) callback = function(ev)
local bufnr = ev.buf local bufnr = ev.buf
local client = vim.lsp.get_client_by_id(ev.data.client_id) local client = vim.lsp.get_client_by_id(ev.data.client_id)
-- Buffer local mappings. -- Buffer local mappings.
-- See `:help vim.lsp.*` for documentation on any of the below functions -- See `:help vim.lsp.*` for documentation on any of the below functions
vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = ev.buf, noremap = true, silent = true , desc = "LSP hover"}) vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = ev.buf, noremap = true, silent = true, desc = 'LSP hover' })
vim.keymap.set('n', '<leader>rn', vim.lsp.buf.rename, { buffer = ev.buf, noremap = true, silent = true , desc = "LSP Rename"}) vim.keymap.set(
vim.keymap.set({ 'n', 'v' }, '<leader>da', vim.lsp.buf.code_action, { buffer = ev.buf, noremap = true, silent = true , desc = "LSP code action"}) 'n',
vim.keymap.set("n", "<leader>dd", "<cmd>Telescope lsp_definitions<cr>", { buffer = ev.buf, noremap = true, silent = true , desc = "LSP definitions"}) '<leader>rn',
vim.keymap.set("n", "<leader>di", "<cmd>Telescope lsp_implementations<cr>", { buffer = ev.buf, noremap = true, silent = true , desc = "LSP implementations"}) vim.lsp.buf.rename,
vim.keymap.set("n", "<leader>dr", "<cmd>Telescope lsp_references<cr>", { buffer = ev.buf, noremap = true, silent = true , desc = "LSP references"}) { buffer = ev.buf, noremap = true, silent = true, desc = 'LSP Rename' }
vim.keymap.set("n", "<leader>dt", "<cmd>Telescope lsp_type_definitions<cr>", { buffer = ev.buf, noremap = true, silent = true , desc = "LSP type defs"}) )
vim.keymap.set("n", "<leader>ds", "<cmd>Telescope lsp_document_symbols<cr>", { buffer = ev.buf, noremap = true, silent = true , desc = "LSP symbols"}) vim.keymap.set(
vim.keymap.set('n', '<leader>dl', vim.lsp.codelens.run, { buffer = ev.buf, noremap = true, silent = true , desc = "LSP codelens"}) { 'n', 'v' },
vim.keymap.set('n', '<space>df', function() '<leader>da',
vim.lsp.buf.format { async = true } vim.lsp.buf.code_action,
end,{ buffer = ev.buf, noremap = true, silent = true , desc = "LSP format"}) { buffer = ev.buf, noremap = true, silent = true, desc = 'LSP code action' }
-- Auto-refresh code lenses )
if not client then vim.keymap.set(
return 'n',
end '<leader>dd',
local group = vim.api.nvim_create_augroup(string.format('lsp-%s-%s', bufnr, client.id), {}) '<cmd>Telescope lsp_definitions<cr>',
if client.server_capabilities.codeLensProvider then { buffer = ev.buf, noremap = true, silent = true, desc = 'LSP definitions' }
vim.api.nvim_create_autocmd({ 'InsertLeave', 'BufWritePost', 'TextChanged' }, { )
group = group, vim.keymap.set(
callback = function() 'n',
vim.lsp.codelens.refresh { bufnr = bufnr } '<leader>di',
end, '<cmd>Telescope lsp_implementations<cr>',
buffer = bufnr, { buffer = ev.buf, noremap = true, silent = true, desc = 'LSP implementations' }
}) )
vim.keymap.set(
'n',
'<leader>dr',
'<cmd>Telescope lsp_references<cr>',
{ buffer = ev.buf, noremap = true, silent = true, desc = 'LSP references' }
)
vim.keymap.set(
'n',
'<leader>dt',
'<cmd>Telescope lsp_type_definitions<cr>',
{ buffer = ev.buf, noremap = true, silent = true, desc = 'LSP type defs' }
)
vim.keymap.set(
'n',
'<leader>ds',
'<cmd>Telescope lsp_document_symbols<cr>',
{ buffer = ev.buf, noremap = true, silent = true, desc = 'LSP symbols' }
)
vim.keymap.set(
'n',
'<leader>dl',
vim.lsp.codelens.run,
{ buffer = ev.buf, noremap = true, silent = true, desc = 'LSP codelens' }
)
vim.keymap.set('n', '<space>df', function()
vim.lsp.buf.format { async = true }
end, { buffer = ev.buf, noremap = true, silent = true, desc = 'LSP format' })
-- Auto-refresh code lenses
if not client then
return
end
local group = vim.api.nvim_create_augroup(string.format('lsp-%s-%s', bufnr, client.id), {})
if client.server_capabilities.codeLensProvider then
vim.api.nvim_create_autocmd({ 'InsertLeave', 'BufWritePost', 'TextChanged' }, {
group = group,
callback = function()
vim.lsp.codelens.refresh { bufnr = bufnr } vim.lsp.codelens.refresh { bufnr = bufnr }
end end,
end, buffer = bufnr,
})
vim.lsp.codelens.refresh { bufnr = bufnr }
end
end,
}) })

View file

@ -3,35 +3,35 @@ if vim.g.did_load_luasnip_plugin then
end end
vim.g.did_load_luasnip_plugin = true vim.g.did_load_luasnip_plugin = true
local ls = require("luasnip") local ls = require('luasnip')
ls.config.set_config { ls.config.set_config {
history = true, history = true,
updateevents = "TextChanged, TextChangedI", updateevents = 'TextChanged, TextChangedI',
} }
require("luasnip.loaders.from_vscode").lazy_load() require('luasnip.loaders.from_vscode').lazy_load()
vim.keymap.set({"i", "s"}, "<C-K>", function() vim.keymap.set({ 'i', 's' }, '<C-K>', function()
if ls.expand_or_jumpable() then if ls.expand_or_jumpable() then
ls.expand_or_jump() ls.expand_or_jump()
end end
end, {silent = true}) end, { silent = true })
vim.keymap.set({"i", "s"}, "<C-J>", function() vim.keymap.set({ 'i', 's' }, '<C-J>', function()
if ls.jumpable(-1) then if ls.jumpable(-1) then
ls.jump(-1) ls.jump(-1)
end end
end, {silent = true}) end, { silent = true })
vim.keymap.set({"i", "s"}, "<C-L>", function() vim.keymap.set({ 'i', 's' }, '<C-L>', function()
if ls.choice_active() then if ls.choice_active() then
ls.change_choice(1) ls.change_choice(1)
end end
end, {silent = true}) end, { silent = true })
-------------------- --------------------
-- Snippets -- -- Snippets --
-------------------- --------------------
local fmta = require("luasnip.extras.fmt").fmta local fmta = require('luasnip.extras.fmt').fmta
ls.add_snippets("go", { ls.add_snippets('go', {
ls.snippet("ie", fmta("if err != nil {\n\treturn <err>\n}", { err = ls.insert_node(1, "err") })), ls.snippet('ie', fmta('if err != nil {\n\treturn <err>\n}', { err = ls.insert_node(1, 'err') })),
}) })

View file

@ -21,11 +21,9 @@ require('mini.surround').setup()
-- :Trim -- :Trim
require('mini.trailspace').setup() require('mini.trailspace').setup()
vim.api.nvim_create_user_command('Trim', vim.api.nvim_create_user_command('Trim', function()
function() require('mini.trailspace').trim()
require("mini.trailspace").trim() end, {})
end, {}
)
-- prefix \ -- prefix \
-- `b` - |'background'|. -- `b` - |'background'|.
@ -39,31 +37,31 @@ vim.api.nvim_create_user_command('Trim',
-- `r` - |'relativenumber'|. -- `r` - |'relativenumber'|.
-- `s` - |'spell'|. -- `s` - |'spell'|.
-- `w` - |'wrap'|. -- `w` - |'wrap'|.
require('mini.basics').setup({ require('mini.basics').setup {
mappings = { mappings = {
windows = true windows = true,
} },
}) }
-- gS -- gS
require('mini.splitjoin').setup({ require('mini.splitjoin').setup {
detect = { detect = {
separator = '[,;\n]' separator = '[,;\n]',
} },
}) }
require('mini.pairs').setup() require('mini.pairs').setup()
vim.cmd([[ hi MiniCursorwordCurrent ctermfg=240 ]]) vim.cmd([[ hi MiniCursorwordCurrent ctermfg=240 ]])
-- f F t T -- f F t T
require('mini.jump').setup() require('mini.jump').setup()
require('mini.jump2d').setup({ require('mini.jump2d').setup {
mappings = { start_jumping = '<leader>s' } mappings = { start_jumping = '<leader>s' },
}) }
indent = require('mini.indentscope') indent = require('mini.indentscope')
indent.setup({ indent.setup {
options = { try_as_border = false }, options = { try_as_border = false },
draw = { delay = 0 } draw = { delay = 0 },
}) }
indent.gen_animation.none() indent.gen_animation.none()

View file

@ -6,15 +6,15 @@ vim.g.did_load_plugins_plugin = true
-- many plugins annoyingly require a call to a 'setup' function to be loaded, -- many plugins annoyingly require a call to a 'setup' function to be loaded,
-- even with default configs -- even with default configs
require("neogen").setup{} require('neogen').setup {}
vim.keymap.set("n","<leader>nd", "<cmd>Neogen<CR>", {noremap = true, silent = true, desc = "Neogen - gen comments"}) vim.keymap.set('n', '<leader>nd', '<cmd>Neogen<CR>', { noremap = true, silent = true, desc = 'Neogen - gen comments' })
require("toggleterm").setup{ require('toggleterm').setup {
open_mapping = [[<C-\>]], open_mapping = [[<C-\>]],
direction = "float", direction = 'float',
close_on_exit = true, close_on_exit = true,
} }
require('which-key').setup { require('which-key').setup {
preset = 'helix' preset = 'helix',
} }

View file

@ -12,4 +12,4 @@ neogit.setup {
fzf_lua = true, fzf_lua = true,
}, },
} }
vim.keymap.set('n', '<leader>ng', neogit.open, { noremap = true, silent = true, desc = "Neogit"}) vim.keymap.set('n', '<leader>ng', neogit.open, { noremap = true, silent = true, desc = 'Neogit' })

View file

@ -4,20 +4,20 @@ end
vim.g.did_load_oil_plugin = true vim.g.did_load_oil_plugin = true
local oil = require('oil') local oil = require('oil')
oil.setup({ oil.setup {
watch_for_changes = true, watch_for_changes = true,
columns = { columns = {
"permissions", 'permissions',
"size" 'size',
}, },
view_options = { view_options = {
show_hidden = true show_hidden = true,
}, },
keymaps = { keymaps = {
["wq"] = "actions.close" ['wq'] = 'actions.close',
} },
}) }
vim.keymap.set("n", "<leader>c", oil.toggle_float, {noremap = true, silent = true}); vim.keymap.set('n', '<leader>c', oil.toggle_float, { noremap = true, silent = true })
vim.keymap.set("n", "<leader>u", "<cmd>UndotreeToggle<cr>") vim.keymap.set('n', '<leader>u', '<cmd>UndotreeToggle<cr>')
vim.g.undotree_ShortIndicators = 1 vim.g.undotree_ShortIndicators = 1
vim.g.undotree_SetFocusWhenToggle = 1 vim.g.undotree_SetFocusWhenToggle = 1

View file

@ -2,6 +2,6 @@ if vim.g.did_load_diffview_plugin then
return return
end end
vim.g.did_load_diffview_plugin = true vim.g.did_load_diffview_plugin = true
require("diffview").setup({ require('diffview').setup {
use_icons = false, use_icons = false,
}) }

View file

@ -3,7 +3,7 @@ if vim.g.did_load_telescope_plugin then
end end
vim.g.did_load_telescope_plugin = true vim.g.did_load_telescope_plugin = true
local telescope = require("telescope.builtin") local telescope = require('telescope.builtin')
-- Fall back to find_files if not in a git repo -- Fall back to find_files if not in a git repo
local project_files = function() local project_files = function()
@ -14,49 +14,69 @@ local project_files = function()
end end
end end
vim.keymap.set("n", "<leader><leader>", telescope.buffers, {noremap = true, silent = true, desc = "Fuzzy find buffers"}) vim.keymap.set(
vim.keymap.set("n", "<leader>ff", project_files, {noremap = true, silent = true, desc = "Fuzzy find git files"}) 'n',
vim.keymap.set("n", "<leader>fg", telescope.find_files, {noremap = true, silent = true, desc = "Fuzzy find files"}) '<leader><leader>',
vim.keymap.set("n", "<leader>fc", telescope.command_history, {noremap = true, silent = true, desc = "Fuzzy find command_history"}) telescope.buffers,
vim.keymap.set("n", "<leader>fa", telescope.live_grep, {noremap = true, silent = true, desc = "Fuzzy find grep"}) { noremap = true, silent = true, desc = 'Fuzzy find buffers' }
vim.keymap.set("n", "<leader>f8", telescope.grep_string, {noremap = true, silent = true, desc = "Fuzzy find grep current word"}) )
vim.keymap.set("n", "<leader>fs", telescope.treesitter, {noremap = true, silent = true, desc = "Fuzzy find treesitter objects"}) vim.keymap.set('n', '<leader>ff', project_files, { noremap = true, silent = true, desc = 'Fuzzy find git files' })
vim.keymap.set("n", "<leader>fq", telescope.quickfix, {noremap = true, silent = true, desc = "Fuzzy find quickfix"}) vim.keymap.set('n', '<leader>fg', telescope.find_files, { noremap = true, silent = true, desc = 'Fuzzy find files' })
vim.keymap.set("n", "<leader>f<BS>", telescope.resume, {noremap = true, silent = true, desc = "Fuzzy find resume"}) vim.keymap.set(
'n',
'<leader>fc',
telescope.command_history,
{ noremap = true, silent = true, desc = 'Fuzzy find command_history' }
)
vim.keymap.set('n', '<leader>fa', telescope.live_grep, { noremap = true, silent = true, desc = 'Fuzzy find grep' })
vim.keymap.set(
'n',
'<leader>f8',
telescope.grep_string,
{ noremap = true, silent = true, desc = 'Fuzzy find grep current word' }
)
vim.keymap.set(
'n',
'<leader>fs',
telescope.treesitter,
{ noremap = true, silent = true, desc = 'Fuzzy find treesitter objects' }
)
vim.keymap.set('n', '<leader>fq', telescope.quickfix, { noremap = true, silent = true, desc = 'Fuzzy find quickfix' })
vim.keymap.set('n', '<leader>f<BS>', telescope.resume, { noremap = true, silent = true, desc = 'Fuzzy find resume' })
local telescope = require("telescope") local telescope = require('telescope')
telescope.setup({ telescope.setup {
defaults = { defaults = {
layout_strategy = "vertical", layout_strategy = 'vertical',
layout_config = { width = .90, }, layout_config = { width = 0.90 },
prompt_title = false, prompt_title = false,
results_title = false, results_title = false,
preview_title = false, preview_title = false,
vimgrep_arguments = { vimgrep_arguments = {
"rg", 'rg',
'-L', '-L',
"--color=never", '--color=never',
"--no-heading", '--no-heading',
"--hidden", '--hidden',
"--with-filename", '--with-filename',
"--line-number", '--line-number',
"--column", '--column',
"--smart-case" '--smart-case',
},
preview = {
treesitter = true,
},
path_display = {
'truncate',
},
mappings = {
i = {
["wq"] = require("telescope.actions").close,
["<Esc>"] = require("telescope.actions").close,
["<C-k>"] = require("telescope.actions").move_selection_previous,
["<C-j>"] = require("telescope.actions").move_selection_next,
},
},
}, },
}) preview = {
telescope.load_extension("fzf") treesitter = true,
},
path_display = {
'truncate',
},
mappings = {
i = {
['wq'] = require('telescope.actions').close,
['<Esc>'] = require('telescope.actions').close,
['<C-k>'] = require('telescope.actions').move_selection_previous,
['<C-j>'] = require('telescope.actions').move_selection_next,
},
},
},
}
telescope.load_extension('fzf')

View file

@ -3,61 +3,62 @@ if vim.g.did_load_treesitter_plugin then
end end
vim.g.did_load_treesitter_plugin = true vim.g.did_load_treesitter_plugin = true
require("nvim-treesitter.configs").setup { require('nvim-treesitter.configs').setup {
ensure_installed = {}, ensure_installed = {},
highlight = { highlight = {
enable = true,
disable = function(_, buf)
local max_filesize = 100 * 1024 -- 100 KiB
local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
if ok and stats and stats.size > max_filesize then
return true
end
end,
},
indent = {
enable = true,
},
textobjects = {
select = {
enable = true, enable = true,
disable = function(_, buf) lookahead = true,
local max_filesize = 100 * 1024 -- 100 KiB keymaps = {
local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf)) ['af'] = '@function.outer',
if ok and stats and stats.size > max_filesize then ['if'] = '@function.inner',
return true ['aa'] = '@statement.outer',
end ['ia'] = '@parameter.inner',
end, },
}, },
indent = { move = {
enable = true, enable = true,
set_jumps = true, -- whether to set jumps in the jumplist
goto_next_start = {
[']]'] = '@function.outer',
[']a'] = '@parameter.inner',
},
goto_previous_start = {
['[['] = '@function.outer',
['[a'] = '@parameter.inner',
},
}, },
textobjects = { swap = {
select = { enable = true,
enable = true, swap_next = {
lookahead = true, ['s]'] = '@parameter.inner',
keymaps = { },
["af"] = "@function.outer", swap_previous = {
["if"] = "@function.inner", ['s['] = '@parameter.inner',
["aa"] = "@statement.outer", },
["ia"] = "@parameter.inner",
},
},
move = {
enable = true,
set_jumps = true, -- whether to set jumps in the jumplist
goto_next_start = {
[']]'] = '@function.outer',
[']a'] = '@parameter.inner',
},
goto_previous_start = {
['[['] = '@function.outer',
['[a'] = '@parameter.inner',
},
},
swap = {
enable = true,
swap_next = {
["s]"] = "@parameter.inner",
},
swap_previous = {
["s["] = "@parameter.inner",
},
}, },
incremental_selection = {
enable = true,
keymaps = {
init_selection = '<CR>',
node_incremental = '<TAB>',
node_decremental = '<S-TAB>',
},
}, },
},
incremental_selection = {
enable = true,
keymaps = {
init_selection = '<CR>',
node_incremental = '<TAB>',
node_decremental = '<S-TAB>',
},
},
} }
require('treesitter-context').setup { require('treesitter-context').setup {

View file

@ -1,3 +1,3 @@
require('which-key').setup { require('which-key').setup {
preset = 'helix' preset = 'helix',
} }