In rare cases
lexer.words(keywords) doesn't group the matched words such that using it together with
lexer.bygroups is not guaranteed to work.
An example of such a case is e.g.
keywords = ('A','B','C',).
A solution could be to surround
open_paren + ... + close_paren in
pygments/regexopt.py at line 57?