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
51
52
53
54
55
56
57
58
59
60
|
local finders = require('telescope.finders')
local previewers = require('telescope.previewers')
local pickers = require('telescope.pickers')
local sorters = require('telescope.sorters')
local WIP = {}
WIP.git_diff = function()
local file_picker = pickers.new {
previewer = previewers.new_termopen {
command = "git diff %s"
},
}
file_picker:find {
prompt = "Git Diff Viewier",
finder = finders.new {
static = true,
fn_command = function()
return {
command = 'git',
args = {'ls-files', '-m'}
}
end,
},
sorter = sorters.get_norcalli_sorter()
}
end
-- TODO: Make it so that when you select stuff, it's inserted
-- TODO: Make it so the previewer shows the help text.
WIP.completion = function(opts)
local results = {}
for k, _ in pairs(vim.api) do
table.insert(results, k .. "()")
end
local lsp_reference_finder = finders.new {
results = results
}
-- TODO: Open the help text for the line.
local reference_picker = pickers.new(opts, {
prompt = 'vim.api Help Reference',
finder = lsp_reference_finder,
sorter = sorters.get_norcalli_sorter(),
previewer = previewers.help,
})
reference_picker:find {}
end
-- TODO: Use tree sitter to get "everything" in your current scope / file / etc.
-- Fuzzy find ofver it, go to its definition.
return WIP
|