diff options
| author | Jackson Moore <jacksonmoore@tuta.io> | 2026-09-04 11:05:20 +0200 |
|---|---|---|
| committer | Jackson Moore <jacksonmoore@tuta.io> | 2026-09-04 11:05:20 +0200 |
| commit | 741bb9b9ddd97429e28baa72941316033286c861 (patch) | |
| tree | 186c527072f6ed59f14cf73432b2fdd945e47ecc /lua | |
| parent | 8a5ddffaf3425c208338daa6cf504dcdeda4a97b (diff) | |
Acquire during macro execution
Diffstat (limited to 'lua')
| -rw-r--r-- | lua/clever_f/repeat_resolver.lua | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/lua/clever_f/repeat_resolver.lua b/lua/clever_f/repeat_resolver.lua index 086282b..6bf5205 100644 --- a/lua/clever_f/repeat_resolver.lua +++ b/lua/clever_f/repeat_resolver.lua @@ -62,12 +62,15 @@ function RepeatResolver:previous_landing(context) return resolver_records[self].state:get_previous_landing(context) end -function RepeatResolver:decide(context, current_position) +function RepeatResolver:decide(context, current_position, macro_state) current_position = domain.Position.coerce(current_position) local landing = self:previous_landing(context) if landing == nil or not domain.Position.equal(landing, current_position) then return M.Decision.ACQUIRE end + if domain.MacroState.new(macro_state).executing then + return M.Decision.ACQUIRE + end return nil end @@ -82,8 +85,12 @@ M.landing = function(context, options) return RepeatResolver.new(options):previous_landing(context) end -function M.decide(context, current_position, options) - return RepeatResolver.new(options):decide(context, current_position) +function M.decide(context, current_position, macro_state, options) + return RepeatResolver.new(options):decide( + context, + current_position, + macro_state + ) end M.eligibility = M.decide |
