mv plugins to lua
This commit is contained in:
parent
e8169ca91c
commit
d7c4fd7813
@ -1,106 +0,0 @@
|
|||||||
local M = {}
|
|
||||||
|
|
||||||
local cmp_nvim_lsp = require 'cmp_nvim_lsp'
|
|
||||||
|
|
||||||
M.capabilities = vim.lsp.protocol.make_client_capabilities()
|
|
||||||
M.capabilities.textDocument.completion.completionItem.snippetSupport = true
|
|
||||||
-- M.capabilities.offsetEncoding = { "utf-16" }
|
|
||||||
M.capabilities = cmp_nvim_lsp.default_capabilities(M.capabilities)
|
|
||||||
|
|
||||||
-- vim.cmd [[autocmd CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, {focus=false, scope="cursor"})]]
|
|
||||||
|
|
||||||
M.setup = function()
|
|
||||||
local config = {
|
|
||||||
virtual_text = true,
|
|
||||||
signs = false,
|
|
||||||
underline = true,
|
|
||||||
update_in_insert = true,
|
|
||||||
severity_sort = true,
|
|
||||||
float = {
|
|
||||||
focusable = true,
|
|
||||||
style = 'minimal',
|
|
||||||
border = 'rounded',
|
|
||||||
source = 'always',
|
|
||||||
header = '',
|
|
||||||
prefix = '',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
vim.diagnostic.config(config)
|
|
||||||
|
|
||||||
vim.lsp.handlers['textDocument/hover'] = vim.lsp.with(vim.lsp.handlers.hover, {
|
|
||||||
border = 'rounded',
|
|
||||||
})
|
|
||||||
|
|
||||||
vim.lsp.handlers['textDocument/signatureHelp'] = vim.lsp.with(vim.lsp.handlers.signature_help, {
|
|
||||||
border = 'rounded',
|
|
||||||
})
|
|
||||||
|
|
||||||
--[[ local on_references = vim.lsp.handlers['textDocument/references'] ]]
|
|
||||||
--[[ vim.lsp.handlers['textDocument/references'] = vim.lsp.with(on_references, { ]]
|
|
||||||
--[[ -- Use location list instead of quickfix list ]]
|
|
||||||
--[[ loclist = true, ]]
|
|
||||||
--[[ }) ]]
|
|
||||||
end
|
|
||||||
|
|
||||||
local function lsp_keymaps(bufnr)
|
|
||||||
local opts = { noremap = true, silent = true }
|
|
||||||
local keymap = vim.api.nvim_buf_set_keymap
|
|
||||||
keymap(bufnr, 'n', 'gD', '<cmd>lua vim.lsp.buf.declaration()<CR>', opts)
|
|
||||||
keymap(bufnr, 'n', 'gd', '<cmd>lua vim.lsp.buf.definition()<CR>', opts)
|
|
||||||
keymap(bufnr, 'n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>', opts)
|
|
||||||
keymap(bufnr, 'n', 'gI', '<cmd>lua vim.lsp.buf.implementation()<CR>', opts)
|
|
||||||
keymap(bufnr, 'n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>', opts)
|
|
||||||
keymap(bufnr, 'n', 'gl', '<cmd>lua vim.diagnostic.open_float()<CR>', opts)
|
|
||||||
keymap(bufnr, 'n', '<leader>lf', '<cmd>lua vim.lsp.buf.format { async = true }<cr>', opts)
|
|
||||||
keymap(bufnr, 'n', '<leader>li', '<cmd>LspInfo<cr>', opts)
|
|
||||||
keymap(bufnr, 'n', '<leader>lI', '<cmd>LspInstallInfo<cr>', opts)
|
|
||||||
keymap(bufnr, 'n', '<leader>la', '<cmd>lua vim.lsp.buf.code_action()<cr>', opts)
|
|
||||||
keymap(bufnr, 'n', '<leader>lj', '<cmd>lua vim.diagnostic.goto_next({buffer=0})<cr>', opts)
|
|
||||||
keymap(bufnr, 'n', '<leader>lk', '<cmd>lua vim.diagnostic.goto_prev({buffer=0})<cr>', opts)
|
|
||||||
keymap(bufnr, 'n', '<leader>lr', '<cmd>lua vim.lsp.buf.rename()<cr>', opts)
|
|
||||||
keymap(bufnr, 'n', '<leader>ls', '<cmd>lua vim.lsp.buf.signature_help()<CR>', opts)
|
|
||||||
keymap(bufnr, 'n', '<leader>lq', '<cmd>lua vim.diagnostic.setloclist()<CR>', opts)
|
|
||||||
keymap(bufnr, 'n', '<leader>e', '<cmd>lua vim.diagnostic.open_float()<CR>', opts)
|
|
||||||
end
|
|
||||||
|
|
||||||
M.on_attach = function(client, bufnr)
|
|
||||||
--[[ vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc') ]]
|
|
||||||
lsp_keymaps(bufnr)
|
|
||||||
if client.name == 'sumneko_lua' then
|
|
||||||
client.server_capabilities.documentFormattingProvider = false
|
|
||||||
end
|
|
||||||
if client.name == 'clangd' then
|
|
||||||
client.server_capabilities.documentFormattingProvider = false
|
|
||||||
end
|
|
||||||
if client.name == 'gopls' then
|
|
||||||
client.server_capabilities.documentFormattingProvider = false
|
|
||||||
end
|
|
||||||
if client.name == 'jdtls' then
|
|
||||||
client.server_capabilities.documentFormattingProvider = false
|
|
||||||
end
|
|
||||||
if client.name == 'jdt.ls' then
|
|
||||||
client.server_capabilities.documentFormattingProvider = false
|
|
||||||
vim.lsp.codelens.refresh()
|
|
||||||
if JAVA_DAP_ACTIVE then
|
|
||||||
require('jdtls').setup_dap { hotcodereplace = 'auto' }
|
|
||||||
require('jdtls.dap').setup_dap_main_class_configs()
|
|
||||||
end
|
|
||||||
end
|
|
||||||
local ft = vim.api.nvim_buf_get_option(bufnr, 'filetype')
|
|
||||||
local nls = require 'config.plugins.null-ls'
|
|
||||||
|
|
||||||
local enable = false
|
|
||||||
if nls.has_formatter(ft) then
|
|
||||||
enable = client.name == 'null-ls'
|
|
||||||
else
|
|
||||||
enable = not (client.name == 'null-ls')
|
|
||||||
end
|
|
||||||
|
|
||||||
if client.name == 'tsserver' then
|
|
||||||
enable = false
|
|
||||||
end
|
|
||||||
-- util.info(client.name .. " " .. (enable and "yes" or "no"), "format")
|
|
||||||
client.server_capabilities.documentFormattingProvider = enable
|
|
||||||
end
|
|
||||||
|
|
||||||
return M
|
|
@ -1,127 +0,0 @@
|
|||||||
local mini = {
|
|
||||||
'echasnovski/mini.nvim',
|
|
||||||
event = 'VeryLazy',
|
|
||||||
}
|
|
||||||
|
|
||||||
local specs = { mini, 'JoosepAlviste/nvim-ts-context-commentstring' }
|
|
||||||
|
|
||||||
function mini.surround()
|
|
||||||
require('mini.surround').setup {
|
|
||||||
mappings = {
|
|
||||||
add = 'gza', -- Add surrounding in Normal and Visual modes
|
|
||||||
delete = 'gzd', -- Delete surrounding
|
|
||||||
find = 'gzf', -- Find surrounding (to the right)
|
|
||||||
find_left = 'gzF', -- Find surrounding (to the left)
|
|
||||||
highlight = 'gzh', -- Highlight surrounding
|
|
||||||
replace = 'gzr', -- Replace surrounding
|
|
||||||
update_n_lines = 'gzn', -- Update `n_lines`
|
|
||||||
},
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
function mini.jump()
|
|
||||||
require('mini.jump').setup {}
|
|
||||||
end
|
|
||||||
|
|
||||||
function mini.pairs()
|
|
||||||
require('mini.pairs').setup {}
|
|
||||||
end
|
|
||||||
|
|
||||||
function mini.comment()
|
|
||||||
require('mini.comment').setup {
|
|
||||||
hooks = {
|
|
||||||
pre = function()
|
|
||||||
require('ts_context_commentstring.internal').update_commentstring {}
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
function mini.ai()
|
|
||||||
local ai = require 'mini.ai'
|
|
||||||
require('mini.ai').setup {
|
|
||||||
n_lines = 500,
|
|
||||||
-- search_method = "cover_or_next",
|
|
||||||
custom_textobjects = {
|
|
||||||
o = ai.gen_spec.treesitter({
|
|
||||||
a = { '@block.outer', '@conditional.outer', '@loop.outer' },
|
|
||||||
i = { '@block.inner', '@conditional.inner', '@loop.inner' },
|
|
||||||
}, {}),
|
|
||||||
f = ai.gen_spec.treesitter({ a = '@function.outer', i = '@function.inner' }, {}),
|
|
||||||
c = ai.gen_spec.treesitter({ a = '@class.outer', i = '@class.inner' }, {}),
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
local map = function(text_obj, desc)
|
|
||||||
for _, side in ipairs { 'left', 'right' } do
|
|
||||||
for dir, d in pairs { prev = '[', next = ']' } do
|
|
||||||
local lhs = d .. (side == 'right' and text_obj:upper() or text_obj:lower())
|
|
||||||
for _, mode in ipairs { 'n', 'x', 'o' } do
|
|
||||||
vim.keymap.set(mode, lhs, function()
|
|
||||||
ai.move_cursor(side, 'a', text_obj, { search_method = dir })
|
|
||||||
end, {
|
|
||||||
desc = dir .. ' ' .. desc,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
map('f', 'function')
|
|
||||||
map('c', 'class')
|
|
||||||
map('o', 'block')
|
|
||||||
end
|
|
||||||
|
|
||||||
function mini.config()
|
|
||||||
-- M.jump()
|
|
||||||
mini.surround()
|
|
||||||
-- mini.ai()
|
|
||||||
-- mini.pairs()
|
|
||||||
mini.comment()
|
|
||||||
mini.jump()
|
|
||||||
-- mini.animate()
|
|
||||||
end
|
|
||||||
|
|
||||||
function mini.animate()
|
|
||||||
local mouse_scrolled = false
|
|
||||||
for _, scroll in ipairs { 'Up', 'Down' } do
|
|
||||||
local key = '<ScrollWheel' .. scroll .. '>'
|
|
||||||
vim.keymap.set('', key, function()
|
|
||||||
mouse_scrolled = true
|
|
||||||
return key
|
|
||||||
end, { remap = true, expr = true })
|
|
||||||
end
|
|
||||||
|
|
||||||
local animate = require 'mini.animate'
|
|
||||||
vim.go.winwidth = 20
|
|
||||||
vim.go.winminwidth = 5
|
|
||||||
|
|
||||||
animate.setup {
|
|
||||||
resize = {
|
|
||||||
timing = animate.gen_timing.linear { duration = 50, unit = 'total' },
|
|
||||||
},
|
|
||||||
scroll = {
|
|
||||||
timing = animate.gen_timing.linear { duration = 100, unit = 'total' },
|
|
||||||
subscroll = animate.gen_subscroll.equal {
|
|
||||||
predicate = function(total_scroll)
|
|
||||||
if mouse_scrolled then
|
|
||||||
mouse_scrolled = false
|
|
||||||
return false
|
|
||||||
end
|
|
||||||
return total_scroll > 1
|
|
||||||
end,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
end
|
|
||||||
|
|
||||||
function mini.init()
|
|
||||||
vim.keymap.set('n', '<leader>bd', function()
|
|
||||||
require('mini.bufremove').delete(0, false)
|
|
||||||
end)
|
|
||||||
vim.keymap.set('n', '<leader>bD', function()
|
|
||||||
require('mini.bufremove').delete(0, true)
|
|
||||||
end)
|
|
||||||
end
|
|
||||||
|
|
||||||
return specs
|
|
64
lua/plugins/Comment.lua
Normal file
64
lua/plugins/Comment.lua
Normal file
@ -0,0 +1,64 @@
|
|||||||
|
local M = {
|
||||||
|
'numToStr/Comment.nvim',
|
||||||
|
event = 'VeryLazy',
|
||||||
|
}
|
||||||
|
|
||||||
|
function M.config()
|
||||||
|
local comment = require 'Comment'
|
||||||
|
|
||||||
|
comment.setup {
|
||||||
|
-- -LHS of operator-pending mappings in NORMAL and VISUAL mode
|
||||||
|
opleader = {
|
||||||
|
---Line-comment keymap
|
||||||
|
line = 'gc',
|
||||||
|
---Block-comment keymap
|
||||||
|
block = 'gb',
|
||||||
|
},
|
||||||
|
---LHS of extra mappings
|
||||||
|
extra = {
|
||||||
|
---Add comment on the line above
|
||||||
|
above = 'gcO',
|
||||||
|
---Add comment on the line below
|
||||||
|
below = 'gco',
|
||||||
|
---Add comment at the end of line
|
||||||
|
eol = 'gca',
|
||||||
|
},
|
||||||
|
---Enable keybindings
|
||||||
|
---NOTE: If given `false` then the plugin won't create any mappings
|
||||||
|
mappings = {
|
||||||
|
---Operator-pending mapping; `gcc` `gbc` `gc[count]{motion}` `gb[count]{motion}`
|
||||||
|
basic = true,
|
||||||
|
---Extra mapping; `gco`, `gcO`, `gcA`
|
||||||
|
extra = true,
|
||||||
|
---Extended mapping; `g>` `g<` `g>[count]{motion}` `g<[count]{motion}`
|
||||||
|
extended = false,
|
||||||
|
},
|
||||||
|
pre_hook = function(ctx)
|
||||||
|
-- Only calculate commentstring for tsx filetypes
|
||||||
|
if vim.bo.filetype == 'typescriptreact' then
|
||||||
|
local U = require 'Comment.utils'
|
||||||
|
|
||||||
|
-- Determine whether to use linewise or blockwise commentstring
|
||||||
|
local type = ctx.ctype == U.ctype.linewise and '__default' or '__multiline'
|
||||||
|
|
||||||
|
-- Determine the location where to calculate commentstring from
|
||||||
|
local location = nil
|
||||||
|
if ctx.ctype == U.ctype.blockwise then
|
||||||
|
location = require('ts_context_commentstring.utils').get_cursor_location()
|
||||||
|
elseif ctx.cmotion == U.cmotion.v or ctx.cmotion == U.cmotion.V then
|
||||||
|
location = require('ts_context_commentstring.utils').get_visual_start_location()
|
||||||
|
end
|
||||||
|
|
||||||
|
return require('ts_context_commentstring.internal').calculate_commentstring {
|
||||||
|
key = type,
|
||||||
|
location = location,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
|
||||||
|
local ft = require 'Comment.ft'
|
||||||
|
ft({ 's', 'asm' }, '# %s')
|
||||||
|
end
|
||||||
|
|
||||||
|
return M
|
@ -6,6 +6,7 @@ local M = {
|
|||||||
'hrsh7th/cmp-buffer',
|
'hrsh7th/cmp-buffer',
|
||||||
'hrsh7th/cmp-cmdline',
|
'hrsh7th/cmp-cmdline',
|
||||||
'hrsh7th/cmp-path',
|
'hrsh7th/cmp-path',
|
||||||
|
'hrsh7th/cmp-calc',
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -105,14 +106,14 @@ function M.config()
|
|||||||
end
|
end
|
||||||
end, { 'i', 's', 'c' }),
|
end, { 'i', 's', 'c' }),
|
||||||
},
|
},
|
||||||
sources = cmp.config.sources {
|
sources = {
|
||||||
{ name = 'nvim_lsp' },
|
{ name = 'nvim_lsp' },
|
||||||
{ name = 'snippy' },
|
{ name = 'snippy' },
|
||||||
{ name = 'buffer' },
|
{ name = 'buffer' },
|
||||||
{ name = 'path' },
|
{ name = 'path' },
|
||||||
|
{ name = 'calc' },
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
cmp.setup.cmdline(':', {
|
cmp.setup.cmdline(':', {
|
||||||
completion = { autocomplete = true },
|
completion = { autocomplete = true },
|
||||||
mapping = {
|
mapping = {
|
||||||
@ -136,6 +137,7 @@ function M.config()
|
|||||||
sources = {
|
sources = {
|
||||||
{ name = 'cmdline' },
|
{ name = 'cmdline' },
|
||||||
{ name = 'path' },
|
{ name = 'path' },
|
||||||
|
{ name = 'calc' },
|
||||||
},
|
},
|
||||||
view = {
|
view = {
|
||||||
entries = { name = 'wildmenu', separator = ' · ' },
|
entries = { name = 'wildmenu', separator = ' · ' },
|
||||||
@ -145,45 +147,13 @@ function M.config()
|
|||||||
cmp.setup.cmdline('/', {
|
cmp.setup.cmdline('/', {
|
||||||
completion = { autocomplete = true },
|
completion = { autocomplete = true },
|
||||||
sources = {
|
sources = {
|
||||||
{
|
{ name = 'buffer' },
|
||||||
name = 'buffer',
|
|
||||||
},
|
|
||||||
},
|
},
|
||||||
view = {
|
view = {
|
||||||
entries = { name = 'wildmenu', separator = ' · ' },
|
entries = { name = 'wildmenu', separator = ' · ' },
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
local config = {
|
|
||||||
virtual_text = true,
|
|
||||||
signs = false,
|
|
||||||
underline = true,
|
|
||||||
update_in_insert = true,
|
|
||||||
severity_sort = true,
|
|
||||||
float = {
|
|
||||||
focusable = true,
|
|
||||||
style = 'minimal',
|
|
||||||
border = 'rounded',
|
|
||||||
source = 'always',
|
|
||||||
header = '',
|
|
||||||
prefix = '',
|
|
||||||
},
|
|
||||||
}
|
|
||||||
vim.diagnostic.config(config)
|
|
||||||
|
|
||||||
vim.lsp.handlers['textDocument/hover'] = vim.lsp.with(vim.lsp.handlers.hover, {
|
|
||||||
border = 'rounded',
|
|
||||||
})
|
|
||||||
|
|
||||||
vim.lsp.handlers['textDocument/signatureHelp'] = vim.lsp.with(vim.lsp.handlers.signature_help, {
|
|
||||||
border = 'rounded',
|
|
||||||
})
|
|
||||||
|
|
||||||
--[[ local on_references = vim.lsp.handlers['textDocument/references'] ]]
|
|
||||||
--[[ vim.lsp.handlers['textDocument/references'] = vim.lsp.with(on_references, { ]]
|
|
||||||
--[[ -- Use location list instead of quickfix list ]]
|
|
||||||
--[[ loclist = true, ]]
|
|
||||||
--[[ }) ]]
|
|
||||||
end
|
end
|
||||||
|
|
||||||
return M
|
return M
|
@ -3,7 +3,12 @@ return {
|
|||||||
{ 'honza/vim-snippets', lazy = false },
|
{ 'honza/vim-snippets', lazy = false },
|
||||||
{ 'dcampos/nvim-snippy', lazy = false },
|
{ 'dcampos/nvim-snippy', lazy = false },
|
||||||
{ 'dcampos/cmp-snippy', lazy = false },
|
{ 'dcampos/cmp-snippy', lazy = false },
|
||||||
{ 'kdheepak/lazygit.nvim', cmd = 'LazyGit' },
|
-- { 'kdheepak/lazygit.nvim', cmd = 'LazyGit' },
|
||||||
|
{ 'is0n/fm-nvim', cmd = {
|
||||||
|
'Neomutt',
|
||||||
|
'Lazygit',
|
||||||
|
'Lf',
|
||||||
|
} },
|
||||||
'williamboman/mason-lspconfig.nvim',
|
'williamboman/mason-lspconfig.nvim',
|
||||||
{
|
{
|
||||||
'phaazon/hop.nvim',
|
'phaazon/hop.nvim',
|
@ -12,7 +12,7 @@ M.tools = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function M.config()
|
function M.config()
|
||||||
require 'mason'
|
-- require 'mason'
|
||||||
local lspconfig = require 'lspconfig'
|
local lspconfig = require 'lspconfig'
|
||||||
local opts = {}
|
local opts = {}
|
||||||
local cmp_nvim_lsp = require 'cmp_nvim_lsp'
|
local cmp_nvim_lsp = require 'cmp_nvim_lsp'
|
||||||
@ -65,7 +65,7 @@ function M.config()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
local ft = vim.api.nvim_buf_get_option(bufnr, 'filetype')
|
local ft = vim.api.nvim_buf_get_option(bufnr, 'filetype')
|
||||||
local nls = require 'config.plugins.null-ls'
|
local nls = require 'plugins.null-ls'
|
||||||
|
|
||||||
local enable = false
|
local enable = false
|
||||||
if nls.has_formatter(ft) then
|
if nls.has_formatter(ft) then
|
||||||
@ -88,7 +88,7 @@ function M.config()
|
|||||||
local server = vim.split(tool, '@')[1]
|
local server = vim.split(tool, '@')[1]
|
||||||
|
|
||||||
if server == 'sumneko_lua' then
|
if server == 'sumneko_lua' then
|
||||||
local sumneko_opts = require 'config.plugins.lsp.settings.sumneko_lua'
|
local sumneko_opts = require 'plugins.lsp.settings.sumneko_lua'
|
||||||
opts = vim.tbl_deep_extend('force', sumneko_opts, opts)
|
opts = vim.tbl_deep_extend('force', sumneko_opts, opts)
|
||||||
end
|
end
|
||||||
if server == 'clangd' then
|
if server == 'clangd' then
|
@ -1,5 +1,6 @@
|
|||||||
local M = {
|
local M = {
|
||||||
'williamboman/mason.nvim',
|
'williamboman/mason.nvim',
|
||||||
|
cmd = 'Mason',
|
||||||
}
|
}
|
||||||
|
|
||||||
M.tools = {
|
M.tools = {
|
||||||
@ -40,7 +41,7 @@ function M.config()
|
|||||||
max_concurrent_installers = 4,
|
max_concurrent_installers = 4,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
M.check()
|
-- M.check()
|
||||||
require('mason-lspconfig').setup {
|
require('mason-lspconfig').setup {
|
||||||
automatic_installation = false,
|
automatic_installation = false,
|
||||||
}
|
}
|
127
lua/plugins/mini.bak
Normal file
127
lua/plugins/mini.bak
Normal file
@ -0,0 +1,127 @@
|
|||||||
|
local mini = {
|
||||||
|
'echasnovski/mini.nvim',
|
||||||
|
event = 'VeryLazy',
|
||||||
|
}
|
||||||
|
|
||||||
|
local specs = { mini, 'JoosepAlviste/nvim-ts-context-commentstring' }
|
||||||
|
|
||||||
|
-- function mini.surround()
|
||||||
|
-- require('mini.surround').setup {
|
||||||
|
-- mappings = {
|
||||||
|
-- add = 'gza', -- Add surrounding in Normal and Visual modes
|
||||||
|
-- delete = 'gzd', -- Delete surrounding
|
||||||
|
-- find = 'gzf', -- Find surrounding (to the right)
|
||||||
|
-- find_left = 'gzF', -- Find surrounding (to the left)
|
||||||
|
-- highlight = 'gzh', -- Highlight surrounding
|
||||||
|
-- replace = 'gzr', -- Replace surrounding
|
||||||
|
-- update_n_lines = 'gzn', -- Update `n_lines`
|
||||||
|
-- },
|
||||||
|
-- }
|
||||||
|
-- end
|
||||||
|
--
|
||||||
|
-- function mini.jump()
|
||||||
|
-- require('mini.jump').setup {}
|
||||||
|
-- end
|
||||||
|
--
|
||||||
|
-- function mini.pairs()
|
||||||
|
-- require('mini.pairs').setup {}
|
||||||
|
-- end
|
||||||
|
|
||||||
|
function mini.comment()
|
||||||
|
require('mini.comment').setup {
|
||||||
|
hooks = {
|
||||||
|
pre = function()
|
||||||
|
require('ts_context_commentstring.internal').update_commentstring {}
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
-- function mini.ai()
|
||||||
|
-- local ai = require 'mini.ai'
|
||||||
|
-- require('mini.ai').setup {
|
||||||
|
-- n_lines = 500,
|
||||||
|
-- -- search_method = "cover_or_next",
|
||||||
|
-- custom_textobjects = {
|
||||||
|
-- o = ai.gen_spec.treesitter({
|
||||||
|
-- a = { '@block.outer', '@conditional.outer', '@loop.outer' },
|
||||||
|
-- i = { '@block.inner', '@conditional.inner', '@loop.inner' },
|
||||||
|
-- }, {}),
|
||||||
|
-- f = ai.gen_spec.treesitter({ a = '@function.outer', i = '@function.inner' }, {}),
|
||||||
|
-- c = ai.gen_spec.treesitter({ a = '@class.outer', i = '@class.inner' }, {}),
|
||||||
|
-- },
|
||||||
|
-- }
|
||||||
|
--
|
||||||
|
-- local map = function(text_obj, desc)
|
||||||
|
-- for _, side in ipairs { 'left', 'right' } do
|
||||||
|
-- for dir, d in pairs { prev = '[', next = ']' } do
|
||||||
|
-- local lhs = d .. (side == 'right' and text_obj:upper() or text_obj:lower())
|
||||||
|
-- for _, mode in ipairs { 'n', 'x', 'o' } do
|
||||||
|
-- vim.keymap.set(mode, lhs, function()
|
||||||
|
-- ai.move_cursor(side, 'a', text_obj, { search_method = dir })
|
||||||
|
-- end, {
|
||||||
|
-- desc = dir .. ' ' .. desc,
|
||||||
|
-- })
|
||||||
|
-- end
|
||||||
|
-- end
|
||||||
|
-- end
|
||||||
|
-- end
|
||||||
|
--
|
||||||
|
-- map('f', 'function')
|
||||||
|
-- map('c', 'class')
|
||||||
|
-- map('o', 'block')
|
||||||
|
-- end
|
||||||
|
|
||||||
|
function mini.config()
|
||||||
|
-- M.jump()
|
||||||
|
-- mini.surround()
|
||||||
|
-- mini.ai()
|
||||||
|
-- mini.pairs()
|
||||||
|
mini.comment()
|
||||||
|
-- mini.jump()
|
||||||
|
-- mini.animate()
|
||||||
|
end
|
||||||
|
|
||||||
|
-- function mini.animate()
|
||||||
|
-- local mouse_scrolled = false
|
||||||
|
-- for _, scroll in ipairs { 'Up', 'Down' } do
|
||||||
|
-- local key = '<ScrollWheel' .. scroll .. '>'
|
||||||
|
-- vim.keymap.set('', key, function()
|
||||||
|
-- mouse_scrolled = true
|
||||||
|
-- return key
|
||||||
|
-- end, { remap = true, expr = true })
|
||||||
|
-- end
|
||||||
|
--
|
||||||
|
-- local animate = require 'mini.animate'
|
||||||
|
-- vim.go.winwidth = 20
|
||||||
|
-- vim.go.winminwidth = 5
|
||||||
|
--
|
||||||
|
-- animate.setup {
|
||||||
|
-- resize = {
|
||||||
|
-- timing = animate.gen_timing.linear { duration = 50, unit = 'total' },
|
||||||
|
-- },
|
||||||
|
-- scroll = {
|
||||||
|
-- timing = animate.gen_timing.linear { duration = 100, unit = 'total' },
|
||||||
|
-- subscroll = animate.gen_subscroll.equal {
|
||||||
|
-- predicate = function(total_scroll)
|
||||||
|
-- if mouse_scrolled then
|
||||||
|
-- mouse_scrolled = false
|
||||||
|
-- return false
|
||||||
|
-- end
|
||||||
|
-- return total_scroll > 1
|
||||||
|
-- end,
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
-- }
|
||||||
|
-- end
|
||||||
|
|
||||||
|
function mini.init()
|
||||||
|
vim.keymap.set('n', '<leader>bd', function()
|
||||||
|
require('mini.bufremove').delete(0, false)
|
||||||
|
end)
|
||||||
|
vim.keymap.set('n', '<leader>bD', function()
|
||||||
|
require('mini.bufremove').delete(0, true)
|
||||||
|
end)
|
||||||
|
end
|
||||||
|
|
||||||
|
return specs
|
@ -36,14 +36,14 @@ function M.config()
|
|||||||
enable = true, -- false will disable the whole extension
|
enable = true, -- false will disable the whole extension
|
||||||
disable = { 'html' },
|
disable = { 'html' },
|
||||||
},
|
},
|
||||||
context_commentstring = { enable = true, config = { css = '// %s' } },
|
-- context_commentstring = { enable = true, config = { css = '// %s' } },
|
||||||
-- indent = {enable = true, disable = {"python", "html", "javascript"}},
|
-- indent = {enable = true, disable = {"python", "html", "javascript"}},
|
||||||
-- TODO seems to be broken
|
-- TODO seems to be broken
|
||||||
indent = { enable = true, disable = { 'python', 'css' } },
|
indent = { enable = false, disable = { 'python', 'css' } },
|
||||||
autotag = { enable = true },
|
-- autotag = { enable = true },
|
||||||
autopairs = {
|
-- autopairs = {
|
||||||
enable = true,
|
-- enable = true,
|
||||||
},
|
-- },
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue
Block a user