@@ -62,6 +62,33 @@ T["api"]["fzf_exec"]["rg"] = new_set({ parametrize = { { true }, { false }, { 1
6262 end
6363})
6464
65+ T [" api" ][" fzf_exec" ][" fn_transform" ] = new_set ({ parametrize = { { true }, { false } } })
66+
67+ T [" api" ][" fzf_exec" ][" fn_transform" ][" filter" ] = new_set (
68+ { parametrize = { { 0 }, { 13 }, { 24 } } }, {
69+ function (multiprocess , filter )
70+ local AND = helpers .IS_WIN () and " &" or " &&"
71+ helpers .FzfLua .fzf_exec (child ,
72+ string.format ([[ "echo one%secho two%secho three%secho four"]] , AND , AND , AND ),
73+ {
74+ -- __postprocess_wait = multiprocess ~= 1,
75+ __expect_lines = true ,
76+ multiprocess = multiprocess ,
77+ fn_transform = filter == 13 and function (item )
78+ if vim .tbl_contains ({ " one" , " three" }, item ) then return end
79+ return string.format (" TRANSFORMED: %s, base64: %s" , item , vim .base64 .encode (item ))
80+ end
81+ or filter == 24 and function (item )
82+ if vim .tbl_contains ({ " two" , " four" }, item ) then return end
83+ return string.format (" TRANSFORMED: %s, base64: %s" , item , vim .base64 .encode (item ))
84+ end
85+ or function (item )
86+ return string.format (" TRANSFORMED: %s, base64: %s" , item , vim .base64 .encode (item ))
87+ end
88+ })
89+ end
90+ })
91+
6592
6693T [" api" ][" fzf_live" ] = new_set ()
6794
0 commit comments