diff options
| author | TJ DeVries <devries.timothyj@gmail.com> | 2020-09-05 07:34:38 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-09-05 07:34:38 -0400 |
| commit | c70d6e58a0ab09db1ee57aded0695d350db2dd83 (patch) | |
| tree | 7215ab223c65788c9218923f6c7ee0c61550991c /lua/telescope/builtin.lua | |
| parent | 4abb5f7867fb087aa69bcd49d40537609a1e2e46 (diff) | |
feat: add buffer list (#30)
NOTE: Buffer entry sometimes uses unstyled window, and I can't figure out why.
* feat: add buffers
* fixup
Diffstat (limited to 'lua/telescope/builtin.lua')
| -rw-r--r-- | lua/telescope/builtin.lua | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/lua/telescope/builtin.lua b/lua/telescope/builtin.lua index 75421e0..112054d 100644 --- a/lua/telescope/builtin.lua +++ b/lua/telescope/builtin.lua @@ -22,6 +22,7 @@ local pickers = require('telescope.pickers') local sorters = require('telescope.sorters') local utils = require('telescope.utils') +local filter = vim.tbl_filter local flatten = vim.tbl_flatten -- TODO: Support silver search here. @@ -340,4 +341,26 @@ builtin.fd = function(opts) }):find() end +-- TODO: This is partially broken, but I think it might be an nvim bug. +builtin.buffers = function(opts) + opts = opts or {} + + local buffers = filter(function(b) + return + vim.api.nvim_buf_is_loaded(b) + and 1 == vim.fn.buflisted(b) + + end, vim.api.nvim_list_bufs()) + + pickers.new(opts, { + prompt = 'Buffers', + finder = finders.new_table { + results = buffers, + entry_maker = make_entry.gen_from_buffer(opts) + }, + previewer = previewers.vim_buffer.new(opts), + sorter = sorters.get_norcalli_sorter(), + }):find() +end + return builtin |
