neovim: create quickfix.lua file
This commit is contained in:
23
neovim/.config/nvim/after/plugin/quickfix.lua
Normal file
23
neovim/.config/nvim/after/plugin/quickfix.lua
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
local function is_quickfix_opened()
|
||||||
|
local wins = vim.api.nvim_tabpage_list_wins(0)
|
||||||
|
for _, win in ipairs(wins) do
|
||||||
|
local buf = vim.api.nvim_win_get_buf(win)
|
||||||
|
if vim.bo[buf].buftype == "quickfix" then
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
return false
|
||||||
|
end
|
||||||
|
|
||||||
|
local function toggle_quickfix()
|
||||||
|
if is_quickfix_opened() then
|
||||||
|
vim.cmd.cclose()
|
||||||
|
else
|
||||||
|
vim.cmd.copen()
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.keymap.set("n", "<leader>qq", toggle_quickfix)
|
||||||
|
vim.keymap.set("n", "<leader>qn", vim.cmd.cnext)
|
||||||
|
vim.keymap.set("n", "<leader>qN", vim.cmd.cprevious)
|
||||||
@@ -19,25 +19,3 @@ vim.keymap.set("n", "tn", ":tabnew<CR>")
|
|||||||
vim.keymap.set("n", "tN", ":-tabnew<CR>")
|
vim.keymap.set("n", "tN", ":-tabnew<CR>")
|
||||||
vim.keymap.set("n", "H", ":tabprev<CR>")
|
vim.keymap.set("n", "H", ":tabprev<CR>")
|
||||||
vim.keymap.set("n", "L", ":tabnext<CR>")
|
vim.keymap.set("n", "L", ":tabnext<CR>")
|
||||||
|
|
||||||
-- quickfix
|
|
||||||
local function is_quickfix_opened()
|
|
||||||
local wins = vim.api.nvim_tabpage_list_wins(0)
|
|
||||||
for _, win in ipairs(wins) do
|
|
||||||
local buf = vim.api.nvim_win_get_buf(win)
|
|
||||||
if vim.bo[buf].buftype == "quickfix" then
|
|
||||||
return true
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
return false
|
|
||||||
end
|
|
||||||
vim.keymap.set("n", "<leader>qq", function()
|
|
||||||
if is_quickfix_opened() then
|
|
||||||
vim.cmd.cclose()
|
|
||||||
else
|
|
||||||
vim.cmd.copen()
|
|
||||||
end
|
|
||||||
end)
|
|
||||||
vim.keymap.set("n", "<leader>qn", vim.cmd.cnext)
|
|
||||||
vim.keymap.set("n", "<leader>qN", vim.cmd.cprevious)
|
|
||||||
|
|||||||
Reference in New Issue
Block a user