view rhodecode/public/js/mode/haxe/index.html @ 4026:a60a0e9092c6

added codemirror edit mode with autodetection
author Marcin Kuzminski <marcin@python-works.com>
date Thu, 20 Jun 2013 23:53:18 +0200
parents
children c9bcfe2d2ade
line wrap: on
line source

<!doctype html>
<html>
  <head>
    <meta charset="utf-8">
    <title>CodeMirror: Haxe mode</title>
    <link rel="stylesheet" href="../../lib/codemirror.css">
    <script src="../../lib/codemirror.js"></script>
    <script src="haxe.js"></script>
    <link rel="stylesheet" href="../../doc/docs.css">
    <style type="text/css">.CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}</style>
  </head>
  <body>
    <h1>CodeMirror: Haxe mode</h1>

<div><textarea id="code" name="code">
import one.two.Three;

@attr("test")
class Foo&lt;T&gt; extends Three
{
	public function new()
	{
		noFoo = 12;
	}
	
	public static inline function doFoo(obj:{k:Int, l:Float}):Int
	{
		for(i in 0...10)
		{
			obj.k++;
			trace(i);
			var var1 = new Array();
			if(var1.length > 1)
				throw "Error";
		}
		// The following line should not be colored, the variable is scoped out
		var1;
		/* Multi line
		 * Comment test
		 */
		return obj.k;
	}
	private function bar():Void
	{
		#if flash
		var t1:String = "1.21";
		#end
		try {
			doFoo({k:3, l:1.2});
		}
		catch (e : String) {
			trace(e);
		}
		var t2:Float = cast(3.2);
		var t3:haxe.Timer = new haxe.Timer();
		var t4 = {k:Std.int(t2), l:Std.parseFloat(t1)};
		var t5 = ~/123+.*$/i;
		doFoo(t4);
		untyped t1 = 4;
		bob = new Foo&lt;Int&gt;
	}
	public var okFoo(default, never):Float;
	var noFoo(getFoo, null):Int;
	function getFoo():Int {
		return noFoo;
	}
	
	public var three:Int;
}
enum Color
{
	red;
	green;
	blue;
	grey( v : Int );
	rgb (r:Int,g:Int,b:Int);
}
</textarea></div>

    <script>
      var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
        lineNumbers: true,
        indentUnit: 4,
        indentWithTabs: true
      });
    </script>

    <p><strong>MIME types defined:</strong> <code>text/x-haxe</code>.</p>
  </body>
</html>