diff options
| author | Simon Hauser <Simon-Hauser@outlook.de> | 2021-03-03 18:14:46 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-03-03 18:14:46 +0100 |
| commit | 3faca0802f7b9fefb5af7500c1fa0c0f7acaba64 (patch) | |
| tree | 2e164e8a6aaf154b630a49b8e64e5b3f4ac267d9 /lua/telescope/config.lua | |
| parent | 3ee53c892def15c636c14185e98091d4643ff345 (diff) | |
docs: start documenting previewers (#574)
Co-authored-by: Muhammed Zakir <MuhammedZakir@users.noreply.github.com>
Diffstat (limited to 'lua/telescope/config.lua')
| -rw-r--r-- | lua/telescope/config.lua | 47 |
1 files changed, 36 insertions, 11 deletions
diff --git a/lua/telescope/config.lua b/lua/telescope/config.lua index de6d544..5e025e3 100644 --- a/lua/telescope/config.lua +++ b/lua/telescope/config.lua @@ -12,6 +12,30 @@ local function first_non_null(...) end end +local dedent = function(str, leave_indent) + -- find minimum common indent across lines + local indent = nil + for line in str:gmatch('[^\n]+') do + local line_indent = line:match('^%s+') or '' + if indent == nil or #line_indent < #indent then + indent = line_indent + end + end + if indent == nil or #indent == 0 then + -- no minimum common indent + return str + end + local left_indent = (' '):rep(leave_indent or 0) + -- create a pattern for the indent + indent = indent:gsub('%s', '[ \t]') + -- strip it from the first line + str = str:gsub('^'..indent, left_indent) + -- strip it from the remaining lines + str = str:gsub('[\n]'..indent, '\n' .. left_indent) + return str +end + + local sorters = require('telescope.sorters') -- TODO: Add other major configuration points here. @@ -35,33 +59,34 @@ function config.set_defaults(defaults) config.values[name] = get(name, default_val) if description then - config.descriptions[name] = vim.trim(description) + -- TODO(conni2461): trim is wrong. We need to do dedent here + config.descriptions[name] = dedent(vim.trim(description)) end end set("sorting_strategy", "descending", [[ Determines the direction "better" results are sorted towards. - Available options are: - - "descending" (default) - - "ascending" + Available options are: + - "descending" (default) + - "ascending" ]]) set("selection_strategy", "reset", [[ Determines how the cursor acts after each sort iteration. - Available options are: - - "reset" (default) - - "follow" - - "row" + Available options are: + - "reset" (default) + - "follow" + - "row" ]]) set("scroll_strategy", "cycle", [[ Determines what happens you try to scroll past view of the picker. - Available options are: - - "cycle" (default) - - "limit" + Available options are: + - "cycle" (default) + - "limit" ]]) set("layout_strategy", "horizontal") |
