diff options
| -rw-r--r-- | .config/nvim/init.lua | 48 | ||||
| -rw-r--r-- | .config/nvim/nvim-pack-lock.json | 17 | ||||
| -rw-r--r-- | update.sh | 1 |
3 files changed, 46 insertions, 20 deletions
diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index 78d754a..e39405d 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -13,7 +13,7 @@ vim.o.shiftwidth = 0 vim.o.expandtab = true vim.o.undofile = true vim.o.scrolloff = 3 -vim.o.winborder = "none" +vim.o.winborder = "single" vim.o.mouse = "" vim.o.completeopt = "menu,menuone,noselect" @@ -34,7 +34,7 @@ end require("mini.pick").setup({ window = { config = { - border = "none" + border = "single" }, }, }) @@ -65,6 +65,48 @@ vim.keymap.set("n", "<leader>s", function() print("no files to swap to") end) +local function get_symbols(kind) + local bufnr = vim.api.nvim_get_current_buf() + + local clients = vim.lsp.get_clients({ + bufnr = bufnr, + }) + + local client = clients[1] + + client:request( + "textDocument/documentSymbol", + {textDocument=vim.lsp.util.make_text_document_params()}, + function(_, funcs) + local list = {} + for _, func in ipairs(funcs) do + if func.kind == kind then + table.insert(list, { + bufnr = bufnr, + lnum = func.range.start.line + 1, + end_lnum = func.range["end"].line + 1, + col = func.range.start.character, + end_col = func.range.start.character, + -- nr = i, + text = func.name .. "()", + }) + end + end + table.sort(list, function(a, b) + return a.lnum < b.lnum + end) + vim.fn.setqflist(list) + + vim.cmd[[cope]] + vim.cmd[[cfirst]] + end + ) +end + +vim.keymap.set("n", "<leader>o", function() + get_symbols(12) +end) + vim.lsp.enable({"lua_ls", "clangd", "ols"}) vim.diagnostic.config({ virtual_text = true, @@ -89,4 +131,4 @@ vim.api.nvim_create_autocmd("LspAttach", { vim.cmd.colorscheme("mini-theme") -require('vim._extui').enable({}) +-- require('vim._extui').enable({}) diff --git a/.config/nvim/nvim-pack-lock.json b/.config/nvim/nvim-pack-lock.json deleted file mode 100644 index b67f075..0000000 --- a/.config/nvim/nvim-pack-lock.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "plugins": { - "mini.pick": { - "rev": "b435139", - "src": "https://github.com/nvim-mini/mini.pick" - }, - "nvim-lspconfig": { - "rev": "07f4e93de92e8d4ea7ab99602e3a8c9ac0fb778a", - "src": "https://github.com/neovim/nvim-lspconfig" - }, - "nvim-treesitter": { - "rev": "17885756e63df73ed90db62e4630f744ceda6514", - "src": "https://github.com/nvim-treesitter/nvim-treesitter", - "version": "'main'" - } - } -}
\ No newline at end of file @@ -11,3 +11,4 @@ cp ~/git/dmenu/config.h ./dmenu_config.h cp -r ~/.config/nvim .config rm -rf .config/nvim/plugin rm -rf .config/nvim/live-server +rm -rf .config/nvim/nvim-pack-lock.json |
