Hello all. First I must say big thanks to Tycho and of course to Synthetic Soul, you've done a great job.
I have been modifying REACT heavily to my own needs and everything have been going great BUT (the infamous but) when testing with "illegal" chars my work stopped to a screeching halt. So could you please test ripping with "illegal" (and special) chars: &%/\:*?"<>| using these chars in "CD title", "CD artist" and "track titles" produce all kinds of problems.
First I modified and tried to use the image ripping but I realized that using ACDIR I couldn't use the character replacement ini-setting. Then I found CueProc, successor to ACDIR, but reading the documentation and briefly the forum conversation I realized that you can't use char replacement with CueProc either.
Then I went back to track ripping after I invented a way to correctly read the REAL last AUDIO track number from generated cuesheet so that the post-processing would work with CDs with data track (and to get the correct total track number to tags as well).
Here's the solution (you have to have a cuesheet of course):
REM ** UNDER TESTING!!! @sourcecuesheet@ variable maybe not correct, currently I'm testing with hard-coded cuesheet filename until the "illegal" char replacement problem is solved.
REM ** Read the REAL last AUDIO track number from cuesheet. Number is zero-padded.
SET LastTrackNum=
IF EXIST "@sourcecuesheet@" (
FOR /F "tokens=2 delims= " %%i IN ('FINDSTR /R "TRACK.[0-9][0-9].AUDIO" "@sourcecuesheet@"') DO SET LastTrackNum=%%i
)
I plan to use this method to find if the cd has a data track, so I could copy all files automatically to a DATA subfolder (or pack them to archive). One problem is ready to be solved; how can I detect which drive has the cd?
But then, like I said, I stumbled on to this "illegal" chars problem which yields at least according to my tests these problems so far:
1. Cover downloader doesn't work (using AlbumArtDownloaderXUI-0.10.1). Parameters sent are wrong. Example:
"C:\Program Files\REACT2\coverdownloader\albumart.exe" /artist "Supergrass&%/\:*?"<>|äåö" /album "Kiss Of Life (CDS)&%/\:*?"<>|äåö" /path "D:\Music\RIPPED\EAC\Kiss Of Life (CDS)&% äåö.%extension%" /autoclose
SUGGESTION: Escape quote (") chars when starting "albumart.exe". (Escape only necessary chars for the "/artist" & "/album" switches, but use the REACT "Sla_Bks_Col_Qst_Bar_Quo_Ast_Lt_Gt" setting for the "/path" switch.)
CORRECTED:
"C:\Program Files\REACT2\coverdownloader\albumart.exe" /artist "Supergrass&%/\:*?(INSERT_ESCAPE_CHAR_HERE)"<>|äåö" /album "Kiss Of Life (CDS)&%/\:*?(INSERT_ESCAPE_CHAR_HERE)"<>|äåö" /path "D:\Music\RIPPED\EAC\Kiss Of Life (CDS)&%----'[]-äåö.%extension%" /autoclose
2. Additional cue filenames wrong (using CreateAllCuesheets) (and var pointing to it). Not copied to dest. folder. Inside cue-files, FILE lines totally wrongly escaped (EAC style? Impossible to change?!). Also PERFORMER and TITLE lines are escaped: " -> ' ... no solution to this either I think? To me, the inside cuefile escapes are not important.
3. Flac filenames wrong when using IMAGE-RIP. Impossible to change with ACDIR! Can't do nothing with this I guess if you don't change ACDIR (or CueProc).
4. Correct flac tags would be nice; the "-char is replaced with '-char.. all other chars fine. Escape it?
5. Eaclog filename wrong (and var pointing to it). Not copied to dest. folder.
6. Cover image wouldn't be copied to dest. folder.. impossible to do a test because albumart.exe doesn't work currently.. but still, you have to notice that the @cover@ variable could contain wrong string.
7. All cleanup delete commands are not working.
Huh, I hope that's all. Folders and flac filenames are correctly escaped thou.. it's a good start.
I can send you my heavily modded ini and cfg files if you like. By using some diff-program like WinMerge, you could pick out many enhancements I've already made.. I mean, to consider adding them to your mod.. if they're useful in your opinion.
I have many great (well, at least I think so) suggestions and tricks to share but I would like to have my settings to work properly before I could share with you all. And I do have so much that I think it's wise not to post all of them in one post. Well, I'll see what would be the proper way to post those after I get this char replacement problem solved.
EDIT: removed OT questions.