update nvim plugins
This commit is contained in:
@ -29,12 +29,36 @@ return {
|
||||
|
||||
local opts = { silent = true, noremap = true }
|
||||
|
||||
local function git_branch()
|
||||
local branch = vim.trim(vim.fn.system('git branch --show-current 2>/dev/null'))
|
||||
if vim.v.shell_error ~= 0 or branch == '' then return nil end
|
||||
return branch
|
||||
end
|
||||
|
||||
local function session_save()
|
||||
local branch = git_branch()
|
||||
if branch then
|
||||
vim.cmd('AutoSession save ' .. branch)
|
||||
else
|
||||
vim.cmd('AutoSession save')
|
||||
end
|
||||
end
|
||||
|
||||
local function session_restore()
|
||||
local branch = git_branch()
|
||||
if branch then
|
||||
vim.cmd('AutoSession restore ' .. branch)
|
||||
else
|
||||
vim.cmd('AutoSession restore')
|
||||
end
|
||||
end
|
||||
|
||||
local keymap = vim.keymap
|
||||
keymap.set('n', '<leader>ss', '<cmd>SessionSave<cr>', opts)
|
||||
keymap.set('n', '<leader>sq', '<cmd>SessionSave<cr><cmd>wa<cr><cmd>qa<cr>', opts)
|
||||
keymap.set('n', '<leader>sl', '<cmd>SessionSearch<cr>', opts)
|
||||
keymap.set('n', '<leader>sr', '<cmd>SessionRestore<cr>', opts)
|
||||
keymap.set('n', '<leader>sd', '<cmd>Autosession delete<cr>', opts)
|
||||
keymap.set('n', '<leader>ss', session_save, opts)
|
||||
keymap.set('n', '<leader>sq', function() session_save(); vim.cmd('wa | qa') end, opts)
|
||||
keymap.set('n', '<leader>sl', '<cmd>AutoSession search<cr>', opts)
|
||||
keymap.set('n', '<leader>sr', session_restore, opts)
|
||||
keymap.set('n', '<leader>sd', '<cmd>AutoSession delete<cr>', opts)
|
||||
|
||||
local function named_save()
|
||||
vim.ui.input({ prompt = 'Enter Session name: ' }, function(input)
|
||||
|
||||
@ -85,7 +85,7 @@ return {
|
||||
-- Explicitly enable all mason-managed servers.
|
||||
-- This is belt-and-suspenders alongside mason-lspconfig's automatic_enable,
|
||||
-- ensuring servers start regardless of mason-lspconfig version.
|
||||
vim.lsp.enable({ 'lua_ls', 'html', 'cssls', 'bashls', 'ts_ls', 'eslint' })
|
||||
vim.lsp.enable({ 'lua_ls', 'html', 'cssls', 'bashls', 'ts_ls', 'eslint', 'tailwindcss' })
|
||||
|
||||
-- hyprls: not managed by mason, enable manually
|
||||
vim.lsp.config('hyprls', {
|
||||
|
||||
@ -32,7 +32,8 @@ return {
|
||||
-- 'emmet_ls',
|
||||
'bashls',
|
||||
'ts_ls',
|
||||
'eslint-lsp',
|
||||
'eslint',
|
||||
'tailwindcss',
|
||||
},
|
||||
})
|
||||
|
||||
|
||||
@ -33,7 +33,22 @@ return {
|
||||
|
||||
local keymap = vim.keymap
|
||||
local fmt_func = function()
|
||||
vim.lsp.buf.format({ async = true })
|
||||
local null_ls_active = false
|
||||
for _, client in ipairs(vim.lsp.get_clients({ bufnr = 0 })) do
|
||||
if client.name == "null-ls" then
|
||||
null_ls_active = true
|
||||
break
|
||||
end
|
||||
end
|
||||
vim.lsp.buf.format({
|
||||
async = true,
|
||||
filter = function(client)
|
||||
if null_ls_active then
|
||||
return client.name == "null-ls"
|
||||
end
|
||||
return true
|
||||
end,
|
||||
})
|
||||
end
|
||||
keymap.set('n', '<leader>ii', fmt_func, { noremap = true, silent = true })
|
||||
|
||||
|
||||
@ -26,7 +26,7 @@ return {
|
||||
local keymap = vim.keymap
|
||||
local builtin = require('telescope.builtin')
|
||||
|
||||
keymap.set('n', '<leader>ff', builtin.find_files, opts)
|
||||
keymap.set('n', '<leader>ff', function() builtin.find_files({ hidden = true }) end, opts)
|
||||
keymap.set('n', '<leader>fh', builtin.oldfiles, opts)
|
||||
keymap.set('n', '<leader>fs', builtin.live_grep, opts)
|
||||
keymap.set('n', '<leader>fc', builtin.grep_string, opts)
|
||||
|
||||
Reference in New Issue
Block a user