Function: sort_text --Usage-- > sort_text(order: order specification, some_text) > sort_rule(order: order specification)(some_text) Sort a string or filter it by keeping specific characters. When the @order@ parameter is not given, the input is sorted in alphabetical order. Otherwise the @order@ parameter determines what characters to show in the output. The @order@ is a string consisting of multiple ''parts'', each part selects a specific thing from the input. ! Part sort("zzyyxx") Description | @"x"@ @"xx"@ A normal character, selects all matching characters from the input | @""@ @"xy"@ Selects the characters from the input, but only once. @""@ is the same as @""@. | @"[wxy]"@ @"yyxx"@ Selects the given characters, but keep them in the same order as in the input. | @"(xwz)"@ @"zzxx"@ Selects the given characters, and put them in the order that minimizes the distance. around a 'circle'. Imagine w x and y in a circle, then "zx" is shorter then "x.z" because the latter passes the "w" space. This sorting option is used to sort colored mana symbols in Magic. This function is available in [[script:rule form]]. --Parameters-- ! Parameter Type Description | @input@ [[type:string]] Text to sort | @order@ [[type:string]] (optional) Order specification --Examples-- > sort_text("banana") == "aaabnn" > sort_text(order: "na", "banana") == "nnaaa" > sort_text(order: "", "banana") == "na" > sort_text(order: "[na]", "banana") == "anana" > sort_text(order: "[1234567890](wubrg)", "21wg") == "21gw" > > f := sort_rule(order: "[1234567890](wubrg)") > f("21wg") == "21gw"