From b4b2660e56309c73d28bf76429268b66abb68d97 Mon Sep 17 00:00:00 2001 From: Kyren223 Date: Sat, 6 Sep 2025 18:21:53 +0300 Subject: Move everything to extra and then allow project to set commands to execute --- .config/nvim/lsp/clangd.lua | 97 --------------------------------------------- 1 file changed, 97 deletions(-) (limited to '.config/nvim/lsp/clangd.lua') diff --git a/.config/nvim/lsp/clangd.lua b/.config/nvim/lsp/clangd.lua index 1c4c7cd..a50cd70 100644 --- a/.config/nvim/lsp/clangd.lua +++ b/.config/nvim/lsp/clangd.lua @@ -57,96 +57,6 @@ local function symbol_info() end, bufnr) end -local function compile_project(command) - return function() - local x = 2 - local y = 1 - local filter = function(win) - return vim.api.nvim_win_is_valid(win) and vim.api.nvim_win_get_config(win).relative == '' - end - - local current = vim.api.nvim_get_current_win() - if not filter(current) then - return - end - local pos = vim.api.nvim_win_get_position(current) - local is_build = nil - if pos[x] == 0 then - is_build = function(pos) - return pos ~= 0 - end - else - is_build = function(pos) - return pos == 0 - end - end - -- vim.notify('Current window: ' .. vim.inspect(current), vim.log.levels.INFO) - - local windows = vim.tbl_filter(filter, vim.api.nvim_list_wins()) - -- vim.notify('Valid windows: ' .. vim.inspect(windows), vim.log.levels.INFO) - - local build_win = -1 - for _, win in ipairs(windows) do - local pos = vim.api.nvim_win_get_position(win) - -- vim.notify('Window id: ' .. vim.inspect(win) .. ' Window pos: ' .. vim.inspect(pos), vim.log.levels.INFO) - -- vim.notify( - -- 'is build: ' .. vim.inspect(is_build(pos[1])) .. ' y == 0: ' .. vim.inspect(pos[2] == 0), - -- vim.log.levels.INFO - -- ) - if is_build(pos[x]) and pos[y] == 0 then - build_win = win - -- vim.notify('SET BUILD_WIN: ' .. vim.inspect(build_win), vim.log.levels.INFO) - end - end - - if build_win == -1 then - vim.cmd('botright vsplit') - -- vim.cmd('vertical resize ' .. math.floor(vim.o.columns * 0.395)) - -- vim.cmd('vertical resize ' .. math.floor(vim.o.columns * 0.46)) - build_win = vim.api.nvim_get_current_win() - -- vim.notify('SET BUILD_WIN: ' .. vim.inspect(build_win), vim.log.levels.INFO) - end - - if not filter(build_win) then - return - end - -- local build_pos = vim.api.nvim_win_get_position(build_win) - -- vim.notify( - -- 'Build ID: ' .. vim.inspect(build_win) .. ' Build pos: ' .. vim.inspect(build_pos), - -- vim.log.levels.INFO - -- ) - - vim.api.nvim_set_current_win(build_win) - - local build_buf = vim.api.nvim_win_get_buf(build_win) - if vim.api.nvim_win_get_buf(current) == BuildTerminalBuf then - -- NOTE(kyren): switch buffers - vim.api.nvim_win_set_buf(current, build_buf) - end - - local old_terminal = BuildTerminalBuf - BuildTerminalBuf = vim.api.nvim_create_buf(false, true) - vim.api.nvim_buf_call(BuildTerminalBuf, function() - vim.fn.termopen(command, vim.empty_dict()) - end) - vim.api.nvim_win_set_buf(build_win, BuildTerminalBuf) - - if old_terminal then - vim.api.nvim_buf_delete(old_terminal, { force = true }) - end - - vim.api.nvim_set_current_win(current) - end -end - -vim.api.nvim_create_user_command('CompileClose', function() - if BuildTerminalBuf ~= nil and vim.api.nvim_buf_is_valid(BuildTerminalBuf) then - vim.api.nvim_buf_delete(BuildTerminalBuf, { force = true }) - end -end, {}) - -vim.keymap.set({ 'i', 'n', 'v' }, '', 'CompileClosewqa') - return { cmd = { 'clangd', @@ -188,13 +98,6 @@ return { symbol_info() end, { desc = 'Show symbol info' }) - local compile = compile_project('clear && ./build.sh krypton\n') - local test = compile_project('clear && ./build.sh test\n') - - vim.keymap.set('n', '', compile, { desc = '[H]eader and Source Switcher' }) - vim.keymap.set('n', '', compile, { desc = '[H]eader and Source Switcher' }) - vim.keymap.set('n', '', compile, { desc = '[H]eader and Source Switcher' }) - vim.keymap.set('n', '', test, { desc = '[H]eader and Source Switcher' }) vim.keymap.set('n', 'h', 'ClangdSwitchSourceHeader', { desc = '[H]eader and Source Switcher' }) vim.keymap.set('n', 'H', 'ClangdSwitchSourceHeader', { desc = '[H]eader and Source Switcher' }) end, -- cgit v1.3.1