The following fields were missing:
With %HZH_FIELDS_MISSING being an undocumented string so above parsed. You can also access %HZH_FIELDS_INVALID, but *FIELDNAME won't trigger that.
Hacked Hazel-Subst to recursively replace all instances of RE. Also, to allow use of HZML tokens in the replacement string, so the replacement can use the replaced text itself, eg. %HZV_RE0, %HZV_RE1, etc. There is a maximum replacement of 100 to avoid an infinite recursive replacement. This until I implement the better solution of replacing the string in-place rather than passing off to strsub and doing the whole damn thing over, which is f-ing stupid.
So, for now, be careful what you use in the RE. Something like RE="[^0-9]" with a Replace="anythingnotanumberonethroughnine" is not going to work proper.
20031219;4.047
Added Hazel_regsub to do in-place regular expression replacements, but not sure whether or not to initially hzmlsub the Replace attribute value (eg. someone wants to use an HZML token as of the calling of the loop as the replacement) or to do it for each replacement iteration (eg. they want to use something like %HZV_RE0 to reference a match). For now, the replacement will be parsed anew for each time it is needed. The better solution is to allow escaping %HZ with backslashes, and backslashes with another backslash. (Or to allow $[0-9] subs in this replacement only.)
Instead of aborting the save of a historical query if an SKUID is too long, complain via hzdebug and write up to MAX_SKU_LEN. (In save_historical_query.)
20031223;4.048
Hacked evaluate_HZML_Choice to take "Value" attribute before "Token" for the subject value.
%HZN namespace can now be used to access DICT_INPUT values.
20031230;4.049
Added DISABLE_PICKUP_REDIRECTION to, well, disable redirection in action=pickup to a URL ending with the actual filename.
20040107;4.050
Added X_javascript