Open1

folke/snacks.nvim で ghq管理のプロジェクトをfuzzy findして:cdする

ras0qras0q
Snacks.picker({
  finder = "proc",
  cmd = "ghq",
  args = { "list", "--full-path" },
  transform = function(item)
	item.file = item.text
	item.dir = true
  end,
  confirm = function(picker, item)
	picker:close()
	vim.cmd("cd " .. item.text)
  end
})

procを使うってのはここに書いてある(ドキュメントにはない)

https://github.com/folke/snacks.nvim/issues/1023

lazy.nvim で設定するとこう

---@type LazyPluginSpec
return {
  "folke/snacks.nvim",
  lazy = false,
  ---@type snacks.Config
  opts = {
    picker = {
      enabled = true,
    },
  },
  keys = {
    {
      "<leader>gf",
      function()
        Snacks.picker({
          finder = "proc",
          cmd = "ghq",
          args = { "list", "--full-path" },
          transform = function(item)
            item.file = item.text
            item.dir = true
          end,
          confirm = function(picker, item)
            picker:close()
            vim.cmd("cd " .. item.text)
          end
        })
      end,
      desc = "List Pickers"
    },
  },
}