REACT:Mods
Synthetic Soul's Mod
Synthetic Soul maintains a mod of REACT 2.0.
The main purpose of this mod is to allow users to easily provide additional meta data to the REACT configs. This is achieved by the introduction of an Additional Meta Data dialogue, which allows users to easily create, amend and delete additional tokens, which can be used either to set tag values (e.g.: @discnumber@) , or as variables used in conditions within the config to alter the processing path (e.g.: @_disctype@).
The dialogue is opened using Alt+F5. The new dialogue is non-modal, but will stay on top of the EAC main window; if you minimise EAC the dialogue is minimised also. If you close the dialogue it is simply hidden from view, so your list items will stay intact. Therefore, if you need to set various meta data for each disc that you are ripping, you may choose to keep the dialogue open throughout the process; however, if you only need to use it to alter values infrequently, you can leave it hidden, but know that the values are still available to your config file.
Setting Defaults
Default tokens and their values can be set in the REACT.ini file, under the newly created DefaultMetaData section. When REACT is initially opened, or the user changes a disc, the token values are reset to these defaults. The dialogue allows you to quickly and easily amend the token values on a per disc basic, rather than having to edit the INI manually (see 'A Basic Alternative').
A simple example would be the @discnumber@ and @totaldiscs@ tokens, which are initially set to a default of '1'. If you are ripping a multi-disc album you can alter these values as required, in the knowledge that they will revert to '1' when a new disc is inserted. The article 'REACT:Adding Support For Disc Information' details config changes that will use these tokens to add disc information to your files, and amend the folder structure, if @totaldiscs@ exceeds one.
Processing Tokens
Your additional tokens are inserted into any cuesheets created using REM statements, so are available to ACDIR, and any other application that can parse cuesheets with REM statements. Album-level tokens are added at the top of the cuesheet, with the other global values. Track-level tokens are added beneath the appropriate TRACK statement. Therefore, if you are ripping to an image, you can still use these values with any tracks you create, using ACDIR's $R{} and $r{} syntax, e.g.: $R{DISCNUMBER} and $r{COMPOSER}.
If you do not want certain tokens added to the cuesheet you can prefix the token name with an underscore, e.g.: @_disctype@. These are assumed to be temporary, or processing, tokens, used purely for conditionally executing sections of your config.
Track-Level Tokens
Most tokens are album-related. If you want to set track-level tokens you should use the format <token name>[<track number>], e.g.: composer[1] to set the composer token value for track one. Your config should refer to the token only by name, e.g.: @composer@. When processing track one, @composer@ will be replaced by the value of composer[1], when processing track two, @composer@ will be replaced by the value of composer[2], etc.
Using The Tokens
You can use both @ and $-style tokens in your config. When using $ tokens any integer value will be zero-padded ("4" -> "04") and any string values will be converted to a filename-friendly value, using the standard REACT character replacement. Therefore, if you create a token called discname you can use @discname@ when tagging, and $discname$ when creating a file or folder name.
A Basic Alternative
If you want to use additional tokens in your config but do not want to use this mod you can add additional variables to the existing UserTrackFormats, UserOutputNames, and, more pertinently, UserSettings sections of REACT.ini. You will need to update these variables by hand in a text editor if the value required for the disc you are ripping differs from the current value set.
The current list state is recorded in a new file called "meta.ini" in your REACT folder. The values in this INI are eventually used to replace tokens with values when your config runs. The INI is updated any time that you update or delete an item.