File Manager

Current Directory: /home/astoriaah/www/old15/media/editors/codemirror/addon/edit
Viewing File: /home/astoriaah/www/old15/media/editors/codemirror/addon/edit/closebrackets.min.js
!function(e){"object"==typeof exports&&"object"==typeof module?e(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],e):e(CodeMirror)}(function(e){function n(e,n){var t=e.getRange(c(n.line,n.ch-1),c(n.line,n.ch+1));return 2==t.length?t:null}function t(n,t,r){var i=n.getLine(t.line),o=n.getTokenAt(t);if(/\bstring2?\b/.test(o.type))return!1;var a=new e.StringStream(i.slice(0,t.ch)+r+i.slice(t.ch),4);for(a.pos=a.start=o.start;;){var l=n.getMode().token(a,o.state);if(a.pos>=t.ch+1)return/\bstring2?\b/.test(l);a.start=a.pos}}function r(r,i){for(var o={name:"autoCloseBrackets",Backspace:function(t){if(t.getOption("disableInput"))return e.Pass;for(var i=t.listSelections(),o=0;o<i.length;o++){if(!i[o].empty())return e.Pass;var a=n(t,i[o].head);if(!a||r.indexOf(a)%2!=0)return e.Pass}for(var o=i.length-1;o>=0;o--){var l=i[o].head;t.replaceRange("",c(l.line,l.ch-1),c(l.line,l.ch+1))}}},a="",l=0;l<r.length;l+=2)(function(n,r){a+=r,o["'"+n+"'"]=function(o){if(o.getOption("disableInput"))return e.Pass;for(var l,f,u=o.listSelections(),h=0;h<u.length;h++){var d,g=u[h],p=g.head,f=o.getRange(p,c(p.line,p.ch+1));if(g.empty())if(n==r&&f==r)d=o.getRange(p,c(p.line,p.ch+3))==n+n+n?"skipThree":"skip";else if(n==r&&p.ch>1&&i.indexOf(n)>=0&&o.getRange(c(p.line,p.ch-2),p)==n+n&&(p.ch<=2||o.getRange(c(p.line,p.ch-3),c(p.line,p.ch-2))!=n))d="addFour";else if('"'==n||"'"==n){if(e.isWordChar(f)||!t(o,p,n))return e.Pass;d="both"}else{if(!(o.getLine(p.line).length==p.ch||a.indexOf(f)>=0||s.test(f)))return e.Pass;d="both"}else d="surround";if(l){if(l!=d)return e.Pass}else l=d}o.operation(function(){if("skip"==l)o.execCommand("goCharRight");else if("skipThree"==l)for(var e=0;3>e;e++)o.execCommand("goCharRight");else if("surround"==l){for(var t=o.getSelections(),e=0;e<t.length;e++)t[e]=n+t[e]+r;o.replaceSelections(t,"around")}else"both"==l?(o.replaceSelection(n+r,null),o.execCommand("goCharLeft")):"addFour"==l&&(o.replaceSelection(n+n+n+n,"before"),o.execCommand("goCharRight"))})},n!=r&&(o["'"+r+"'"]=function(n){for(var t=n.listSelections(),i=0;i<t.length;i++){var o=t[i];if(!o.empty()||n.getRange(o.head,c(o.head.line,o.head.ch+1))!=r)return e.Pass}n.execCommand("goCharRight")})})(r.charAt(l),r.charAt(l+1));return o}function i(t){return function(r){if(r.getOption("disableInput"))return e.Pass;for(var i=r.listSelections(),o=0;o<i.length;o++){if(!i[o].empty())return e.Pass;var a=n(r,i[o].head);if(!a||t.indexOf(a)%2!=0)return e.Pass}r.operation(function(){r.replaceSelection("\n\n",null),r.execCommand("goCharLeft"),i=r.listSelections();for(var e=0;e<i.length;e++){var n=i[e].head.line;r.indentLine(n,null,!0),r.indentLine(n+1,null,!0)}})}}var o="()[]{}''\"\"",a="'\"",l="[]{}",s=/\s/,c=e.Pos;e.defineOption("autoCloseBrackets",!1,function(n,t,s){if(s!=e.Init&&s&&n.removeKeyMap("autoCloseBrackets"),t){var c=o,f=a,u=l;"string"==typeof t?c=t:"object"==typeof t&&(null!=t.pairs&&(c=t.pairs),null!=t.triples&&(f=t.triples),null!=t.explode&&(u=t.explode));var h=r(c,f);u&&(h.Enter=i(u)),n.addKeyMap(h)}})});