summaryrefslogtreecommitdiff
path: root/lua/tests/manual/reference_tracker.lua
diff options
context:
space:
mode:
authorTJ DeVries <devries.timothyj@gmail.com>2020-10-06 21:57:49 -0400
committerGitHub <noreply@github.com>2020-10-06 21:57:49 -0400
commitd32d4a6e0f0c571941f1fd37759ca1ebbdd5f488 (patch)
tree8cef3a32081bd0758d349a5d810d6f366def5f17 /lua/tests/manual/reference_tracker.lua
parentcaf370cc378e7c606fd4f59c46533b0b0decbcea (diff)
fix: Reduce memory leaks (#148)
It is not 100% clear that we've gotten ALL the memory leaks, but it seems much much much better and doesn't look like it's going to die immediately or as often anymore :)
Diffstat (limited to 'lua/tests/manual/reference_tracker.lua')
-rw-r--r--lua/tests/manual/reference_tracker.lua48
1 files changed, 48 insertions, 0 deletions
diff --git a/lua/tests/manual/reference_tracker.lua b/lua/tests/manual/reference_tracker.lua
new file mode 100644
index 0000000..dc90671
--- /dev/null
+++ b/lua/tests/manual/reference_tracker.lua
@@ -0,0 +1,48 @@
+
+-- 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