openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

test.min.js (9437B)


      1 // CodeMirror, copyright (c) by Marijn Haverbeke and others
      2 // Distributed under an MIT license: http://codemirror.net/LICENSE
      3 
      4 (function() {
      5   var mode = CodeMirror.getMode({tabSize: 4}, 'textile');
      6   function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); }
      7 
      8   MT('simpleParagraphs',
      9       'Some text.',
     10       '',
     11       'Some more text.');
     12 
     13   /*
     14    * Phrase Modifiers
     15    */
     16 
     17   MT('em',
     18       'foo [em _bar_]');
     19 
     20   MT('emBoogus',
     21       'code_mirror');
     22 
     23   MT('strong',
     24       'foo [strong *bar*]');
     25 
     26   MT('strongBogus',
     27       '3 * 3 = 9');
     28 
     29   MT('italic',
     30       'foo [em __bar__]');
     31 
     32   MT('italicBogus',
     33       'code__mirror');
     34 
     35   MT('bold',
     36       'foo [strong **bar**]');
     37 
     38   MT('boldBogus',
     39       '3 ** 3 = 27');
     40 
     41   MT('simpleLink',
     42       '[link "CodeMirror":http://codemirror.net]');
     43 
     44   MT('referenceLink',
     45       '[link "CodeMirror":code_mirror]',
     46       'Normal Text.',
     47       '[link [[code_mirror]]http://codemirror.net]');
     48 
     49   MT('footCite',
     50       'foo bar[qualifier [[1]]]');
     51 
     52   MT('footCiteBogus',
     53       'foo bar[[1a2]]');
     54 
     55   MT('special-characters',
     56           'Registered [tag (r)], ' +
     57           'Trademark [tag (tm)], and ' +
     58           'Copyright [tag (c)] 2008');
     59 
     60   MT('cite',
     61       "A book is [keyword ??The Count of Monte Cristo??] by Dumas.");
     62 
     63   MT('additionAndDeletion',
     64       'The news networks declared [negative -Al Gore-] ' +
     65         '[positive +George W. Bush+] the winner in Florida.');
     66 
     67   MT('subAndSup',
     68       'f(x, n) = log [builtin ~4~] x [builtin ^n^]');
     69 
     70   MT('spanAndCode',
     71       'A [quote %span element%] and [atom @code element@]');
     72 
     73   MT('spanBogus',
     74       'Percentage 25% is not a span.');
     75 
     76   MT('citeBogus',
     77       'Question? is not a citation.');
     78 
     79   MT('codeBogus',
     80       'user@example.com');
     81 
     82   MT('subBogus',
     83       '~username');
     84 
     85   MT('supBogus',
     86       'foo ^ bar');
     87 
     88   MT('deletionBogus',
     89       '3 - 3 = 0');
     90 
     91   MT('additionBogus',
     92       '3 + 3 = 6');
     93 
     94   MT('image',
     95       'An image: [string !http://www.example.com/image.png!]');
     96 
     97   MT('imageWithAltText',
     98       'An image: [string !http://www.example.com/image.png (Alt Text)!]');
     99 
    100   MT('imageWithUrl',
    101       'An image: [string !http://www.example.com/image.png!:http://www.example.com/]');
    102 
    103   /*
    104    * Headers
    105    */
    106 
    107   MT('h1',
    108       '[header&header-1 h1. foo]');
    109 
    110   MT('h2',
    111       '[header&header-2 h2. foo]');
    112 
    113   MT('h3',
    114       '[header&header-3 h3. foo]');
    115 
    116   MT('h4',
    117       '[header&header-4 h4. foo]');
    118 
    119   MT('h5',
    120       '[header&header-5 h5. foo]');
    121 
    122   MT('h6',
    123       '[header&header-6 h6. foo]');
    124 
    125   MT('h7Bogus',
    126       'h7. foo');
    127 
    128   MT('multipleHeaders',
    129       '[header&header-1 h1. Heading 1]',
    130       '',
    131       'Some text.',
    132       '',
    133       '[header&header-2 h2. Heading 2]',
    134       '',
    135       'More text.');
    136 
    137   MT('h1inline',
    138       '[header&header-1 h1. foo ][header&header-1&em _bar_][header&header-1  baz]');
    139 
    140   /*
    141    * Lists
    142    */
    143 
    144   MT('ul',
    145       'foo',
    146       'bar',
    147       '',
    148       '[variable-2 * foo]',
    149       '[variable-2 * bar]');
    150 
    151   MT('ulNoBlank',
    152       'foo',
    153       'bar',
    154       '[variable-2 * foo]',
    155       '[variable-2 * bar]');
    156 
    157   MT('ol',
    158       'foo',
    159       'bar',
    160       '',
    161       '[variable-2 # foo]',
    162       '[variable-2 # bar]');
    163 
    164   MT('olNoBlank',
    165       'foo',
    166       'bar',
    167       '[variable-2 # foo]',
    168       '[variable-2 # bar]');
    169 
    170   MT('ulFormatting',
    171       '[variable-2 * ][variable-2&em _foo_][variable-2  bar]',
    172       '[variable-2 * ][variable-2&strong *][variable-2&em&strong _foo_]' +
    173         '[variable-2&strong *][variable-2  bar]',
    174       '[variable-2 * ][variable-2&strong *foo*][variable-2  bar]');
    175 
    176   MT('olFormatting',
    177       '[variable-2 # ][variable-2&em _foo_][variable-2  bar]',
    178       '[variable-2 # ][variable-2&strong *][variable-2&em&strong _foo_]' +
    179         '[variable-2&strong *][variable-2  bar]',
    180       '[variable-2 # ][variable-2&strong *foo*][variable-2  bar]');
    181 
    182   MT('ulNested',
    183       '[variable-2 * foo]',
    184       '[variable-3 ** bar]',
    185       '[keyword *** bar]',
    186       '[variable-2 **** bar]',
    187       '[variable-3 ** bar]');
    188 
    189   MT('olNested',
    190       '[variable-2 # foo]',
    191       '[variable-3 ## bar]',
    192       '[keyword ### bar]',
    193       '[variable-2 #### bar]',
    194       '[variable-3 ## bar]');
    195 
    196   MT('ulNestedWithOl',
    197       '[variable-2 * foo]',
    198       '[variable-3 ## bar]',
    199       '[keyword *** bar]',
    200       '[variable-2 #### bar]',
    201       '[variable-3 ** bar]');
    202 
    203   MT('olNestedWithUl',
    204       '[variable-2 # foo]',
    205       '[variable-3 ** bar]',
    206       '[keyword ### bar]',
    207       '[variable-2 **** bar]',
    208       '[variable-3 ## bar]');
    209 
    210   MT('definitionList',
    211       '[number - coffee := Hot ][number&em _and_][number  black]',
    212       '',
    213       'Normal text.');
    214 
    215   MT('definitionListSpan',
    216       '[number - coffee :=]',
    217       '',
    218       '[number Hot ][number&em _and_][number  black =:]',
    219       '',
    220       'Normal text.');
    221 
    222   MT('boo',
    223       '[number - dog := woof woof]',
    224       '[number - cat := meow meow]',
    225       '[number - whale :=]',
    226       '[number Whale noises.]',
    227       '',
    228       '[number Also, ][number&em _splashing_][number . =:]');
    229 
    230   /*
    231    * Attributes
    232    */
    233 
    234   MT('divWithAttribute',
    235       '[punctuation div][punctuation&attribute (#my-id)][punctuation . foo bar]');
    236 
    237   MT('divWithAttributeAnd2emRightPadding',
    238       '[punctuation div][punctuation&attribute (#my-id)((][punctuation . foo bar]');
    239 
    240   MT('divWithClassAndId',
    241       '[punctuation div][punctuation&attribute (my-class#my-id)][punctuation . foo bar]');
    242 
    243   MT('paragraphWithCss',
    244       'p[attribute {color:red;}]. foo bar');
    245 
    246   MT('paragraphNestedStyles',
    247       'p. [strong *foo ][strong&em _bar_][strong *]');
    248 
    249   MT('paragraphWithLanguage',
    250       'p[attribute [[fr]]]. Parlez-vous français?');
    251 
    252   MT('paragraphLeftAlign',
    253       'p[attribute <]. Left');
    254 
    255   MT('paragraphRightAlign',
    256       'p[attribute >]. Right');
    257 
    258   MT('paragraphRightAlign',
    259       'p[attribute =]. Center');
    260 
    261   MT('paragraphJustified',
    262       'p[attribute <>]. Justified');
    263 
    264   MT('paragraphWithLeftIndent1em',
    265       'p[attribute (]. Left');
    266 
    267   MT('paragraphWithRightIndent1em',
    268       'p[attribute )]. Right');
    269 
    270   MT('paragraphWithLeftIndent2em',
    271       'p[attribute ((]. Left');
    272 
    273   MT('paragraphWithRightIndent2em',
    274       'p[attribute ))]. Right');
    275 
    276   MT('paragraphWithLeftIndent3emRightIndent2em',
    277       'p[attribute ((())]. Right');
    278 
    279   MT('divFormatting',
    280       '[punctuation div. ][punctuation&strong *foo ]' +
    281         '[punctuation&strong&em _bar_][punctuation&strong *]');
    282 
    283   MT('phraseModifierAttributes',
    284       'p[attribute (my-class)]. This is a paragraph that has a class and' +
    285       ' this [em _][em&attribute (#special-phrase)][em emphasized phrase_]' +
    286       ' has an id.');
    287 
    288   MT('linkWithClass',
    289       '[link "(my-class). This is a link with class":http://redcloth.org]');
    290 
    291   /*
    292    * Layouts
    293    */
    294 
    295   MT('paragraphLayouts',
    296       'p. This is one paragraph.',
    297       '',
    298       'p. This is another.');
    299 
    300   MT('div',
    301       '[punctuation div. foo bar]');
    302 
    303   MT('pre',
    304       '[operator pre. Text]');
    305 
    306   MT('bq.',
    307       '[bracket bq. foo bar]',
    308       '',
    309       'Normal text.');
    310 
    311   MT('footnote',
    312       '[variable fn123. foo ][variable&strong *bar*]');
    313 
    314   /*
    315    * Spanning Layouts
    316    */
    317 
    318   MT('bq..ThenParagraph',
    319       '[bracket bq.. foo bar]',
    320       '',
    321       '[bracket More quote.]',
    322       'p. Normal Text');
    323 
    324   MT('bq..ThenH1',
    325       '[bracket bq.. foo bar]',
    326       '',
    327       '[bracket More quote.]',
    328       '[header&header-1 h1. Header Text]');
    329 
    330   MT('bc..ThenParagraph',
    331       '[atom bc.. # Some ruby code]',
    332       '[atom obj = {foo: :bar}]',
    333       '[atom puts obj]',
    334       '',
    335       '[atom obj[[:love]] = "*love*"]',
    336       '[atom puts obj.love.upcase]',
    337       '',
    338       'p. Normal text.');
    339 
    340   MT('fn1..ThenParagraph',
    341       '[variable fn1.. foo bar]',
    342       '',
    343       '[variable More.]',
    344       'p. Normal Text');
    345 
    346   MT('pre..ThenParagraph',
    347       '[operator pre.. foo bar]',
    348       '',
    349       '[operator More.]',
    350       'p. Normal Text');
    351 
    352   /*
    353    * Tables
    354    */
    355 
    356   MT('table',
    357       '[variable-3&operator |_. name |_. age|]',
    358       '[variable-3 |][variable-3&strong *Walter*][variable-3 |   5  |]',
    359       '[variable-3 |Florence|   6  |]',
    360       '',
    361       'p. Normal text.');
    362 
    363   MT('tableWithAttributes',
    364       '[variable-3&operator |_. name |_. age|]',
    365       '[variable-3 |][variable-3&attribute /2.][variable-3  Jim |]',
    366       '[variable-3 |][variable-3&attribute \\2{color: red}.][variable-3  Sam |]');
    367 
    368   /*
    369    * HTML
    370    */
    371 
    372   MT('html',
    373       '[comment <div id="wrapper">]',
    374       '[comment <section id="introduction">]',
    375       '',
    376       '[header&header-1 h1. Welcome]',
    377       '',
    378       '[variable-2 * Item one]',
    379       '[variable-2 * Item two]',
    380       '',
    381       '[comment <a href="http://example.com">Example</a>]',
    382       '',
    383       '[comment </section>]',
    384       '[comment </div>]');
    385 
    386   MT('inlineHtml',
    387       'I can use HTML directly in my [comment <span class="youbetcha">Textile</span>].');
    388 
    389   /*
    390    * No-Textile
    391    */
    392 
    393   MT('notextile',
    394     '[string-2 notextile. *No* formatting]');
    395 
    396   MT('notextileInline',
    397       'Use [string-2 ==*asterisks*==] for [strong *strong*] text.');
    398 
    399   MT('notextileWithPre',
    400       '[operator pre. *No* formatting]');
    401 
    402   MT('notextileWithSpanningPre',
    403       '[operator pre.. *No* formatting]',
    404       '',
    405       '[operator *No* formatting]');
    406 
    407   /* Only toggling phrases between non-word chars. */
    408 
    409   MT('phrase-in-word',
    410      'foo_bar_baz');
    411 
    412   MT('phrase-non-word',
    413      '[negative -x-] aaa-bbb ccc-ddd [negative -eee-] fff [negative -ggg-]');
    414 
    415   MT('phrase-lone-dash',
    416      'foo - bar - baz');
    417 })();