diff options
| author | triethyl <triethylammonium@pm.me> | 2025-12-03 09:48:00 -0500 |
|---|---|---|
| committer | triethyl <triethylammonium@pm.me> | 2025-12-03 09:48:00 -0500 |
| commit | da2ae5f98aadc5f5bd3498854db9efd75fa1b6ab (patch) | |
| tree | 061a0d13998f91210db13f1e99dd012ce4b05ca2 /pkgs/custom-neovim/config/lua/plugins/fzf.lua | |
| parent | df154e4918a635e1c7052d332d25324773e13847 (diff) | |
neovim: many changes
Diffstat (limited to 'pkgs/custom-neovim/config/lua/plugins/fzf.lua')
| -rw-r--r-- | pkgs/custom-neovim/config/lua/plugins/fzf.lua | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/pkgs/custom-neovim/config/lua/plugins/fzf.lua b/pkgs/custom-neovim/config/lua/plugins/fzf.lua index 1c1b9aa..e8987a9 100644 --- a/pkgs/custom-neovim/config/lua/plugins/fzf.lua +++ b/pkgs/custom-neovim/config/lua/plugins/fzf.lua @@ -11,14 +11,20 @@ return { require("fzf-lua").register_ui_select() + local multiline_string_to_table = function (input_str) + local lines = {} + for line in input_str:gmatch("[^\r\n]+") do + table.insert(lines, line) + end + return lines + end + Custom_pickers = {} Custom_pickers.fzf_dir_cd = function() local dirs = {} - for name, type in vim.fs.dir("./", {depth = 100}) do - if type == "directory" then - table.insert(dirs, name) - end + for i, name in ipairs(multiline_string_to_table(vim.fn.system("fd -t d"))) do + table.insert(dirs, name) end require("fzf-lua").fzf_exec( dirs, { @@ -36,10 +42,8 @@ return { Custom_pickers.fzf_dir_tcd = function() local dirs = {} - for name, type in vim.fs.dir("./", {depth = 100}) do - if type == "directory" then - table.insert(dirs, name) - end + for i, name in ipairs(multiline_string_to_table(vim.fn.system("fd -t d"))) do + table.insert(dirs, name) end require("fzf-lua").fzf_exec( dirs, { @@ -54,5 +58,5 @@ return { } }) end - end, + end } |
