summaryrefslogtreecommitdiff
path: root/lua/tests/manual/reference_tracker.lua
blob: f9e04c903ca51c33d89203edf7c83e037a0fc10c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
-- local actions = require('telescope.actions')
-- local utils = require('telescope.utils')
require "telescope"
local finders = require "telescope.finders"
local make_entry = require "telescope.make_entry"
local previewers = require "telescope.previewers"
local pickers = require "telescope.pickers"
local sorters = require "telescope.sorters"

local log = require "telescope.log"

local real_opts = setmetatable({}, { __mode = "v" })
local opts = setmetatable({}, {
  __index = function(t, k)
    log.debug("accessing:", k)
    return real_opts[k]
  end,
  __newindex = function(t, k, v)
    log.debug("setting:", k, v)
    real_opts[k] = v
  end,
})

opts.entry_maker = opts.entry_maker or make_entry.gen_from_file()
if opts.cwd then
  opts.cwd = vim.fn.expand(opts.cwd)
end

-- local get_finder_opts = function(opts)
--   local t = {}
--   t.entry_maker = table.pop(opts, 'entry_maker')
--   return t
-- end

-- local finder_opts = get_finder_opts(opts)
-- assert(not opts.entry_maker)

local picker_config = {
  prompt = "Git File",
  finder = finders.new_oneshot_job({ "git", "ls-files", "-o", "--exclude-standard", "-c" }, opts),
  -- previewer = previewers.cat.new(opts),
  -- sorter    = sorters.get_fuzzy_file(opts),
  -- sorter    = sorters.get_fuzzy_file(),
}

log.debug "Done with config"

local x = pickers.new(picker_config)
x:find()
x = nil