srecord G22ScriptUtil(G22Utils g22utils) { File scriptToDBDir(G22LeftArrowScript script) { ret script == null ?: script._concepts.conceptsDir(); } S renderScript(S header, S mode, S text) { ret header + "[" + mode +"]\n" + "----\n" + rtrim(text) + "\n" + "----"; } S makeHugeText(L scripts) { new LS out; fOr (script : scripts) { S header = formatColonProperties( "Script Name" := str(script), "Script ID" := script.id, "DB" := f2s(scriptToDBDir(script))); S editedText = script.editedText(); if (editedText != null) out.add(renderScript(header, "Editing", editedText)); if (script.text != null) out.add(renderScript(header, "Saved", script.text)); S codeForAutoRun = script.codeForAutoRun(); if (codeForAutoRun != null) out.add(renderScript(header, "Clear for auto-run", codeForAutoRun)); } ret paragraphs(out); } }