feat: All buffer previewers are now async and more config options (#354)
Configure preview window with:
autocmd User TelescopePreviewerLoaded setlocal wrap
autocmd User TelescopePreviewerLoaded setlocal number
file_maker example: Use regex highlighting for certain filetype like `*min.js` because they slow
down things with treesitter highlighter. Just a snippet for tests. We will do an extension :)
local previewers = require('telescope.previewers')
local putils = require('telescope.previewers.utils')
local pfiletype = require('plenary.filetype')
local _bad = { '.*%.min%.js' }
local bad_files = function(filepath)
for _, v in ipairs(_bad) do
if filepath:match(v) then
return true
end
end
return false
end
local new_maker = function(filepath, bufnr, bufname, use_ft_detect, callback)
if use_ft_detect == nil then use_ft_detect = true end
if bad_files(filepath) then
previewers.buffer_previewer_maker(filepath, bufnr, bufname, false, callback)
local ft = pfiletype.detect(filepath)
putils.regex_highlighter(bufnr, ft)
else
previewers.buffer_previewer_maker(filepath, bufnr, bufname, use_ft_detect, callback)
end
end
require('telescope').setup {
defaults = {
buffer_previewer_maker = new_maker,
}
}
This commit is contained in:
@@ -9,24 +9,25 @@ previewers.new = function(...)
|
||||
end
|
||||
|
||||
previewers.new_termopen_previewer = term_previewer.new_termopen_previewer
|
||||
previewers.git_commit_diff = term_previewer.git_commit_diff
|
||||
previewers.git_branch_log = term_previewer.git_branch_log
|
||||
previewers.git_file_diff = term_previewer.git_file_diff
|
||||
previewers.cat = term_previewer.cat
|
||||
previewers.vimgrep = term_previewer.vimgrep
|
||||
previewers.qflist = term_previewer.qflist
|
||||
|
||||
previewers.new_buffer_previewer = buffer_previewer.new_buffer_previewer
|
||||
previewers.vim_buffer_cat = buffer_previewer.cat
|
||||
previewers.vim_buffer_vimgrep = buffer_previewer.vimgrep
|
||||
previewers.vim_buffer_qflist = buffer_previewer.qflist
|
||||
previewers.ctags = buffer_previewer.ctags
|
||||
previewers.builtin = buffer_previewer.builtin
|
||||
previewers.help = buffer_previewer.help
|
||||
previewers.man = buffer_previewer.man
|
||||
previewers.autocommands = buffer_previewer.autocommands
|
||||
previewers.highlights = buffer_previewer.highlights
|
||||
previewers.display_content = buffer_previewer.display_content
|
||||
previewers.new_buffer_previewer = buffer_previewer.new_buffer_previewer
|
||||
previewers.buffer_previewer_maker = buffer_previewer.file_maker
|
||||
previewers.vim_buffer_cat = buffer_previewer.cat
|
||||
previewers.vim_buffer_vimgrep = buffer_previewer.vimgrep
|
||||
previewers.vim_buffer_qflist = buffer_previewer.qflist
|
||||
previewers.git_branch_log = buffer_previewer.git_branch_log
|
||||
previewers.git_commit_diff = buffer_previewer.git_commit_diff
|
||||
previewers.git_file_diff = buffer_previewer.git_file_diff
|
||||
previewers.ctags = buffer_previewer.ctags
|
||||
previewers.builtin = buffer_previewer.builtin
|
||||
previewers.help = buffer_previewer.help
|
||||
previewers.man = buffer_previewer.man
|
||||
previewers.autocommands = buffer_previewer.autocommands
|
||||
previewers.highlights = buffer_previewer.highlights
|
||||
previewers.display_content = buffer_previewer.display_content
|
||||
|
||||
previewers.Previewer = Previewer
|
||||
|
||||
|
||||
Reference in New Issue
Block a user