From fa17b37dad05a2928ee64bb53a8be8a36ee2de14 Mon Sep 17 00:00:00 2001 From: TJ DeVries Date: Thu, 8 Oct 2020 21:07:25 -0400 Subject: [PATCH] fix: Do not wrap lines and allow scrolling in ranged options --- lua/telescope/previewers.lua | 14 ++++++++++++-- 1 file 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 {