openrat-cms

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

test.js (1887B)


      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({}, "shell");
      6   function MT(name) { test.mode(name, mode, Array.prototype.slice.call(arguments, 1)); }
      7 
      8   MT("var",
      9      "text [def $var] text");
     10   MT("varBraces",
     11      "text[def ${var}]text");
     12   MT("varVar",
     13      "text [def $a$b] text");
     14   MT("varBracesVarBraces",
     15      "text[def ${a}${b}]text");
     16 
     17   MT("singleQuotedVar",
     18      "[string 'text $var text']");
     19   MT("singleQuotedVarBraces",
     20      "[string 'text ${var} text']");
     21 
     22   MT("doubleQuotedVar",
     23      '[string "text ][def $var][string  text"]');
     24   MT("doubleQuotedVarBraces",
     25      '[string "text][def ${var}][string text"]');
     26   MT("doubleQuotedVarPunct",
     27      '[string "text ][def $@][string  text"]');
     28   MT("doubleQuotedVarVar",
     29      '[string "][def $a$b][string "]');
     30   MT("doubleQuotedVarBracesVarBraces",
     31      '[string "][def ${a}${b}][string "]');
     32 
     33   MT("notAString",
     34      "text\\'text");
     35   MT("escapes",
     36      "outside\\'\\\"\\`\\\\[string \"inside\\`\\'\\\"\\\\`\\$notAVar\"]outside\\$\\(notASubShell\\)");
     37 
     38   MT("subshell",
     39      "[builtin echo] [quote $(whoami)] s log, stardate [quote `date`].");
     40   MT("doubleQuotedSubshell",
     41      "[builtin echo] [string \"][quote $(whoami)][string 's log, stardate `date`.\"]");
     42 
     43   MT("hashbang",
     44      "[meta #!/bin/bash]");
     45   MT("comment",
     46      "text [comment # Blurb]");
     47 
     48   MT("numbers",
     49      "[number 0] [number 1] [number 2]");
     50   MT("keywords",
     51      "[keyword while] [atom true]; [keyword do]",
     52      "  [builtin sleep] [number 3]",
     53      "[keyword done]");
     54   MT("options",
     55      "[builtin ls] [attribute -l] [attribute --human-readable]");
     56   MT("operator",
     57      "[def var][operator =]value");
     58 
     59   MT("doubleParens",
     60      "foo [quote $((bar))]")
     61 
     62   MT("nested braces",
     63      "[builtin echo] [def ${A[${B}]]}]")
     64 })();