diff options
Diffstat (limited to 'media/demo_script.lua')
| -rw-r--r-- | media/demo_script.lua | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/media/demo_script.lua b/media/demo_script.lua new file mode 100644 index 0000000..8074523 --- /dev/null +++ b/media/demo_script.lua @@ -0,0 +1,47 @@ +local finders = require('telescope.finders') +local previewers = require('telescope.previewers') +local pickers = require('telescope.pickers') +local sorters = require('telescope.sorters') + +-- Get all the items from v:oldfiles that are valid files +local valid_oldfiles = vim.tbl_filter(function(val) + return 0 ~= vim.fn.filereadable(val) +end, vim.v.oldfiles) + +-- print(vim.inspect(valid_oldfiles)) +-- => { +-- "/home/tj/blah.txt", +-- "/home/tj/another_dir/file.py", +-- ... +-- } + +-- Create a finder from a Lua list. +local oldfiles_finder = finders.new_table(valid_oldfiles) + +-- Get a pre-defined sorter. +-- Sorters return a "score" for each "Entry" found by a finder. +-- +-- This sorter is optimized to best find files in a fuzzy manner. +local oldfiles_sorter = sorters.get_fuzzy_file() + +-- Get a pre-defined previewer. +-- Previewers take the currently selected entry, +-- and put a preview of it in a floating window +local oldfiles_previewer = previewers.cat + +-- Create and run a Picker. +-- Pickers are the main entry point to telescope. +-- They manage the interactions between: +-- Finder, +-- Sorter, +-- Previewer +-- +-- And provide the UI for the user. +pickers.new { + prompt = 'Oldfiles', + finder = oldfiles_finder, + sorter = oldfiles_sorter, + previewer = oldfiles_previewer, +}:find() + + |
