diff --git a/lib/ace/mode/sql_highlight_rules.js b/lib/ace/mode/sql_highlight_rules.js index 5030ecc7..a74bce26 100644 --- a/lib/ace/mode/sql_highlight_rules.js +++ b/lib/ace/mode/sql_highlight_rules.js @@ -38,8 +38,7 @@ var SqlHighlightRules = function() { var keywords = ( "select|insert|update|delete|from|where|and|or|group|by|order|limit|offset|having|as|case|" + - "when|else|end|type|left|right|join|on|outer|desc|asc|union|create|table|primary|key|if|" + - "foreign|not|references|default|null" + "when|else|end|type|left|right|join|on|outer|desc|asc|union|create|table" ); var builtinConstants = ( @@ -51,15 +50,14 @@ var SqlHighlightRules = function() { ); var dataTypes = ( - "int|numeric|decimal|date|varchar|char|bigint|float|double|bit|binary|text|set|timestamp|" + - "money|real|number" + "int|numeric|decimal|date|varchar|char|bigint|float|double|bit|binary|text|timestamp|" + + "money|real|number|integer|timezone|smallint" ); var keywordMapper = this.createKeywordMapper({ "support.function": builtinFunctions, "keyword": keywords, - "constant.language": builtinConstants, - "storage.type": dataTypes + "constant.language": builtinConstants }, "identifier", true); this.$rules = { @@ -91,6 +89,9 @@ var SqlHighlightRules = function() { }, { token : "paren.rparen", regex : "[\\)]" + }, { + token : "keyword.keyword", + regex : "(primary key)|if|(foreign key)|not|references|default|null|set|(drop database)|(drop table)" }, { token : "text", regex : "\\s+" diff --git a/lib/ace/snippets/mask.js b/lib/ace/snippets/mask.js new file mode 100644 index 00000000..7fbca678 --- /dev/null +++ b/lib/ace/snippets/mask.js @@ -0,0 +1,7 @@ +define(function(require, exports, module) { +"use strict"; + +exports.snippetText = require("../requirejs/text!./mask.snippets"); +exports.scope = "mask"; + +}); diff --git a/lib/ace/snippets/mask.snippets b/lib/ace/snippets/mask.snippets new file mode 100644 index 00000000..e69de29b