diff options
author | Adam Chlipala <adam@chlipala.net> | 2014-11-16 14:39:38 -0500 |
---|---|---|
committer | Adam Chlipala <adam@chlipala.net> | 2014-11-16 14:39:38 -0500 |
commit | 86df1742d90c9ae13843188c0772554ed2eaa666 (patch) | |
tree | 0d0ee3699880632ea91cb7e09112789d51bc1aa7 /src | |
parent | 5f984d18d62f3290103540552a82b13c69e364df (diff) |
Some more HTML5 input types
Diffstat (limited to 'src')
-rw-r--r-- | src/monoize.sml | 9 | ||||
-rw-r--r-- | src/urweb.grm | 1 | ||||
-rw-r--r-- | src/urweb.lex | 8 |
3 files changed, 14 insertions, 4 deletions
diff --git a/src/monoize.sml b/src/monoize.sml index 96323c9e..9ca21058 100644 --- a/src/monoize.sml +++ b/src/monoize.sml @@ -3667,6 +3667,15 @@ fun monoExp (env, st, fm) (all as (e, loc)) = | "search" => input "search" | "url_" => input "url" | "tel" => input "tel" + | "color" => input "color" + | "number" => input "number" + | "range" => input "range" + | "date" => input "date" + | "datetime" => input "datetime" + | "datetime_local" => input "datetime-local" + | "month" => input "month" + | "week" => input "week" + | "timeInput" => input "time" | "textarea" => (case targs of [_, (L.CName name, _)] => diff --git a/src/urweb.grm b/src/urweb.grm index 85e5f092..5b568a8c 100644 --- a/src/urweb.grm +++ b/src/urweb.grm @@ -222,6 +222,7 @@ fun tagIn bt = case bt of "table" => "tabl" | "url" => "url_" + | "datetime-local" => "datetime_local" | _ => bt datatype prop_kind = Delete | Update diff --git a/src/urweb.lex b/src/urweb.lex index 15ae448e..0d316ed2 100644 --- a/src/urweb.lex +++ b/src/urweb.lex @@ -277,19 +277,19 @@ xint = x[0-9a-fA-F][0-9a-fA-F]; continue ()) end); -<INITIAL> "<" {id} "/>"=>(let +<INITIAL> "<" {xmlid} "/>"=>(let val tag = String.substring (yytext, 1, size yytext - 3) in Tokens.XML_BEGIN_END (tag, yypos, yypos + size yytext) end); -<INITIAL> "<" {id} ">"=> (let +<INITIAL> "<" {xmlid} ">"=> (let val tag = String.substring (yytext, 1, size yytext - 2) in YYBEGIN XML; xmlTag := tag :: (!xmlTag); Tokens.XML_BEGIN (tag, yypos, yypos + size yytext) end); -<XML> "</" {id} ">" => (let +<XML> "</" {xmlid} ">" => (let val id = String.substring (yytext, 2, size yytext - 3) in case !xmlTag of @@ -304,7 +304,7 @@ xint = x[0-9a-fA-F][0-9a-fA-F]; Tokens.END_TAG (id, yypos, yypos + size yytext) end); -<XML> "<" {id} => (YYBEGIN XMLTAG; +<XML> "<" {xmlid} => (YYBEGIN XMLTAG; Tokens.BEGIN_TAG (String.extract (yytext, 1, NONE), yypos, yypos + size yytext)); |