Aded some keybinds and plugins
This commit is contained in:
parent
394cfa6376
commit
790032eb3b
4 changed files with 93 additions and 7 deletions
16
lua/custom/keybindings.lua
Normal file
16
lua/custom/keybindings.lua
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
-- Custom Keybinds.
|
||||
|
||||
vim.keymap.set('i', 'jk', '<Esc>', { desc = 'escape' })
|
||||
vim.keymap.set('i', 'kj', '<Esc>', { desc = 'escape' })
|
||||
|
||||
-- Перемещение между буферами
|
||||
vim.keymap.set('n', '<Tab>', '<Cmd>BufferLineCycleNext<CR>')
|
||||
vim.keymap.set('n', '<S-Tab>', '<Cmd>BufferLineCyclePrev<CR>')
|
||||
|
||||
-- Закрыть буфер
|
||||
vim.keymap.set('n', '<leader>bd', '<Cmd>Bdelete!<CR>')
|
||||
|
||||
-- Переход к буферу по номеру (например, Alt+1, Alt+2...)
|
||||
for i = 1, 9 do
|
||||
vim.keymap.set('n', '<M-' .. i .. '>', '<Cmd>BufferLineGoToBuffer ' .. i .. '<CR>')
|
||||
end
|
||||
|
|
@ -2,4 +2,68 @@
|
|||
-- I promise not to create any merge conflicts in this directory :)
|
||||
--
|
||||
-- See the kickstart.nvim README for more information
|
||||
return {}
|
||||
return {
|
||||
{
|
||||
'akinsho/bufferline.nvim',
|
||||
dependencies = 'nvim-tree/nvim-web-devicons',
|
||||
|
||||
event = 'VeryLazy',
|
||||
keys = {
|
||||
{ '<leader>bp', '<Cmd>BufferLineTogglePin<CR>', desc = 'Toggle Pin' },
|
||||
{ '<leader>bP', '<Cmd>BufferLineGroupClose ungrouped<CR>', desc = 'Delete Non-Pinned Buffers' },
|
||||
{ '<leader>br', '<Cmd>BufferLineCloseRight<CR>', desc = 'Delete Buffers to the Right' },
|
||||
{ '<leader>bl', '<Cmd>BufferLineCloseLeft<CR>', desc = 'Delete Buffers to the Left' },
|
||||
{ '<S-h>', '<cmd>BufferLineCyclePrev<cr>', desc = 'Prev Buffer' },
|
||||
{ '<S-l>', '<cmd>BufferLineCycleNext<cr>', desc = 'Next Buffer' },
|
||||
{ '[b', '<cmd>BufferLineCyclePrev<cr>', desc = 'Prev Buffer' },
|
||||
{ ']b', '<cmd>BufferLineCycleNext<cr>', desc = 'Next Buffer' },
|
||||
{ '[B', '<cmd>BufferLineMovePrev<cr>', desc = 'Move buffer prev' },
|
||||
{ ']B', '<cmd>BufferLineMoveNext<cr>', desc = 'Move buffer next' },
|
||||
},
|
||||
opts = {
|
||||
options = {
|
||||
-- stylua: ignore
|
||||
close_command = function(n) Snacks.bufdelete(n) end,
|
||||
-- stylua: ignore
|
||||
right_mouse_command = function(n) Snacks.bufdelete(n) end,
|
||||
diagnostics = 'nvim_lsp',
|
||||
always_show_bufferline = false,
|
||||
diagnostics_indicator = function(_, _, diag)
|
||||
local icons = LazyVim.config.icons.diagnostics
|
||||
local ret = (diag.error and icons.Error .. diag.error .. ' ' or '') .. (diag.warning and icons.Warn .. diag.warning or '')
|
||||
return vim.trim(ret)
|
||||
end,
|
||||
offsets = {
|
||||
{
|
||||
filetype = 'neo-tree',
|
||||
text = 'Neo-tree',
|
||||
highlight = 'Directory',
|
||||
text_align = 'left',
|
||||
},
|
||||
{
|
||||
filetype = 'snacks_layout_box',
|
||||
},
|
||||
},
|
||||
show_buffer_icons = true,
|
||||
color_icons = true,
|
||||
},
|
||||
},
|
||||
config = function(_, opts)
|
||||
require('bufferline').setup(opts)
|
||||
-- Fix bufferline when restoring a session
|
||||
vim.api.nvim_create_autocmd({ 'BufAdd', 'BufDelete' }, {
|
||||
callback = function()
|
||||
vim.schedule(function()
|
||||
pcall(nvim_bufferline)
|
||||
end)
|
||||
end,
|
||||
})
|
||||
end,
|
||||
},
|
||||
{
|
||||
'numToStr/Comment.nvim',
|
||||
opts = {
|
||||
-- add any options here
|
||||
},
|
||||
},
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,6 +18,12 @@ return {
|
|||
window = {
|
||||
mappings = {
|
||||
['\\'] = 'close_window',
|
||||
['<C-cr>'] = {
|
||||
'open',
|
||||
config = {
|
||||
open_command = 'tabnew', -- Альтернативный вариант параметра
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue