From 061307233cdff0a90504117dd48e4fec3a10443a Mon Sep 17 00:00:00 2001 From: TJ DeVries Date: Wed, 2 Sep 2020 00:06:03 -0400 Subject: feat: add some new items and make mappings easier --- media/demo_script.lua | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 media/demo_script.lua (limited to 'media/demo_script.lua') 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() + + -- cgit v1.2.3