diff --git a/demo/kitchen-sink/docs/.gitignore b/demo/kitchen-sink/docs/.gitignore new file mode 100644 index 00000000..56ec8fd9 --- /dev/null +++ b/demo/kitchen-sink/docs/.gitignore @@ -0,0 +1,11 @@ +# A sample .gitignore file. + +.buildlog +.DS_Store +.svn + +# Negated patterns: +!foo.bar + +# Also ignore user settings... +/.settings diff --git a/lib/ace/ext/modelist.js b/lib/ace/ext/modelist.js index 57470ed0..15a31610 100644 --- a/lib/ace/ext/modelist.js +++ b/lib/ace/ext/modelist.js @@ -70,6 +70,7 @@ var supportedModes = { Forth: ["frt|fs|ldr"], FTL: ["ftl"], Gherkin: ["feature"], + Gitignore: ["^.gitignore"], Glsl: ["glsl|frag|vert"], golang: ["go"], Groovy: ["groovy"], diff --git a/lib/ace/mode/gitignore.js b/lib/ace/mode/gitignore.js new file mode 100644 index 00000000..fd9b04f4 --- /dev/null +++ b/lib/ace/mode/gitignore.js @@ -0,0 +1,19 @@ + +define(function(require, exports, module) { +"use strict"; + +var oop = require("../lib/oop"); +var TextMode = require("./text").Mode; +var GitignoreHighlightRules = require("./gitignore_highlight_rules").GitignoreHighlightRules; + +var Mode = function() { + this.HighlightRules = GitignoreHighlightRules; +}; +oop.inherits(Mode, TextMode); + +(function() { + this.$id = "ace/mode/gitignore"; +}).call(Mode.prototype); + +exports.Mode = Mode; +}); diff --git a/lib/ace/mode/gitignore_highlight_rules.js b/lib/ace/mode/gitignore_highlight_rules.js new file mode 100644 index 00000000..cfa42afa --- /dev/null +++ b/lib/ace/mode/gitignore_highlight_rules.js @@ -0,0 +1,31 @@ +define(function(require, exports, module) { +"use strict"; + +var oop = require("../lib/oop"); +var TextHighlightRules = require("./text_highlight_rules").TextHighlightRules; + +var GitignoreHighlightRules = function() { + this.$rules = { + "start" : [ + { + token : "comment", + regex : /^\s*#.*$/ + }, { + token : "keyword", // negated patterns + regex : /^\s*!.*$/ + } + ] + }; + + this.normalizeRules(); +}; + +GitignoreHighlightRules.metaData = { + fileTypes: ['gitignore'], + name: 'Gitignore' +}; + +oop.inherits(GitignoreHighlightRules, TextHighlightRules); + +exports.GitignoreHighlightRules = GitignoreHighlightRules; +}); diff --git a/lib/ace/snippets/gitignore.js b/lib/ace/snippets/gitignore.js new file mode 100644 index 00000000..0a632c99 --- /dev/null +++ b/lib/ace/snippets/gitignore.js @@ -0,0 +1,7 @@ +define(function(require, exports, module) { +"use strict"; + +exports.snippetText = require("../requirejs/text!./gitignore.snippets"); +exports.scope = "gitignore"; + +}); diff --git a/lib/ace/snippets/gitignore.snippets b/lib/ace/snippets/gitignore.snippets new file mode 100644 index 00000000..e69de29b