fix: map openCharacterDictionary session action to --open-character-dict

- Add missing Lua CLI dispatch entry for openCharacterDictionary
- Add regression test for Alt+Meta+A binding and CLI flag forwarding
This commit is contained in:
2026-05-11 01:07:11 -07:00
parent 0b72fa108f
commit 47499eccff
3 changed files with 71 additions and 0 deletions
+25
View File
@@ -79,6 +79,14 @@ local ctx = {
actionType = "session-action",
actionId = "playNextSubtitle",
},
{
key = {
code = "KeyA",
modifiers = { "alt", "meta" },
},
actionType = "session-action",
actionId = "openCharacterDictionary",
},
{
key = {
code = "KeyL",
@@ -153,6 +161,23 @@ local play_next_call = recorded.async_calls[#recorded.async_calls]
assert_true(play_next_call ~= nil, "play-next binding should invoke CLI action")
assert_true(play_next_call[2] == "--play-next-subtitle", "play-next binding should pass CLI flag")
local character_dictionary = nil
for _, binding in ipairs(recorded.bindings) do
if binding.keys == "Alt+Meta+a" then
character_dictionary = binding
break
end
end
assert_true(character_dictionary ~= nil, "character dictionary binding should be registered")
character_dictionary.fn()
local character_dictionary_call = recorded.async_calls[#recorded.async_calls]
assert_true(character_dictionary_call ~= nil, "character dictionary binding should invoke CLI action")
assert_true(
character_dictionary_call[2] == "--open-character-dictionary",
"character dictionary binding should pass CLI flag"
)
starter.fn()
local modified_digit = nil