Skip to content

Commit 45c2757

Browse files
committed
refactor: speed up parsing/transform with stringbuf/worker
1 parent 8342463 commit 45c2757

17 files changed

Lines changed: 798 additions & 744 deletions

lua/fzf-lua/actions.lua

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
local uv = vim.uv or vim.loop
44
local utils = require "fzf-lua.utils"
55
local path = require "fzf-lua.path"
6-
local libuv = require "fzf-lua.libuv"
76

87
---@class fzf-lua.actions
98
---@field expect fun(actions: table, opts: fzf-lua.config.Resolved|{}):string[]?, string[]?
@@ -625,7 +624,7 @@ M.goto_jump = function(selected, opts)
625624
end
626625
else
627626
local _, lnum, col, filepath = selected[1]:match("(%d+)%s+(%d+)%s+(%d+)%s+(.*)")
628-
local ok, res = pcall(libuv.expand, filepath)
627+
local ok, res = pcall(require("fzf-lua.libuv").expand, filepath)
629628
if not ok then
630629
filepath = ""
631630
else
@@ -1338,7 +1337,7 @@ M.serverlist_kill = function(sel)
13381337
end
13391338

13401339
M.serverlist_spawn = function()
1341-
libuv.uv_spawn(
1340+
require("fzf-lua.job").spawn(
13421341
vim.fn.exepath("nvim"), { args = { "--headless" }, env = { NVIM = "" }, detached = true })
13431342
end
13441343

lua/fzf-lua/defaults.lua

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ local utils = require "fzf-lua.utils"
44
local actions = require "fzf-lua.actions"
55
local previewers = require "fzf-lua.previewer"
66
local M = {}
7+
local uis = #vim.api.nvim_list_uis()
78

89
function M._default_previewer_fn()
910
local winopts = M.globals.winopts
@@ -699,8 +700,8 @@ M.defaults.git = {
699700
FzfLua.git_hunks(o)
700701
end,
701702
header = "git hunks",
702-
reuse = #vim.api.nvim_list_uis() == 0,
703-
exec_silent = #vim.api.nvim_list_uis() > 0,
703+
reuse = uis == 0,
704+
exec_silent = uis > 0,
704705
field_index = "{} $FZF_POS",
705706
},
706707
["ctrl-q"] = {
@@ -769,8 +770,8 @@ M.defaults.git = {
769770
FzfLua.git_diff(o)
770771
end,
771772
header = "git diff",
772-
reuse = #vim.api.nvim_list_uis() == 0,
773-
exec_silent = #vim.api.nvim_list_uis() > 0,
773+
reuse = uis == 0,
774+
exec_silent = uis > 0,
774775
field_index = "{} $FZF_POS",
775776
},
776777
},

lua/fzf-lua/devicons.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -360,6 +360,7 @@ M.plugin_load = function(provider, do_not_lazy_load)
360360
if provider == nil and M.PLUGIN and M.PLUGIN:loaded() then
361361
return true
362362
end
363+
provider = "devicons"
363364
M.PLUGIN = provider == "srv" and M.__SRV
364365
or provider == "mini" and M.__MINI
365366
or provider == "devicons" and M.__DEVICONS

0 commit comments

Comments
 (0)