@pam_whitfield no idea just always had the xo_Is copied from one .inp to the next over the years, but it certainly works without xo_Is..
Now I naively thought about a way of generating a unique string for within each xdd, and the first thing I thought of is the xdd name itself. This maybe a bit weird but it seems to work:
xdd DATA/scan-0000.xy
xdd DATA/scan-0001.xy
xdd DATA/scan-0002.xy
for xdds {
local scale 1 min 0.95 max 1.05
macro fit_name
{
macro Variable_Name_From_String(Get(xdd_path_name)) {Get(xdd_path_name)}
}
fit_obj fit_name = scale * empty;
}
user_y empty{ _xy #include "empty.xy" }
Only the Plot_Fit_Obj part is now missing, and it wouldn't take
Plot_Fit_Obj(fit_name , "empty"), but I can live without this.
Any thoughts? or ways of making this more elegant?