diff --git a/Makefile.dryice.js b/Makefile.dryice.js
index 619e074f..e9b042f4 100755
--- a/Makefile.dryice.js
+++ b/Makefile.dryice.js
@@ -200,7 +200,7 @@ console.log('# ace modes ---------');
project.assumeAllFilesLoaded();
[
- "css", "html", "javascript", "php", "python", "xml", "ruby", "java", "c_cpp",
+ "css", "html", "javascript", "php", "python", "lua", "xml", "ruby", "java", "c_cpp",
"coffee", "perl", "csharp", "svg", "clojure", "scss", "json", "groovy",
"ocaml", "scala", "textile", "scad", "markdown"
].forEach(function(mode) {
@@ -368,4 +368,4 @@ function demo() {
filter: [ filterTextPlugin ],
dest: 'build/demo/kitchen-sink-uncompressed.js'
});
-}
\ No newline at end of file
+}
diff --git a/build/demo/kitchen-sink-uncompressed.js b/build/demo/kitchen-sink-uncompressed.js
index 526a4efd..ea2c6f1e 100644
--- a/build/demo/kitchen-sink-uncompressed.js
+++ b/build/demo/kitchen-sink-uncompressed.js
@@ -24864,25 +24864,123 @@ function UndoManagerProxy(undoManager, session) {
exports.Split = Split;
});
-define("text!demo/docs/clojure.clj", [], "(defn parting\n" +
- " \"returns a String parting in a given language\"\n" +
- " ([] (parting \"World\"))\n" +
- " ([name] (parting name \"en\"))\n" +
- " ([name language]\n" +
- " ; condp is similar to a case statement in other languages.\n" +
- " ; It is described in more detail later.\n" +
- " ; It is used here to take different actions based on whether the\n" +
- " ; parameter \"language\" is set to \"en\", \"es\" or something else.\n" +
- " (condp = language\n" +
- " \"en\" (str \"Goodbye, \" name)\n" +
- " \"es\" (str \"Adios, \" name)\n" +
- " (throw (IllegalArgumentException.\n" +
- " (str \"unsupported language \" language))))))\n" +
+define("text!demo/docs/scss.scss", [], "/* style.scss */\n" +
"\n" +
- "(println (parting)) ; -> Goodbye, World\n" +
- "(println (parting \"Mark\")) ; -> Goodbye, Mark\n" +
- "(println (parting \"Mark\" \"es\")) ; -> Adios, Mark\n" +
- "(println (parting \"Mark\", \"xy\")) ; -> java.lang.IllegalArgumentException: unsupported language xy");
+ "#navbar {\n" +
+ " $navbar-width: 800px;\n" +
+ " $items: 5;\n" +
+ " $navbar-color: #ce4dd6;\n" +
+ "\n" +
+ " width: $navbar-width;\n" +
+ " border-bottom: 2px solid $navbar-color;\n" +
+ "\n" +
+ " li {\n" +
+ " float: left;\n" +
+ " width: $navbar-width/$items - 10px;\n" +
+ "\n" +
+ " background-color: lighten($navbar-color, 20%);\n" +
+ " &:hover {\n" +
+ " background-color: lighten($navbar-color, 10%);\n" +
+ " }\n" +
+ " }\n" +
+ "}");
+
+define("text!demo/docs/svg.svg", [], "");
+
+define("text!demo/docs/scala.scala", [], "//http://www.scala-lang.org/node/227\n" +
+ "/* Defines a new method 'sort' for array objects */\n" +
+ "object implicits extends Application {\n" +
+ " implicit def arrayWrapper[A : ClassManifest](x: Array[A]) =\n" +
+ " new {\n" +
+ " def sort(p: (A, A) => Boolean) = {\n" +
+ " util.Sorting.stableSort(x, p); x\n" +
+ " }\n" +
+ " }\n" +
+ " val x = Array(2, 3, 1, 4)\n" +
+ " println(\"x = \"+ x.sort((x: Int, y: Int) => x < y))\n" +
+ "}");
define("text!demo/docs/coffeescript.coffee", [], "#!/usr/bin/env coffee\n" +
"\n" +
@@ -24905,163 +25003,37 @@ define("text!demo/docs/coffeescript.coffee", [], "#!/usr/bin/env coffee\n" +
" this isnt: `just JavaScript`\n" +
" undefined");
-define("text!demo/docs/cpp.cpp", [], "// compound assignment operators\n" +
+define("text!demo/docs/clojure.clj", [], "(defn parting\n" +
+ " \"returns a String parting in a given language\"\n" +
+ " ([] (parting \"World\"))\n" +
+ " ([name] (parting name \"en\"))\n" +
+ " ([name language]\n" +
+ " ; condp is similar to a case statement in other languages.\n" +
+ " ; It is described in more detail later.\n" +
+ " ; It is used here to take different actions based on whether the\n" +
+ " ; parameter \"language\" is set to \"en\", \"es\" or something else.\n" +
+ " (condp = language\n" +
+ " \"en\" (str \"Goodbye, \" name)\n" +
+ " \"es\" (str \"Adios, \" name)\n" +
+ " (throw (IllegalArgumentException.\n" +
+ " (str \"unsupported language \" language))))))\n" +
"\n" +
- "#include \n" +
- "using namespace std;\n" +
- "\n" +
- "int main ()\n" +
- "{\n" +
- " int a, b=3; /* foobar */\n" +
- " a = b;\n" +
- " a+=2; // equivalent to a=a+2\n" +
- " cout << a;\n" +
- " return 0;\n" +
- "}");
+ "(println (parting)) ; -> Goodbye, World\n" +
+ "(println (parting \"Mark\")) ; -> Goodbye, Mark\n" +
+ "(println (parting \"Mark\" \"es\")) ; -> Adios, Mark\n" +
+ "(println (parting \"Mark\", \"xy\")) ; -> java.lang.IllegalArgumentException: unsupported language xy");
-define("text!demo/docs/csharp.cs", [], "public void HelloWorld() {\n" +
- " //Say Hello!\n" +
- " Console.WriteLine(\"Hello World\");\n" +
- "}");
-
-define("text!demo/docs/css.css", [], ".text-layer {\n" +
- " font-family: Monaco, \"Courier New\", monospace;\n" +
- " font-size: 12px;\n" +
- " cursor: text;\n" +
- "}");
-
-define("text!demo/docs/groovy.groovy", [], "//http://groovy.codehaus.org/Concurrency+with+Groovy\n" +
- "import java.util.concurrent.atomic.AtomicInteger\n" +
+define("text!demo/docs/plaintext.txt", [], "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.\n" +
"\n" +
- "def counter = new AtomicInteger()\n" +
+ "Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat.\n" +
"\n" +
- "synchronized out(message) {\n" +
- " println(message)\n" +
- "}\n" +
+ "Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi.\n" +
"\n" +
- "def th = Thread.start {\n" +
- " for( i in 1..8 ) {\n" +
- " sleep 30\n" +
- " out \"thread loop $i\"\n" +
- " counter.incrementAndGet()\n" +
- " }\n" +
- "}\n" +
+ "Nam liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assum. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat.\n" +
"\n" +
- "for( j in 1..4 ) {\n" +
- " sleep 50\n" +
- " out \"main loop $j\"\n" +
- " counter.incrementAndGet()\n" +
- "}\n" +
+ "Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis.\n" +
"\n" +
- "th.join()\n" +
- "\n" +
- "assert counter.get() == 12");
-
-define("text!demo/docs/html.html", [], "\n" +
- " \n" +
- "\n" +
- " \n" +
- "\n" +
- " \n" +
- " \n" +
- " Juhu Kinners
\n" +
- " \n" +
- "");
-
-define("text!demo/docs/java.java", [], "public class InfiniteLoop {\n" +
- "\n" +
- " /*\n" +
- " * This will cause the program to hang...\n" +
- " *\n" +
- " * Taken from:\n" +
- " * http://www.exploringbinary.com/java-hangs-when-converting-2-2250738585072012e-308/\n" +
- " */\n" +
- " public static void main(String[] args) {\n" +
- " double d = Double.parseDouble(\"2.2250738585072012e-308\");\n" +
- "\n" +
- " // unreachable code\n" +
- " System.out.println(\"Value: \" + d);\n" +
- " }\n" +
- "}");
-
-define("text!demo/docs/javascript.js", [], "function foo(items) {\n" +
- " for (var i=0; i\n" +
+ " \n" +
"\n" +
- "let with_return (type t) (f : _ -> t) =\n" +
- " let module M =\n" +
- " struct exception Return of t end\n" +
- " in\n" +
- " let return = { return = (fun x -> raise (M.Return x)); } in\n" +
- " try f return with M.Return x -> x\n" +
+ " \n" +
"\n" +
+ " \n" +
+ " \n" +
+ " Juhu Kinners
\n" +
+ " \n" +
+ "