b0y-101 Mini Shell


Current Path : E:/www/km/21/media/editors/codemirror/addon/fold/
File Upload :
Current File : E:/www/km/21/media/editors/codemirror/addon/fold/brace-fold.min.js

!(function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)})((function(a){"use strict";a.registerHelper("fold","brace",(function(b,c){function d(d){for(var f=c.ch,g=0;;){var h=f<=0?-1:j.lastIndexOf(d,f-1);if(-1!=h){if(1==g&&h<c.ch)break;if(e=b.getTokenTypeAt(a.Pos(i,h+1)),!/^(comment|string)/.test(e))return h+1;f=h-1}else{if(1==g)break;g=1,f=j.length}}}var e,f,g,h,i=c.line,j=b.getLine(i),k=d("{"),l=d("[");if(null!=k&&(null==l||l>k))h=k,f="{",g="}";else{if(null==l)return;h=l,f="[",g="]"}var m,n,o=1,p=b.lastLine();a:for(var q=i;q<=p;++q)for(var r=b.getLine(q),s=q==i?h:0;;){var t=r.indexOf(f,s),u=r.indexOf(g,s);if(t<0&&(t=r.length),u<0&&(u=r.length),(s=Math.min(t,u))==r.length)break;if(b.getTokenTypeAt(a.Pos(q,s+1))==e)if(s==t)++o;else if(!--o){m=q,n=s;break a}++s}if(null!=m&&i!=m)return{from:a.Pos(i,h),to:a.Pos(m,n)}})),a.registerHelper("fold","import",(function(b,c){function d(c){if(c<b.firstLine()||c>b.lastLine())return null;var d=b.getTokenAt(a.Pos(c,1));if(/\S/.test(d.string)||(d=b.getTokenAt(a.Pos(c,d.end+1))),"keyword"!=d.type||"import"!=d.string)return null;for(var e=c,f=Math.min(b.lastLine(),c+10);e<=f;++e){var g=b.getLine(e),h=g.indexOf(";");if(-1!=h)return{startCh:d.end,end:a.Pos(e,h)}}}var e,f=c.line,g=d(f);if(!g||d(f-1)||(e=d(f-2))&&e.end.line==f-1)return null;for(var h=g.end;;){var i=d(h.line+1);if(null==i)break;h=i.end}return{from:b.clipPos(a.Pos(f,g.startCh+1)),to:h}})),a.registerHelper("fold","include",(function(b,c){function d(c){if(c<b.firstLine()||c>b.lastLine())return null;var d=b.getTokenAt(a.Pos(c,1));return/\S/.test(d.string)||(d=b.getTokenAt(a.Pos(c,d.end+1))),"meta"==d.type&&"#include"==d.string.slice(0,8)?d.start+8:void 0}var e=c.line,f=d(e);if(null==f||null!=d(e-1))return null;for(var g=e;;){if(null==d(g+1))break;++g}return{from:a.Pos(e,f+1),to:b.clipPos(a.Pos(g))}}))}));

Copyright © 2019 by b0y-101