diff options
| author | TJ DeVries <devries.timothyj@gmail.com> | 2020-08-28 00:19:10 -0400 |
|---|---|---|
| committer | TJ DeVries <devries.timothyj@gmail.com> | 2020-08-28 00:19:10 -0400 |
| commit | f2fcdcb6751701db94236d534db72346f7c118d6 (patch) | |
| tree | baa700549805f8ca969f3acdb29eaeb6af8f273f /lua/telescope/pickers.lua | |
| parent | d20be453a82b7fc6e54c8424133218b4032962a7 (diff) | |
feat: borders and no previews for rocker
Diffstat (limited to 'lua/telescope/pickers.lua')
| -rw-r--r-- | lua/telescope/pickers.lua | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/lua/telescope/pickers.lua b/lua/telescope/pickers.lua index 3b70235..b5e418a 100644 --- a/lua/telescope/pickers.lua +++ b/lua/telescope/pickers.lua @@ -12,6 +12,8 @@ local Previewer = require('telescope.previewers').Previewer local pickers = {} +local ifnil = function(x, was_nil, was_not_nil) if x == nil then return was_nil else return was_not_nil end end + -- Picker takes a function (`get_window_options`) that returns the configurations required for three windows: -- prompt -- results @@ -45,18 +47,26 @@ function Picker:new(opts) end function Picker:get_window_options(max_columns, max_lines, prompt_title, find_options) + + local popup_border = ifnil(find_options.border, {}, find_options.border) + local preview = { - border = {}, + border = popup_border, + borderchars = find_options.borderchars or nil, enter = false, highlight = false } + local results = { - border = {}, + border = popup_border, + borderchars = find_options.borderchars or nil, enter = false, } + local prompt = { title = prompt_title, - border = {}, + border = popup_border, + borderchars = find_options.borderchars or nil, enter = true } @@ -121,6 +131,8 @@ function Picker:find(opts) opts.preview_cutoff = 120 end + opts.borderchars = opts.borderchars or { '─', '│', '─', '│', '┌', '┐', '┘', '└'} + local finder = opts.finder assert(finder, "Finder is required to do picking") @@ -275,16 +287,15 @@ function Picker:find(opts) state.set_status(prompt_bufnr, { prompt_bufnr = prompt_bufnr, prompt_win = prompt_win, - prompt_border_win = prompt_opts.border.win_id, + prompt_border_win = prompt_opts.border and prompt_opts.border.win_id, results_bufnr = results_bufnr, results_win = results_win, - results_border_win = results_opts.border.win_id, + results_border_win = results_opts.border and results_opts.border.win_id, preview_bufnr = preview_bufnr, preview_win = preview_win, - preview_border_win = preview_opts and preview_opts.border.win_id, - + preview_border_win = preview_opts.border and preview_opts.border.win_id, picker = self, previewer = self.previewer, finder = finder, |
