using System; using System.Text; using System.Text.RegularExpressions; namespace CodeFormatter { /// /// Generates color-coded HTML 4.01 from MSH (code name Monad) source code. /// public class MshFormat : CodeFormat { /// /// Regular expression string to match single line comments (#). /// protected override string CommentRegEx { get { return @"#.*?(?=\r|\n)"; } } /// /// Regular expression string to match string and character literals. /// protected override string StringRegEx { get { return @"@?""""|@?"".*?(?!\\).""|''|'.*?(?!\\).'"; } } /// /// The list of MSH keywords. /// protected override string Keywords { get { return "function filter global script local private if else" + " elseif for foreach in while switch continue break" + " return default param begin process end throw trap"; } } /// /// Use preprocessors property to hilight operators. /// protected override string Preprocessors { get { return "-band -bor -match -notmatch -like -notlike -eq -ne" + " -gt -ge -lt -le -is -imatch -inotmatch -ilike" + " -inotlike -ieq -ine -igt -ige -ilt -ile"; } } } }