aboutsummaryrefslogtreecommitdiff
path: root/public/plugins/codemirror-5.17.0/mode/diff/diff.js
diff options
context:
space:
mode:
authorRichard Mahn <richmahn@users.noreply.github.com>2016-07-22 23:29:20 -0600
committer无闻 <u@gogs.io>2016-07-23 13:29:20 +0800
commit69dae1ec1c5265e815c8b0fedff3399438e2e380 (patch)
treed3d675c58db46baf72f2402e2f38d2de1cb2cb5e /public/plugins/codemirror-5.17.0/mode/diff/diff.js
parentcf85e9eb7b125156fc3289f6a1306e16b748929b (diff)
Added coding style modes to SimpleMDE (#3286)
* Added coding style modes to SimpleMDE * Moved the CodeMirror addon from simplemd to codemirror directory
Diffstat (limited to 'public/plugins/codemirror-5.17.0/mode/diff/diff.js')
-rw-r--r--public/plugins/codemirror-5.17.0/mode/diff/diff.js47
1 files changed, 47 insertions, 0 deletions
diff --git a/public/plugins/codemirror-5.17.0/mode/diff/diff.js b/public/plugins/codemirror-5.17.0/mode/diff/diff.js
new file mode 100644
index 00000000..fe0305e7
--- /dev/null
+++ b/public/plugins/codemirror-5.17.0/mode/diff/diff.js
@@ -0,0 +1,47 @@
+// CodeMirror, copyright (c) by Marijn Haverbeke and others
+// Distributed under an MIT license: http://codemirror.net/LICENSE
+
+(function(mod) {
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
+ mod(require("../../lib/codemirror"));
+ else if (typeof define == "function" && define.amd) // AMD
+ define(["../../lib/codemirror"], mod);
+ else // Plain browser env
+ mod(CodeMirror);
+})(function(CodeMirror) {
+"use strict";
+
+CodeMirror.defineMode("diff", function() {
+
+ var TOKEN_NAMES = {
+ '+': 'positive',
+ '-': 'negative',
+ '@': 'meta'
+ };
+
+ return {
+ token: function(stream) {
+ var tw_pos = stream.string.search(/[\t ]+?$/);
+
+ if (!stream.sol() || tw_pos === 0) {
+ stream.skipToEnd();
+ return ("error " + (
+ TOKEN_NAMES[stream.string.charAt(0)] || '')).replace(/ $/, '');
+ }
+
+ var token_name = TOKEN_NAMES[stream.peek()] || stream.skipToEnd();
+
+ if (tw_pos === -1) {
+ stream.skipToEnd();
+ } else {
+ stream.pos = tw_pos;
+ }
+
+ return token_name;
+ }
+ };
+});
+
+CodeMirror.defineMIME("text/x-diff", "diff");
+
+});