diff --git a/parser-specs/config.spec b/parser-specs/config.spec index 8622c62e..7a31a5d8 100644 --- a/parser-specs/config.spec +++ b/parser-specs/config.spec @@ -270,6 +270,8 @@ state FONT: # bindsym/bindcode state BINDING: + release = '--release' + -> modifiers = 'Mod1', 'Mod2', 'Mod3', 'Mod4', 'Mod5', 'Shift', 'Control', 'Ctrl', 'Mode_switch' -> '+' @@ -313,6 +315,8 @@ state MODE_IGNORE_LINE: -> MODE state MODE_BINDING: + release = '--release' + -> modifiers = 'Mod1', 'Mod2', 'Mod3', 'Mod4', 'Mod5', 'Shift', 'Control', 'Ctrl', 'Mode_switch' -> '+' diff --git a/testcases/t/201-config-parser.t b/testcases/t/201-config-parser.t index ab3d7314..d6010795 100644 --- a/testcases/t/201-config-parser.t +++ b/testcases/t/201-config-parser.t @@ -44,6 +44,7 @@ my $config = <<'EOT'; mode "meh" { bindsym Mod1 + Shift + x resize grow bindcode Mod1+44 resize shrink + bindsym --release Mod1+x exec foo } EOT @@ -51,6 +52,7 @@ my $expected = <<'EOT'; cfg_enter_mode(meh) cfg_mode_binding(bindsym, Mod1,Shift, x, (null), resize grow) cfg_mode_binding(bindcode, Mod1, 44, (null), resize shrink) +cfg_mode_binding(bindsym, Mod1, x, --release, exec foo) EOT is(parser_calls($config),