123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- // CodeMirror, copyright (c) by Marijn Haverbeke and others
- // Distributed under an MIT license: https://codemirror.net/LICENSE
- ;(function () {
- var mode = CodeMirror.getMode({ indentUnit: 2 }, 'text/x-msgenny')
- function MT(name) {
- test.mode(name, mode, Array.prototype.slice.call(arguments, 1), 'msgenny')
- }
- MT(
- 'comments',
- '[comment // a single line comment]',
- '[comment # another single line comment /* and */ ignored here]',
- '[comment /* A multi-line comment even though it contains]',
- '[comment msc keywords and "quoted text"*/]'
- )
- MT('strings', '[string "// a string"]', '[string "a string running over]', '[string two lines"]', '[string "with \\"escaped quote"]')
- MT(
- "xù/ msgenny keywords classify as 'keyword'",
- '[keyword watermark]',
- '[keyword wordwrapentities]',
- '[keyword alt]',
- '[keyword loop]',
- '[keyword opt]',
- '[keyword ref]',
- '[keyword else]',
- '[keyword break]',
- '[keyword par]',
- '[keyword seq]',
- '[keyword assert]'
- )
- MT("xù/ msgenny constants classify as 'variable'", '[variable auto]', '[variable true]', '[variable false]', '[variable on]', '[variable off]')
- MT('mscgen options classify as keyword', '[keyword hscale]', '[keyword width]', '[keyword arcgradient]', '[keyword wordwraparcs]')
- MT(
- 'mscgen arcs classify as keyword',
- '[keyword note]',
- '[keyword abox]',
- '[keyword rbox]',
- '[keyword box]',
- '[keyword |||...---]',
- '[keyword ..--==::]',
- '[keyword ->]',
- '[keyword <-]',
- '[keyword <->]',
- '[keyword =>]',
- '[keyword <=]',
- '[keyword <=>]',
- '[keyword =>>]',
- '[keyword <<=]',
- '[keyword <<=>>]',
- '[keyword >>]',
- '[keyword <<]',
- '[keyword <<>>]',
- '[keyword -x]',
- '[keyword x-]',
- '[keyword -X]',
- '[keyword X-]',
- '[keyword :>]',
- '[keyword <:]',
- '[keyword <:>]'
- )
- MT(
- 'within an attribute list, mscgen/ xù attributes classify as base',
- '[base [[label]',
- '[base idurl id url]',
- '[base linecolor linecolour textcolor textcolour textbgcolor textbgcolour]',
- '[base arclinecolor arclinecolour arctextcolor arctextcolour arctextbgcolor arctextbgcolour]',
- '[base arcskip]]]'
- )
- MT(
- 'outside an attribute list, mscgen/ xù attributes classify as base',
- '[base label]',
- '[base idurl id url]',
- '[base linecolor linecolour textcolor textcolour textbgcolor textbgcolour]',
- '[base arclinecolor arclinecolour arctextcolor arctextcolour arctextbgcolor arctextbgcolour]',
- '[base arcskip]'
- )
- MT(
- 'a typical program',
- '[comment # typical msgenny program]',
- '[keyword wordwraparcs][operator =][variable true][base , ][keyword hscale][operator =][string "0.8"][base , ][keyword arcgradient][operator =][base 30;]',
- '[base a : ][string "Entity A"][base ,]',
- '[base b : Entity B,]',
- '[base c : Entity C;]',
- '[base a ][keyword =>>][base b: ][string "Hello entity B"][base ;]',
- '[base a ][keyword alt][base c][bracket {]',
- '[base a ][keyword <<][base b: ][string "Here\'s an answer dude!"][base ;]',
- '[keyword ---][base : ][string "sorry, won\'t march - comm glitch"]',
- '[base a ][keyword x-][base b: ][string "Here\'s an answer dude! (won\'t arrive...)"][base ;]',
- '[bracket }]',
- '[base c ][keyword :>][base *: What about me?;]'
- )
- })()
|