summaryrefslogtreecommitdiff
path: root/lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua')
-rw-r--r--lua/clever_f/action_facade.lua10
-rw-r--r--lua/clever_f/composition_root.lua4
2 files changed, 12 insertions, 2 deletions
diff --git a/lua/clever_f/action_facade.lua b/lua/clever_f/action_facade.lua
index b9bb970..b732ca6 100644
--- a/lua/clever_f/action_facade.lua
+++ b/lua/clever_f/action_facade.lua
@@ -51,8 +51,14 @@ function ActionFacade:primary(descriptor)
return outcome
end
-ActionFacade.invoke_primary = ActionFacade.primary
-ActionFacade.start = ActionFacade.primary
+function ActionFacade:invoke_descriptor(value)
+ local descriptor = sequence_coordinator.validate_primary_descriptor(value)
+ return self:primary(descriptor)
+end
+
+ActionFacade.invoke_primary = ActionFacade.invoke_descriptor
+ActionFacade.start = ActionFacade.invoke_descriptor
+ActionFacade.FreeForm = ActionFacade.invoke_descriptor
function ActionFacade:start_find_forward()
return self:primary("f")
diff --git a/lua/clever_f/composition_root.lua b/lua/clever_f/composition_root.lua
index fac567d..fa38fa1 100644
--- a/lua/clever_f/composition_root.lua
+++ b/lua/clever_f/composition_root.lua
@@ -179,6 +179,10 @@ function CompositionRoot:facade()
return root_records[self].facade
end
+function CompositionRoot:invoke_descriptor(value)
+ return self:facade():invoke_descriptor(value)
+end
+
function M.new(options)
return CompositionRoot.new(options)
end