fix: use double dash to fix special filenames (#87)

Co-authored-by: Oleg Matrokhin <o.matrohin@softpro.com>
This commit is contained in:
Oleg Matrokhin
2020-09-17 00:09:12 +03:00
committed by GitHub
parent e6d926e4f6
commit 9766a5bec8
2 changed files with 7 additions and 7 deletions

View File

@@ -115,7 +115,7 @@ builtin.live_grep = function(opts)
return nil return nil
end end
return flatten { conf.vimgrep_arguments, prompt } return flatten { conf.vimgrep_arguments, " --", prompt }
end, end,
opts.entry_maker or make_entry.gen_from_vimgrep(opts), opts.entry_maker or make_entry.gen_from_vimgrep(opts),
opts.max_results or 1000 opts.max_results or 1000
@@ -346,7 +346,7 @@ builtin.grep_string = function(opts)
pickers.new(opts, { pickers.new(opts, {
prompt = 'Find Word', prompt = 'Find Word',
finder = finders.new_oneshot_job( finder = finders.new_oneshot_job(
flatten { conf.vimgrep_arguments, search}, flatten { conf.vimgrep_arguments, " --", search},
opts opts
), ),
previewer = previewers.vimgrep.new(opts), previewer = previewers.vimgrep.new(opts),

View File

@@ -193,9 +193,9 @@ end, {})
previewers.cat = defaulter(function(opts) previewers.cat = defaulter(function(opts)
return previewers.new { return previewers.new {
setup = function() setup = function()
local command_string = "cat '%s'" local command_string = "cat -- '%s'"
if 1 == vim.fn.executable("bat") then if 1 == vim.fn.executable("bat") then
command_string = "bat '%s' " .. bat_options command_string = "bat " .. bat_options .. " -- '%s'"
end end
return { return {
@@ -255,9 +255,9 @@ end, {})
previewers.vimgrep = defaulter(function(_) previewers.vimgrep = defaulter(function(_)
return previewers.new { return previewers.new {
setup = function() setup = function()
local command_string = "cat '%s'" local command_string = "cat -- '%s'"
if vim.fn.executable("bat") then if vim.fn.executable("bat") then
command_string = "bat '%s' --highlight-line '%s' -r '%s':'%s'" .. bat_options command_string = "bat --highlight-line '%s' -r '%s':'%s'" .. bat_options .. " -- '%s'"
end end
return { return {
@@ -286,7 +286,7 @@ previewers.vimgrep = defaulter(function(_)
vim.api.nvim_win_set_buf(status.preview_win, bufnr) vim.api.nvim_win_set_buf(status.preview_win, bufnr)
local termopen_command = string.format(self.state.command_string, filename, lnum, start, finish) local termopen_command = string.format(self.state.command_string, lnum, start, finish, filename)
with_preview_window(status, function() with_preview_window(status, function()
vim.fn.termopen(termopen_command) vim.fn.termopen(termopen_command)