This commit is contained in:
2022-07-28 18:11:27 +02:00
parent 57f32cb47a
commit cc3e659086
6 changed files with 71 additions and 26 deletions

View File

@@ -33,15 +33,6 @@ vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
}
)
local saga = require 'lspsaga'
saga.init_lsp_saga({
-- symbols in winbar
symbol_in_winbar = true,
winbar_file_format = function()
return vim.fn.expand("%=%m %f")
end,
})
-- symbols for autocomplete
vim.lsp.protocol.CompletionItemKind = {
"  (Text) ",

View File

@@ -0,0 +1,58 @@
local saga = require 'lspsaga'
saga.init_lsp_saga({
-- symbols in winbar
symbol_in_winbar = {
enable = true,
click_support = true,
show_file = true,
in_custom = true,
},
})
local function get_file_name(include_path)
local file_name = require('lspsaga.symbolwinbar').get_file_name()
if vim.fn.bufname '%' == '' then return '' end
if include_path == false then return file_name end
-- Else if include path: ./lsp/saga.lua -> lsp > saga.lua
local sep = vim.loop.os_uname().sysname == 'Windows' and '\\' or '/'
local path_list = vim.split(string.gsub(vim.fn.expand '%:~:.:h', '%%', ''), sep)
local file_path = ''
for _, cur in ipairs(path_list) do
file_path = (cur == '.' or cur == '~') and '' or
file_path .. cur .. ' ' .. '%#LspSagaWinbarSep#>%*' .. ' %*'
end
return file_path .. file_name
end
local function config_winbar()
local exclude = {
['teminal'] = true,
['toggleterm'] = true,
['prompt'] = true,
['NvimTree'] = true,
['help'] = true,
} -- Ignore float windows and exclude filetype
if vim.api.nvim_win_get_config(0).zindex or exclude[vim.bo.filetype] then
vim.wo.winbar = ''
else
local ok, lspsaga = pcall(require, 'lspsaga.symbolwinbar')
local sym
if ok then sym = lspsaga.get_symbol_node() end
local win_val = ''
win_val = get_file_name(true) -- set to true to include path
if sym ~= nil then win_val = win_val .. sym end
vim.wo.winbar = win_val
end
end
local events = { 'BufEnter', 'BufWinEnter', 'CursorMoved' }
vim.api.nvim_create_autocmd(events, {
pattern = '*',
callback = function() config_winbar() end,
})
vim.api.nvim_create_autocmd('User', {
pattern = 'LspsagaUpdateSymbol',
callback = function() config_winbar() end,
})

View File

@@ -1,24 +1,25 @@
local Remap = require("halfdan.keymap")
local nnoremap = Remap.nnoremap
local builtin = require("telescope.builtin")
nnoremap("<leader>ps", function()
require('telescope.builtin').grep_string({ search = vim.fn.input("Grep For > ")})
builtin.grep_string({ search = vim.fn.input("Grep For > ")})
end)
nnoremap("<C-p>", function()
require('telescope.builtin').git_files()
builtin.git_files()
end)
nnoremap("<Leader>pf", function()
require('telescope.builtin').find_files()
builtin.find_files()
end)
nnoremap("<leader>pw", function()
require('telescope.builtin').grep_string { search = vim.fn.expand("<cword>") }
builtin.grep_string { search = vim.fn.expand("<cword>") }
end)
nnoremap("<leader>pb", function()
require('telescope.builtin').buffers()
builtin.buffers()
end)
nnoremap("<leader>vh", function()
require('telescope.builtin').help_tags()
builtin.help_tags()
end)
-- Telescope