blob: fbdcd971b2c5ee9cf369556e649857fcb5db25dc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
VERSION = "1.1.1"
local micro = import("micro")
local shell = import("micro/shell")
local config = import("micro/config")
local buffer = import("micro/buffer")
function fzf(bp)
if shell.TermEmuSupported then
local err = shell.RunTermEmulator(bp, "fzf", false, true, fzfOutput, {bp})
if err ~= nil then
micro.InfoBar():Error(err)
end
else
local output, err = shell.RunInteractiveShell("fzf", false, true)
if err ~= nil then
micro.InfoBar():Error(err)
else
fzfOutput(output, {bp})
end
end
end
function fzfOutput(output, args)
local bp = args[1]
local strings = import("strings")
output = strings.TrimSpace(output)
if output ~= "" then
local buf, err = buffer.NewBufferFromFile(output)
if err == nil then
bp:OpenBuffer(buf)
end
end
end
function init()
config.MakeCommand("fzf", fzf, config.NoComplete)
end
|