[Turn on line numbering]arg code, object, options; var line, object_parse, results, obj_regexp, meth_regexp, chunk, word, method_parse, last_word, mode, chunk_out, meth_r2; obj_regexp = "\$[a-zA-Z0-9_]+"; meth_regexp = "((^)|[ (!])\.[a-zA-Z0-9_]+\("; meth_r2 = "^(\.[a-zA-Z0-9_]+\()(.*)$"; results = []; for line in (code) { if (match_regexp(line, "^ *//")) { results += ["<font color=\"#a0a0a0\">" + line + "</font>"]; } else { object_parse = line.global_regexp(obj_regexp); last_word = 0; chunk_out = ""; while (object_parse) { [chunk, (word ?= 0), @object_parse] = object_parse; if (last_word && (method_parse = chunk.regexp(meth_r2))) { chunk_out += ._do_method_href(method_parse[1], last_word, options); chunk = method_parse[2]; } method_parse = chunk.global_regexp(meth_regexp); mode = 0; chunk_out += map chunk in (method_parse) to ((mode = !mode) ? chunk : ._do_method_href(chunk, object, options)).join(""); if (word) { last_word = word; if ((| $object_lib.to_dbref(word) |)) chunk_out += "<A HREF=\"/bin/display?target=" + (last_word = word).subrange(2) + "\">" + word + "</A>"; else chunk_out += word; } } results += [chunk_out + object_parse.join("")]; } } return results;
// Created 27-Mar-1995 as a part of ColdCore, see: @help Credit