diff --git a/cue_parser.y b/cue_parser.y index bb3e181..a9a7b2b 100644 --- a/cue_parser.y +++ b/cue_parser.y @@ -122,7 +122,8 @@ Cd *cue_parse_string(const char*); /* REM */ %type rem_item %token DATE -%token XXX_GENRE /* parsed in REM but stored in CD-TEXT */ +%token XXX_GENRE /* XXX = parsed in REM but stored in CD-TEXT */ +%token XXX_COMPOSER %token REPLAYGAIN_ALBUM_GAIN %token REPLAYGAIN_ALBUM_PEAK %token REPLAYGAIN_TRACK_GAIN @@ -307,6 +308,7 @@ time rem : rem_item STRING '\n' { rem_set($1, $2, rem); } | XXX_GENRE STRING '\n' { cdtext_set($1, $2, cdtext); } + | XXX_COMPOSER STRING '\n' { cdtext_set($1, $2, cdtext); } ; rem_item diff --git a/cue_scanner.l b/cue_scanner.l index feb7778..0bdb68f 100644 --- a/cue_scanner.l +++ b/cue_scanner.l @@ -102,6 +102,7 @@ REM { BEGIN(REM); /* exclusive rules for special exceptions */ } DATE { BEGIN(NAME); yylval.ival = REM_DATE; return DATE; } GENRE { BEGIN(NAME); yylval.ival = PTI_GENRE; return XXX_GENRE; } +COMPOSER { BEGIN(NAME); yylval.ival = PTI_COMPOSER; return XXX_COMPOSER; } REPLAYGAIN_ALBUM_GAIN { BEGIN(RPG); yylval.ival = REM_REPLAYGAIN_ALBUM_GAIN; return REPLAYGAIN_ALBUM_GAIN; } REPLAYGAIN_ALBUM_PEAK { BEGIN(RPG); yylval.ival = REM_REPLAYGAIN_ALBUM_PEAK;