nvim-config11/lua/plugins/kulala.nvim.lua
2025-08-07 08:49:35 +01:00

148 lines
5.4 KiB
Lua

return {
"mistweaverco/kulala.nvim",
ft = { "http", "rest" },
opts = {
},
init = function()
vim.api.nvim_create_autocmd("Filetype", {
pattern = "http",
callback = function()
local buf = vim.api.nvim_get_current_buf()
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Rb",
":lua require('kulala').scratchpad()<cr>",
{ desc = "Scratchpad", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Ro",
":lua require('kulala').open()<cr>",
{ desc = "Open Kulala", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Rt",
":lua require('kulala').toggle_view()<cr>",
{ desc = "Toggle headers/body", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>RS",
":lua require('kulala').show_stats()<cr>",
{ desc = "Show stats", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Rq",
":lua require('kulala').close()<cr>",
{ desc = "Close window", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Rc",
":lua require('kulala').copy()<cr>",
{ desc = "Copy as cURL", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>RC",
":lua require('kulala').from_curl()<cr>",
{ desc = "Paste from cURL", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Rs",
":lua require('kulala').run()<cr>",
{ desc = "Send request", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Ra",
":lua require('kulala').run_all()<cr>",
{ desc = "Send all requests", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Ri",
":lua require('kulala').inspect()<cr>",
{ desc = "Inspect the current request", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Rr",
":lua require('kulala').replay()<cr>",
{ desc = "Replay the last request", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Rf",
":lua require('kulala').search()<cr>",
{ desc = "Find Request", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"]R",
":lua require('kulala').jump_next()<cr>",
{ desc = "Jump to next request", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"[R",
":lua require('kulala').jump_prev()<cr>",
{ desc = "Jump to previous request", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Re",
":lua require('kulala').set_selected_env()<cr>",
{ desc = "Select environment", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Ru",
":lua require('lua.kulala.ui.auth_manager').open_auth_config()<cr>",
{ desc = "Manage Auth Config", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Rg",
":lua require('kulala').download_graphql_schema()<cr>",
{ desc = "Download GraphQL schema", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>Rx",
":lua require('kulala').scripts_clear_global()<cr>",
{ desc = "Clear globals", silent = true }
)
vim.api.nvim_buf_set_keymap(
buf,
"n",
"<leader>RX",
":lua require('kulala').clear_cached_files()<cr>",
{ desc = "Clear cached files", silent = true }
)
end,
})
end
}