summaryrefslogtreecommitdiff
path: root/lua/telescope/previewers.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/telescope/previewers.lua')
-rw-r--r--lua/telescope/previewers.lua14
1 files changed, 12 insertions, 2 deletions
diff --git a/lua/telescope/previewers.lua b/lua/telescope/previewers.lua
index f57a0d6..e605c24 100644
--- a/lua/telescope/previewers.lua
+++ b/lua/telescope/previewers.lua
@@ -18,6 +18,8 @@ Previewer.__index = Previewer
-- TODO: Should play with these some more, ty @clason
local bat_options = {"--style=plain", "--color=always", "--paging=always"}
+local has_less = (vim.fn.executable('less') == 1)
+
local bat_maker = function(filename, lnum, start, finish)
local command = {"bat"}
@@ -25,8 +27,16 @@ local bat_maker = function(filename, lnum, start, finish)
table.insert(command, { "--highlight-line", lnum})
end
- if start and finish then
- table.insert(command, { "-r", string.format("%s:%s", start, finish) })
+ if has_less then
+ if start then
+ table.insert(command, {"--pager", string.format("less -S +%s", start)})
+ else
+ table.insert(command, {"--pager", "less -S"})
+ end
+ else
+ if start and finish then
+ table.insert(command, { "-r", string.format("%s:%s", start, finish) })
+ end
end
return flatten {