From 3553a4a61ebd76789a00db102e591bba866caff0 Mon Sep 17 00:00:00 2001 From: sxyazi Date: Sun, 31 Mar 2024 15:37:03 +0800 Subject: [PATCH] fix: do not default to passing `self` to `setup` to respect user invocation behavior --- yazi-plugin/src/loader/require.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yazi-plugin/src/loader/require.rs b/yazi-plugin/src/loader/require.rs index 2144bd0b..bb34108a 100644 --- a/yazi-plugin/src/loader/require.rs +++ b/yazi-plugin/src/loader/require.rs @@ -39,7 +39,7 @@ impl Require { if key.to_str()? == "setup" { Ok(RequireSetup { name: ts.raw_get("name")?, module: ts.raw_get("module")? }) } else { - Err("Only `require():setup()` is supported").into_lua_err() + Err("Only `require():setup()` and `require().setup()` are supported").into_lua_err() } })?, )?; @@ -58,7 +58,7 @@ impl UserData for RequireSetup { fn add_methods<'lua, M: mlua::UserDataMethods<'lua, Self>>(methods: &mut M) { methods.add_meta_method(MetaMethod::Call, |lua, me, args: Variadic| { lua.named_registry_value::("rt")?.swap(me.name.to_str()?); - let result = me.module.call_method::<_, Variadic>("setup", args); + let result = me.module.call_function::<_, Variadic>("setup", args); lua.named_registry_value::("rt")?.reset(); result });