Since ECMerge 2.2, we introduced 'macro settings'. These settings are saved inside the Ellié Computing Merge settings file.
What is the usage of these macro settings?
The idea behind macro settings is to let the macro conceptor to store data between two executions of a macro so as to ease the usage of the macro (and even between two runs of the ECMerge program).
A macro will thus store few data in the macro settings which are of interest when reusing the macro, such as MRU (Most Recently Used item lists). A macro which is configurable could store options as well there, for exemple, as menus are now available to macros, checkable menu items could store their state there so as to remain checked next time the macro is run.
What are exactly these "macro settings" and how are they handled?
The macro settings are stored in a simple ECMAScript Object
object, named 'scripts_settings' and member of
ECMerge uses the support for toSource() function new to version 2.2 ECMASCript engine to serialize the Application.scripts_settings object. This function is supported on all base types (as booleans, strings, numbers, Object objects, Array objects, Date objects, Error objects).
The _facility.js file (which you can find in application macro directory) contains functions which will help maintain MRU and macro settings in general, take time to read it as the function are documented directly in the scripts.