even cooler
This commit is contained in:
@@ -1,52 +1,3 @@
|
||||
--[[ nvim-neo-tree/neo-tree ]]
|
||||
-- Открыть интерфейс с древовидным отображением файлов
|
||||
vim.keymap.set({ 'n', 'i', 'v', 't' }, '<f1>', '<cmd>Neotree toggle<cr>', { noremap = true })
|
||||
|
||||
|
||||
-- [[ folke/trouble.nvim ]]
|
||||
vim.keymap.set({ 'n', 'i', 'v', 't' }, '<f2>', '<cmd>Trouble diagnostics toggle focus=false filter.buf=0<cr>', { noremap = true })
|
||||
|
||||
|
||||
--[[ onsails/diaglist.nvim ]]
|
||||
-- Открыть интерфейс диагностики
|
||||
vim.keymap.set('n', '<space>dw', '<cmd>lua require(\'diaglist\').open_all_diagnostics()<cr>', { noremap = true })
|
||||
vim.keymap.set('n', '<space>d0', '<cmd>lua require(\'diaglist\').open_buffer_diagnostics()<cr>', { noremap = true })
|
||||
|
||||
|
||||
--[[ noib3/nvim-cokeline ]]
|
||||
-- Переключение вкладок
|
||||
vim.keymap.set('n', '<tab>', '<plug>(cokeline-focus-next)', { noremap = true, silent = true })
|
||||
vim.keymap.set('n', '<s-tab>', '<Plug>(cokeline-focus-prev)', { noremap = true, silent = true })
|
||||
|
||||
|
||||
--[[ neovim/nvim-lspconfig ]]
|
||||
-- Диагностика
|
||||
vim.keymap.set('n', '<space>e', vim.diagnostic.open_float, { noremap = true, silent = true })
|
||||
vim.keymap.set('n', '[d', vim.diagnostic.goto_prev, { noremap = true, silent = true })
|
||||
vim.keymap.set('n', ']d', vim.diagnostic.goto_next, { noremap = true, silent = true })
|
||||
vim.keymap.set('n', '<space>q', vim.diagnostic.setloclist, { noremap = true, silent = true })
|
||||
|
||||
-- Инициализация только после того, как LSP-сервер подключится к текущему буферу
|
||||
lspconfig_on_attach = function(client, bufnr)
|
||||
-- Активация завершения
|
||||
vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
|
||||
-- vim.keymap.set({ 'n', 'v', 't' }, 'F', function() vim.lsp.buf.format { async = true } end, { noremap = true, silent = true, buffer = bufnr })
|
||||
|
||||
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, { noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', 'gd', vim.lsp.buf.definition, { noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', 'K', vim.lsp.buf.hover, { noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', 'gi', vim.lsp.buf.implementation, { noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', '<c-k>', vim.lsp.buf.signature_help, { noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', '<space>wa', vim.lsp.buf.add_workspace_folder, { noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', '<space>wr', vim.lsp.buf.remove_workspace_folder, { noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', '<space>wl', function() print(vim.inspect(vim.lsp.buf.list_workspace_folders())) end,
|
||||
{ noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', '<space>D', vim.lsp.buf.type_definition, { noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', '<space>rn', vim.lsp.buf.rename, { noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', '<space>ca', vim.lsp.buf.code_action, { noremap = true, silent = true, buffer = bufnr })
|
||||
vim.keymap.set('n', 'gr', vim.lsp.buf.references, { noremap = true, silent = true, buffer = bufnr })
|
||||
end
|
||||
|
||||
-- Formatting
|
||||
vim.keymap.set({ 'n', 'v', 't' }, 'F', function()
|
||||
if (vim.bo.filetype == 'nginx') then
|
||||
@@ -65,63 +16,46 @@ vim.keymap.set({ 'n', 'v', 't' }, 'F', function()
|
||||
-- vim.api.nvim_exec('PrettierAsync', false)
|
||||
end
|
||||
end,
|
||||
{ noremap = true, silent = true, buffer = bufnr })
|
||||
{ noremap = true, silent = true, buffer = bufnr }
|
||||
)
|
||||
|
||||
--[[ lewis6991/gitsigns.nvim ]]
|
||||
-- Инициализация только после того, как LSP-сервер подключится к текущему буферу
|
||||
gitsigns_on_attach = function(bufnr)
|
||||
-- Инициализация ярлыка
|
||||
local gs = package.loaded.gitsigns
|
||||
|
||||
-- Навигация
|
||||
vim.keymap.set('n', ']c', function()
|
||||
if vim.wo.diff then return ']c' end
|
||||
vim.schedule(function() gs.next_hunk() end)
|
||||
return '<Ignore>'
|
||||
end, { expr = true, buffer = bufnr })
|
||||
|
||||
-- Навигация
|
||||
vim.keymap.set('n', '[c', function()
|
||||
if vim.wo.diff then return '[c' end
|
||||
vim.schedule(function() gs.prev_hunk() end)
|
||||
return '<Ignore>'
|
||||
end, { expr = true, buffer = bufnr })
|
||||
|
||||
vim.keymap.set('n', '<leader>hs', '<cmd>Gitsigns stage_hunk<cr>', { buffer = bufnr })
|
||||
vim.keymap.set('v', '<leader>hs', '<cmd>Gitsigns stage_hunk<cr>', { buffer = bufnr })
|
||||
vim.keymap.set('n', '<leader>hr', '<cmd>Gitsigns reset_hunk<cr>', { buffer = bufnr })
|
||||
vim.keymap.set('v', '<leader>hr', '<cmd>Gitsigns reset_hunk<cr>', { buffer = bufnr })
|
||||
vim.keymap.set('n', '<leader>hS', gs.stage_buffer, { buffer = bufnr })
|
||||
vim.keymap.set('n', '<leader>hu', gs.undo_stage_hunk, { buffer = bufnr })
|
||||
vim.keymap.set('n', '<leader>hR', gs.reset_buffer, { buffer = bufnr })
|
||||
vim.keymap.set('n', '<leader>hp', gs.preview_hunk, { buffer = bufnr })
|
||||
vim.keymap.set('n', '<leader>hb', function() gs.blame_line { full = true } end, { buffer = bufnr })
|
||||
vim.keymap.set('n', '<leader>tb', gs.toggle_current_line_blame, { buffer = bufnr })
|
||||
vim.keymap.set('n', '<leader>hd', gs.diffthis, { buffer = bufnr })
|
||||
vim.keymap.set('n', '<leader>hD', function() gs.diffthis('~') end, { buffer = bufnr })
|
||||
vim.keymap.set('n', '<leader>td', gs.toggle_deleted, { buffer = bufnr })
|
||||
|
||||
vim.keymap.set('o', 'ih', '<cmd><c-U>Gitsigns select_hunk<cr>', { buffer = bufnr })
|
||||
vim.keymap.set('x', 'ih', '<cmd><c-U>Gitsigns select_hunk<cr>', { buffer = bufnr })
|
||||
end
|
||||
|
||||
|
||||
--[[ nvim-telescope/telescope.nvim ]]
|
||||
-- Инициализация ярлыка
|
||||
local builtin = require('telescope.builtin')
|
||||
|
||||
-- Поиск файла
|
||||
vim.keymap.set('n', '<leader>ff', builtin.find_files, { noremap = true, silent = true })
|
||||
|
||||
-- grep
|
||||
vim.keymap.set('n', '<leader>fg', builtin.live_grep, { noremap = true, silent = true })
|
||||
|
||||
-- Буферы?
|
||||
vim.keymap.set('n', '<leader>fb', builtin.buffers, { noremap = true, silent = true })
|
||||
|
||||
-- Помощь
|
||||
vim.keymap.set('n', '<leader>fh', builtin.help_tags, { noremap = true, silent = true })
|
||||
|
||||
-- gitsigns_on_attach = function(bufnr)
|
||||
-- -- Инициализация ярлыка
|
||||
-- local gs = package.loaded.gitsigns
|
||||
--
|
||||
-- -- Навигация
|
||||
-- vim.keymap.set('n', ']c', function()
|
||||
-- if vim.wo.diff then return ']c' end
|
||||
-- vim.schedule(function() gs.next_hunk() end)
|
||||
-- return '<Ignore>'
|
||||
-- end, { expr = true, buffer = bufnr })
|
||||
--
|
||||
-- -- Навигация
|
||||
-- vim.keymap.set('n', '[c', function()
|
||||
-- if vim.wo.diff then return '[c' end
|
||||
-- vim.schedule(function() gs.prev_hunk() end)
|
||||
-- return '<Ignore>'
|
||||
-- end, { expr = true, buffer = bufnr })
|
||||
--
|
||||
-- vim.keymap.set('n', '<leader>hs', '<cmd>Gitsigns stage_hunk<cr>', { buffer = bufnr })
|
||||
-- vim.keymap.set('v', '<leader>hs', '<cmd>Gitsigns stage_hunk<cr>', { buffer = bufnr })
|
||||
-- vim.keymap.set('n', '<leader>hr', '<cmd>Gitsigns reset_hunk<cr>', { buffer = bufnr })
|
||||
-- vim.keymap.set('v', '<leader>hr', '<cmd>Gitsigns reset_hunk<cr>', { buffer = bufnr })
|
||||
-- vim.keymap.set('n', '<leader>hS', gs.stage_buffer, { buffer = bufnr })
|
||||
-- vim.keymap.set('n', '<leader>hu', gs.undo_stage_hunk, { buffer = bufnr })
|
||||
-- vim.keymap.set('n', '<leader>hR', gs.reset_buffer, { buffer = bufnr })
|
||||
-- vim.keymap.set('n', '<leader>hp', gs.preview_hunk, { buffer = bufnr })
|
||||
-- vim.keymap.set('n', '<leader>hb', function() gs.blame_line { full = true } end, { buffer = bufnr })
|
||||
-- vim.keymap.set('n', '<leader>tb', gs.toggle_current_line_blame, { buffer = bufnr })
|
||||
-- vim.keymap.set('n', '<leader>hd', gs.diffthis, { buffer = bufnr })
|
||||
-- vim.keymap.set('n', '<leader>hD', function() gs.diffthis('~') end, { buffer = bufnr })
|
||||
-- vim.keymap.set('n', '<leader>td', gs.toggle_deleted, { buffer = bufnr })
|
||||
--
|
||||
-- vim.keymap.set('o', 'ih', '<cmd><c-U>Gitsigns select_hunk<cr>', { buffer = bufnr })
|
||||
-- vim.keymap.set('x', 'ih', '<cmd><c-U>Gitsigns select_hunk<cr>', { buffer = bufnr })
|
||||
-- end
|
||||
|
||||
--[[ mfussenegger/nvim-dap ]]
|
||||
vim.keymap.set('n', '<F5>', function() require('dap').continue() end)
|
||||
@@ -147,45 +81,3 @@ vim.keymap.set('n', '<Leader>ds', function()
|
||||
local widgets = require('dap.ui.widgets')
|
||||
widgets.centered_float(widgets.scopes)
|
||||
end)
|
||||
|
||||
|
||||
--[[ windwp/nvim-autopairs ]]
|
||||
-- Переназначение стандартных сочетаний клавиш для "ms-jpq/coq_nvim"
|
||||
--vim.keymap.set('i', '<esc>', [[pumvisible() ? "<c-e><esc>" : "<esc>"]], {expr = true, noremap = true})
|
||||
--vim.keymap.set('i', '<c-c>', [[pumvisible() ? "<c-e><c-c>" : "<c-c>"]], {expr = true, noremap = true})
|
||||
--vim.keymap.set('i', '<tab>', [[pumvisible() ? "<c-n>" : "<tab>"]], {expr = true, noremap = true})
|
||||
--vim.keymap.set('i', '<s-tab>', [[pumvisible() ? "<c-p>" : "<tab>"]], {expr = true, noremap = true})
|
||||
|
||||
_G.PairIT = function()
|
||||
local autopairs = {
|
||||
['('] = ')',
|
||||
['['] = ']',
|
||||
['{'] = '}',
|
||||
['<'] = '>',
|
||||
[ [=[']=] ] = [=[']=],
|
||||
[ [=["]=] ] = [=["]=],
|
||||
}
|
||||
local set_pairs = vim.keymap.set
|
||||
for k, v in pairs(autopairs) do
|
||||
set_pairs('i', k, function()
|
||||
return k .. v .. '<Left>'
|
||||
end, { expr = true, noremap = true })
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
--[[ b3nj5m1n/kommentary ]]
|
||||
vim.keymap.set('n', '<leader>cic', '<Plug>kommentary_line_increase', { noremap = true, silent = true })
|
||||
vim.keymap.set('n', '<leader>ci', '<Plug>kommentary_motion_increase', { noremap = true, silent = true })
|
||||
vim.keymap.set('x', '<leader>ci', '<Plug>kommentary_visual_increase', { noremap = true, silent = true })
|
||||
vim.keymap.set('n', '<leader>cdc', '<Plug>kommentary_line_decrease', { noremap = true, silent = true })
|
||||
vim.keymap.set('n', '<leader>cd', '<Plug>kommentary_motion_decrease', { noremap = true, silent = true })
|
||||
vim.keymap.set('x', '<leader>cd', '<Plug>kommentary_visual_decrease', { noremap = true, silent = true })
|
||||
|
||||
|
||||
--[[ preservim/tagbar ]]
|
||||
vim.keymap.set({ 'n', 'i', 'v', 't' }, '<f8>', '<cmd>TagbarToggle<cr>', { noremap = true, silent = true })
|
||||
|
||||
|
||||
--[[ simrat39/symbols-outline.nvim ]]
|
||||
vim.keymap.set({ 'n', 'i', 'v', 't' }, '<f7>', '<cmd>SymbolsOutline<cr>', { noremap = true, silent = true })
|
||||
|
||||
@@ -1,12 +1,8 @@
|
||||
-- Выход из режима "ВСТАВКА" (insert)
|
||||
vim.keymap.set('i', '<C-i>', '<escape>', {noremap = true, silent = true})
|
||||
-- Offset
|
||||
vim.keymap.set({'i', 'v', 't'}, '<tab>', '>', {noremap = true, silent = true})
|
||||
vim.keymap.set({'i', 'v', 't'}, '<s-tab>', '<', {noremap = true, silent = true})
|
||||
|
||||
-- Быстрый сдвиг текста в режиме 'ВСТАВКА' (insert)
|
||||
-- (надо будет проработать в визуальном режиме на множество строк)
|
||||
vim.keymap.set({'i', 'v', 't'}, '<tab>', '<cmd>><cr>', {noremap = true, silent = true})
|
||||
vim.keymap.set({'i', 'v', 't'}, '<s-tab>', '<cmd><<cr>', {noremap = true, silent = true})
|
||||
|
||||
-- Отключение стрелок
|
||||
-- Disabling arrows
|
||||
vim.keymap.set({'n', 'i', 'v', 't'}, '<left>', '', {noremap = true, silent = true})
|
||||
vim.keymap.set({'n', 'i', 'v', 't'}, '<up>', '', {noremap = true, silent = true})
|
||||
vim.keymap.set({'n', 'i', 'v', 't'}, '<right>', '', {noremap = true, silent = true})
|
||||
@@ -19,6 +15,3 @@ vim.keymap.set({'n', 'i', 'v', 't'}, '<c-left>', '', {noremap = true, silent = t
|
||||
vim.keymap.set({'n', 'i', 'v', 't'}, '<c-up>', '', {noremap = true, silent = true})
|
||||
vim.keymap.set({'n', 'i', 'v', 't'}, '<c-right>', '', {noremap = true, silent = true})
|
||||
vim.keymap.set({'n', 'i', 'v', 't'}, '<c-down>', '', {noremap = true, silent = true})
|
||||
|
||||
-- Быстрое форматирование всего документа
|
||||
vim.keymap.set({'n', 'v', 't'}, '<space>F', '1GVG=<cr>', {noremap = true, silent = true})
|
||||
|
||||
@@ -2,8 +2,13 @@
|
||||
return {
|
||||
'akinsho/bufferline.nvim',
|
||||
enabled = true,
|
||||
lazy = false,
|
||||
priority = 40,
|
||||
lazy = true,
|
||||
event = 'BufReadPre',
|
||||
keys = {
|
||||
{ '<tab>', '<cmd>BufferLineCycleNext<cr>', mode = { 'n' }, desc = 'Move to the next tab', noremap = true, silent = true },
|
||||
{ '<s-tab>', '<cmd>BufferLineCyclePrev<cr>', mode = { 'n' }, desc = 'Move to the previous tab', noremap = true, silent = true },
|
||||
{ '<leader><tab>', '<cmd>lua require("bufferline").go_to(vim.fn.input("Enter tab number: "), true)<cr>', mode = { 'n' }, desc = 'Move to the tab', noremap = true, silent = true },
|
||||
},
|
||||
version = '*',
|
||||
dependencies = {
|
||||
--
|
||||
@@ -12,7 +17,7 @@ return {
|
||||
opts = {
|
||||
options = {
|
||||
themable = true,
|
||||
numbers = 'buffer_id',
|
||||
numbers = 'ordinal',
|
||||
-- close_command = 'bdelete! %d',
|
||||
-- right_mouse_command = 'bdelete! %d',
|
||||
-- left_mouse_command = 'buffer %d',
|
||||
@@ -44,7 +49,7 @@ return {
|
||||
persist_buffer_sort = true,
|
||||
move_wraps_at_ends = false,
|
||||
-- separator_style = 'slant' | 'slope' | 'thick' | 'thin' | { 'any', 'any' },
|
||||
separator_style = 'thin',
|
||||
separator_style = 'default',
|
||||
enforce_regular_tabs = false,
|
||||
always_show_bufferline = true,
|
||||
auto_toggle_bufferline = true,
|
||||
|
||||
@@ -3,6 +3,7 @@ return {
|
||||
'ms-jpq/coq_nvim',
|
||||
enabled = true,
|
||||
lazy = false,
|
||||
priority = 30,
|
||||
branch = 'coq',
|
||||
dependencies = {
|
||||
-- Quickstart configs for Nvim LSP
|
||||
@@ -20,30 +21,3 @@ return {
|
||||
}
|
||||
end,
|
||||
}
|
||||
|
||||
--
|
||||
--[[ {
|
||||
'neovim/nvim-lspconfig',
|
||||
lazy = false,
|
||||
dependencies = {
|
||||
-- Fast as FUCK nvim completion
|
||||
{ 'ms-jpq/coq_nvim', branch = 'coq' },
|
||||
|
||||
-- 9000+ Snippets
|
||||
{ 'ms-jpq/coq.artifacts', branch = 'artifacts' },
|
||||
|
||||
-- Lua & third party sources. Need to **configure separately**
|
||||
{ 'ms-jpq/coq.thirdparty', branch = '3p' }
|
||||
},
|
||||
|
||||
init = function()
|
||||
vim.g.coq_settings = {
|
||||
auto_start = 'shut-up',
|
||||
-- Your COQ settings here
|
||||
}
|
||||
end,
|
||||
|
||||
config = function()
|
||||
-- Your LSP settings here
|
||||
end,
|
||||
} ]]
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
-- Live render workspace diagnostics in quickfix with
|
||||
-- current buf errors on top, buffer diagnostics in loclist
|
||||
-- @todo удалить и заменить на трабл
|
||||
return {
|
||||
'onsails/diaglist.nvim',
|
||||
enabled = true,
|
||||
enabled = false,
|
||||
lazy = true,
|
||||
keys = {
|
||||
{ '<leader><f3>', '<cmd>lua require(\'diaglist\').open_all_diagnostics()<cr>', mode = { 'n', 'i', 'v', 't' }, desc = 'Open all diagnostics (diaglist)', noremap = true, silent = true },
|
||||
},
|
||||
opts = {
|
||||
debug = false,
|
||||
debounce_ms = 150
|
||||
|
||||
@@ -2,5 +2,13 @@
|
||||
return {
|
||||
'b3nj5m1n/kommentary',
|
||||
enabled = true,
|
||||
lazy = true
|
||||
lazy = true,
|
||||
keys = {
|
||||
{ 'gcc', '<Plug>kommentary_line_default', mode = 'n', desc = 'Comment', noremap = true, silent = true },
|
||||
{ 'gc', '<Plug>kommentary_motion_default', mode = 'n', desc = 'Comment', noremap = true, silent = true },
|
||||
{ 'gc', '<Plug>kommentary_visual_default<C-c>', mode = 'v', desc = 'Comment', noremap = true, silent = true },
|
||||
},
|
||||
config = function()
|
||||
vim.g.kommentary_create_default_mappings = false
|
||||
end
|
||||
}
|
||||
|
||||
@@ -134,7 +134,9 @@ vim.lsp.config(
|
||||
vim.lsp.enable('jsonls')
|
||||
|
||||
-- Инициализация 'luals/lua-language-server' (LSP-сервер для Lua)
|
||||
--[[ vim.lsp.config.lua_ls.setup({
|
||||
vim.lsp.config(
|
||||
'lua_ls',
|
||||
{
|
||||
settings = {
|
||||
Lua = {
|
||||
runtime = {
|
||||
@@ -158,6 +160,8 @@ vim.lsp.enable('jsonls')
|
||||
on_attach = lspconfig_on_attach,
|
||||
coq.lsp_ensure_capabilities(),
|
||||
capabilities = capabilities
|
||||
})]]
|
||||
}
|
||||
)
|
||||
vim.lsp.enable('lua_ls')
|
||||
end,
|
||||
}
|
||||
|
||||
@@ -61,25 +61,7 @@ return {
|
||||
fmt = nil,
|
||||
on_click = nil,
|
||||
},
|
||||
lualine_b = {
|
||||
'branch',
|
||||
'diff',
|
||||
{
|
||||
'diagnostics',
|
||||
sources = { 'coc' },
|
||||
sections = { 'error', 'warn', 'info', 'hint' },
|
||||
diagnostics_color = {
|
||||
error = 'DiagnosticError',
|
||||
warn = 'DiagnosticWarn',
|
||||
info = 'DiagnosticInfo',
|
||||
hint = 'DiagnosticHint',
|
||||
},
|
||||
symbols = {error = 'E', warn = 'W', info = 'I', hint = 'H'},
|
||||
colored = true,
|
||||
update_in_insert = false,
|
||||
always_visible = false
|
||||
}
|
||||
},
|
||||
lualine_b = {'branch', 'diff'},
|
||||
lualine_c = {'filename', 'lsp_progress'},
|
||||
lualine_x = { FugitiveStatusline, 'encoding', 'fileformat', 'filetype'},
|
||||
-- lualine_x = { FugitiveHead, 'encoding', 'fileformat', 'filetype'},
|
||||
@@ -101,5 +83,23 @@ return {
|
||||
'lazy',
|
||||
'nvim-dap-ui',
|
||||
'trouble',
|
||||
'neo-tree'}
|
||||
'neo-tree'
|
||||
},
|
||||
-- config = function()
|
||||
-- local trouble = require("trouble")
|
||||
-- local symbols = trouble.statusline({
|
||||
-- mode = "lsp_document_symbols",
|
||||
-- groups = {},
|
||||
-- title = false,
|
||||
-- filter = { range = true },
|
||||
-- format = "{kind_icon}{symbol.name:Normal}",
|
||||
-- -- The following line is needed to fix the background color
|
||||
-- -- Set it to the lualine section you want to use
|
||||
-- hl_group = "lualine_c_normal",
|
||||
-- })
|
||||
-- table.insert(opts.sections.lualine_c, {
|
||||
-- symbols.get,
|
||||
-- cond = symbols.has,
|
||||
-- })
|
||||
-- end
|
||||
}
|
||||
|
||||
@@ -3,8 +3,10 @@
|
||||
return {
|
||||
'nvim-neo-tree/neo-tree.nvim',
|
||||
enabled = true,
|
||||
lazy = false,
|
||||
priority = 60,
|
||||
lazy = true,
|
||||
keys = {
|
||||
{ '<f1>', '<cmd>Neotree toggle<cr>', mode = { 'n', 'i', 'v', 't' }, desc = 'NeoTree toggle', noremap = true, silent = true },
|
||||
},
|
||||
branch = 'v3.x',
|
||||
dependencies = {
|
||||
-- Lua functions
|
||||
|
||||
@@ -4,7 +4,5 @@ return {
|
||||
'tummetott/reticle.nvim',
|
||||
enabled = true,
|
||||
lazy = true,
|
||||
event = 'VeryLazy',
|
||||
opts = {
|
||||
},
|
||||
event = 'VeryLazy'
|
||||
}
|
||||
|
||||
@@ -2,8 +2,10 @@
|
||||
return {
|
||||
'preservim/tagbar',
|
||||
enabled = true,
|
||||
lazy = false,
|
||||
priority = 40,
|
||||
lazy = true,
|
||||
keys = {
|
||||
{ '<f2>', '<cmd>TagbarToggle<cr>', mode = { 'n', 'i', 'v', 't' }, desc = 'Tagbar toggle', noremap = true, silent = true },
|
||||
},
|
||||
dependencies = {
|
||||
-- An enhanced ctags compatible index generator written in pure PHP
|
||||
{ 'vim-php/phpctags' },
|
||||
|
||||
@@ -4,7 +4,12 @@ return {
|
||||
'nvim-telescope/telescope.nvim',
|
||||
enabled = true,
|
||||
lazy = true,
|
||||
tag = 'v0.2.0',
|
||||
keys = {
|
||||
{ '<c-f>', '<cmd>Telescope find_files', mode = { 'n', 'i', 'v', 't' }, desc = 'Telescope find', noremap = true, silent = true },
|
||||
{ '<c-F>', '<cmd>Telescope live_grep', mode = { 'n', 'i', 'v', 't' }, desc = 'Telescope grep', noremap = true, silent = true },
|
||||
{ '<leader><s-tab>', '<cmd>Telescope buffers', mode = { 'n', 'i', 'v', 't' }, desc = 'Telescope buffers', noremap = true, silent = true },
|
||||
{ '<leader>?', '<cmd>Telescope help_tags', mode = { 'n', 'i', 'v', 't' }, desc = 'Telescope help', noremap = true, silent = true },
|
||||
},
|
||||
dependencies = {
|
||||
-- Functions for Telescope
|
||||
{ 'nvim-lua/plenary.nvim' },
|
||||
@@ -13,7 +18,7 @@ return {
|
||||
{ 'nvim-telescope/telescope-dap.nvim' }
|
||||
},
|
||||
opts = {
|
||||
exteinsiions = {
|
||||
exteinsions = {
|
||||
dap = {}
|
||||
}
|
||||
},
|
||||
|
||||
@@ -4,112 +4,11 @@
|
||||
return {
|
||||
'folke/trouble.nvim',
|
||||
enabled = true,
|
||||
lazy = false,
|
||||
priority = 20,
|
||||
dependencies = {
|
||||
-- Nvim Treesitter configurations and abstraction layer
|
||||
{ 'nvim-treesitter/nvim-treesitter' },
|
||||
|
||||
-- Provides Nerd Font icons (glyphs) for use by neovim plugins
|
||||
{ 'nvim-tree/nvim-web-devicons' }
|
||||
},
|
||||
opts = {
|
||||
position = 'bottom', -- position of the list can be: bottom, top, left, right
|
||||
height = 10, -- height of the trouble list when position is top or bottom
|
||||
width = 50, -- width of the list when position is left or right
|
||||
icons = true, -- use devicons for filenames
|
||||
mode = 'workspace_diagnostics', -- 'workspace_diagnostics', 'document_diagnostics', 'quickfix', 'lsp_references', 'loclist'
|
||||
fold_open = '', -- icon used for open folds
|
||||
fold_closed = '', -- icon used for closed folds
|
||||
group = true, -- group results by file
|
||||
padding = true, -- add an extra new line on top of the list
|
||||
action_keys = {
|
||||
-- key mappings for actions in the trouble list
|
||||
-- map to {} to remove a mapping, for example:
|
||||
-- close = {},
|
||||
close = 'q', -- close the list
|
||||
cancel = '<esc>', -- cancel the preview and get back to your last window / buffer / cursor
|
||||
refresh = 'r', -- manually refresh
|
||||
jump = { '<cr>', '<tab>' }, -- jump to the diagnostic or open / close folds
|
||||
open_split = { '<c-x>' }, -- open buffer in new split
|
||||
open_vsplit = { '<c-v>' }, -- open buffer in new vsplit
|
||||
open_tab = { '<c-t>' }, -- open buffer in new tab
|
||||
jump_close = { 'o' }, -- jump to the diagnostic and close the list
|
||||
toggle_mode = 'm', -- toggle between 'workspace' and 'document' diagnostics mode
|
||||
toggle_preview = 'P', -- toggle auto_preview
|
||||
hover = 'K', -- opens a small popup with the full multiline message
|
||||
preview = 'p', -- preview the diagnostic location
|
||||
close_folds = { 'zM', 'zm' }, -- close all folds
|
||||
open_folds = { 'zR', 'zr' }, -- open all folds
|
||||
toggle_fold = { 'zA', 'za' }, -- toggle fold of current file
|
||||
previous = 'k', -- previous item
|
||||
next = 'j' -- next item
|
||||
},
|
||||
indent_lines = true, -- add an indent guide below the fold icons
|
||||
auto_open = false, -- automatically open the list when you have diagnostics
|
||||
auto_close = false, -- automatically close the list when you have no diagnostics
|
||||
auto_preview = true, -- automatically preview the location of the diagnostic. <esc> to close preview and go back to last window
|
||||
auto_fold = false, -- automatically fold a file trouble list at creation
|
||||
auto_jump = { 'lsp_definitions' }, -- for the given modes, automatically jump if there is only a single result
|
||||
signs = {
|
||||
-- icons / text used for a diagnostic
|
||||
error = '',
|
||||
warning = '',
|
||||
hint = '',
|
||||
information = '',
|
||||
other = ''
|
||||
},
|
||||
use_diagnostic_signs = false -- enabling this will use the signs defined in your lsp client
|
||||
},
|
||||
config = function()
|
||||
-- Initializing Telescope
|
||||
local telescope = require('telescope')
|
||||
local telescope_actions = require('telescope.actions')
|
||||
local telescope_open = require('trouble.sources.telescope').open
|
||||
|
||||
-- Use this to add more results without clearing the trouble list
|
||||
local add_to_trouble = require('trouble.sources.telescope').add
|
||||
|
||||
telescope.setup({
|
||||
defaults = {
|
||||
mappings = {
|
||||
i = { ['<c-t>'] = telescope_open },
|
||||
n = { ['<c-t>'] = telescope_open },
|
||||
},
|
||||
},
|
||||
})
|
||||
end,
|
||||
lazy = true,
|
||||
cmd = 'Trouble',
|
||||
keys = {
|
||||
{
|
||||
'<leader>xx',
|
||||
'<cmd>Trouble diagnostics toggle<cr>',
|
||||
desc = 'Diagnostics (Trouble)',
|
||||
},
|
||||
{
|
||||
'<leader>xX',
|
||||
'<cmd>Trouble diagnostics toggle filter.buf=0<cr>',
|
||||
desc = 'Buffer Diagnostics (Trouble)',
|
||||
},
|
||||
{
|
||||
'<leader>cs',
|
||||
'<cmd>Trouble symbols toggle focus=false<cr>',
|
||||
desc = 'Symbols (Trouble)',
|
||||
},
|
||||
{
|
||||
'<leader>cl',
|
||||
'<cmd>Trouble lsp toggle focus=false win.position=right<cr>',
|
||||
desc = 'LSP Definitions / references / ... (Trouble)',
|
||||
},
|
||||
{
|
||||
'<leader>xL',
|
||||
'<cmd>Trouble loclist toggle<cr>',
|
||||
desc = 'Location List (Trouble)',
|
||||
},
|
||||
{
|
||||
'<leader>xQ',
|
||||
'<cmd>Trouble qflist toggle<cr>',
|
||||
desc = 'Quickfix List (Trouble)',
|
||||
},
|
||||
}
|
||||
keys = {
|
||||
{ '<f3>', '<cmd>Trouble diagnostics toggle<cr>', mode = { 'n', 'i', 'v', 't' }, desc = 'Diagnostics (Trouble)', noremap = true, silent = true },
|
||||
},
|
||||
opts = {},
|
||||
config = function() end
|
||||
}
|
||||
|
||||
@@ -29,9 +29,9 @@ require('lazy').setup({
|
||||
|
||||
-- Configure any other settings here. See the documentation for more details.
|
||||
-- colorscheme that will be used when installing plugins.
|
||||
install = {
|
||||
colorscheme = { 'flexoki' }
|
||||
},
|
||||
-- install = {
|
||||
-- colorscheme = { 'flexoki' }
|
||||
-- },
|
||||
|
||||
-- Automatically check for plugin updates
|
||||
checker = {
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
-- Leader button
|
||||
vim.g.mapleader = " "
|
||||
vim.g.maplocalleader = "\\"
|
||||
vim.g.mapleader = ' '
|
||||
vim.g.maplocalleader = '\\'
|
||||
|
||||
-- Использовать системный буфер обмена
|
||||
vim.opt.clipboard = 'unnamedplus'
|
||||
|
||||
56
lua/trouble.lua
Normal file
56
lua/trouble.lua
Normal file
@@ -0,0 +1,56 @@
|
||||
-- 🚦 A pretty diagnostics, references, telescope results,
|
||||
-- quickfix and location list to help you solve
|
||||
-- all the trouble your code is causing
|
||||
return {
|
||||
'folke/trouble.nvim',
|
||||
enabled = true,
|
||||
lazy = false,
|
||||
cmd = 'Trouble',
|
||||
keys = {
|
||||
{ '<f3>', '<cmd>Trouble diagnostics toggle<cr>', mode = { 'n', 'i', 'v', 't' }, desc = 'Diagnostics (Trouble)', noremap = true, silent = true },
|
||||
},
|
||||
dependencies = {
|
||||
-- Nvim Treesitter configurations and abstraction layer
|
||||
{ 'nvim-treesitter/nvim-treesitter' },
|
||||
|
||||
-- Provides Nerd Font icons (glyphs) for use by neovim plugins
|
||||
{ 'nvim-tree/nvim-web-devicons' }
|
||||
},
|
||||
opts = {
|
||||
|
||||
auto_close = true, -- auto close when there are no items
|
||||
auto_open = true, -- auto open when there are items
|
||||
position = 'bottom', -- position of the list can be: bottom, top, left, right
|
||||
auto_preview = true, -- automatically open preview when on an item
|
||||
auto_refresh = true, -- auto refresh when open
|
||||
auto_jump = false, -- auto jump to the item when there's only one
|
||||
focus = false, -- Focus the window when opened
|
||||
restore = true, -- restores the last location in the list when opening
|
||||
follow = true, -- Follow the current item
|
||||
indent_guides = true, -- show indent guides
|
||||
max_items = 200, -- limit number of items that can be displayed per section
|
||||
multiline = true, -- render multi-line messages
|
||||
pinned = false, -- When pinned, the opened trouble window will be bound to the current buffer
|
||||
warn_no_results = true, -- show a warning when there are no results
|
||||
open_no_results = false, -- open the trouble window when there are no results
|
||||
-- use_diagnostic_signs = false -- enabling this will use the signs defined in your lsp client
|
||||
},
|
||||
config = function()
|
||||
-- Initializing Telescope
|
||||
local telescope = require('telescope')
|
||||
local telescope_actions = require('telescope.actions')
|
||||
local telescope_open = require('trouble.sources.telescope').open
|
||||
|
||||
-- Use this to add more results without clearing the trouble list
|
||||
local add_to_trouble = require('trouble.sources.telescope').add
|
||||
|
||||
telescope.setup({
|
||||
defaults = {
|
||||
mappings = {
|
||||
i = { ['<c-t>'] = telescope_open },
|
||||
n = { ['<c-t>'] = telescope_open },
|
||||
},
|
||||
},
|
||||
})
|
||||
end
|
||||
}
|
||||
Reference in New Issue
Block a user