|
| 1 | +local prefix = "<Leader>H" |
| 2 | + |
| 3 | +return { |
| 4 | + "jellydn/hurl.nvim", |
| 5 | + ft = "hurl", |
| 6 | + dependencies = { |
| 7 | + "MunifTanjim/nui.nvim", |
| 8 | + "nvim-lua/plenary.nvim", |
| 9 | + { |
| 10 | + "nvim-treesitter/nvim-treesitter", |
| 11 | + opts = function(_, opts) |
| 12 | + if opts.ensure_installed ~= "all" then |
| 13 | + opts.ensure_installed = require("astrocore").list_insert_unique(opts.ensure_installed, { "hurl" }) |
| 14 | + end |
| 15 | + end, |
| 16 | + }, |
| 17 | + { |
| 18 | + "WhoIsSethDaniel/mason-tool-installer.nvim", |
| 19 | + optional = true, |
| 20 | + opts = function(_, opts) |
| 21 | + opts.ensure_installed = require("astrocore").list_insert_unique(opts.ensure_installed, { "jq", "prettier" }) |
| 22 | + end, |
| 23 | + }, |
| 24 | + }, |
| 25 | + specs = { |
| 26 | + { |
| 27 | + "AstroNvim/astroui", |
| 28 | + ---@type AstroUIOpts |
| 29 | + opts = { icons = { HurlNvim = "" } }, |
| 30 | + }, |
| 31 | + { |
| 32 | + "AstroNvim/astrocore", |
| 33 | + opts = function(_, opts) |
| 34 | + local maps = opts.mappings |
| 35 | + maps.n[prefix] = { desc = require("astroui").get_icon("HurlNvim", 1, true) .. "HurlNvim" } |
| 36 | + maps.n[prefix .. "R"] = { "<cmd>HurlRunner<cr>", desc = "Run all requests in the file" } |
| 37 | + maps.n[prefix .. "r"] = { "<cmd>HurlRunnerAt<cr>", desc = "Run request under the cursor" } |
| 38 | + maps.n[prefix .. "e"] = { "<cmd>HurlRunnerToEntry<cr>", desc = "Run request to the entry" } |
| 39 | + maps.n[prefix .. "E"] = { "<cmd>HurlRunnerToEnd<cr>", desc = "Run all request to the end" } |
| 40 | + maps.n[prefix .. "v"] = { "<cmd>HurlVerbose<cr>", desc = "Toggle verbose mode" } |
| 41 | + maps.n[prefix .. "V"] = { "<cmd>HurlVeryVerbose<cr>", desc = "Toggle very verbose mode" } |
| 42 | + end, |
| 43 | + }, |
| 44 | + }, |
| 45 | + opts = {}, |
| 46 | +} |
0 commit comments