brace-fold.js
11 years ago
brace-fold.min.js
11 years ago
comment-fold.js
11 years ago
comment-fold.min.js
11 years ago
foldcode.js
11 years ago
foldcode.min.js
11 years ago
foldgutter.css
11 years ago
foldgutter.js
11 years ago
foldgutter.min.js
11 years ago
indent-fold.js
11 years ago
indent-fold.min.js
11 years ago
markdown-fold.js
11 years ago
markdown-fold.min.js
11 years ago
xml-fold.js
11 years ago
xml-fold.min.js
11 years ago
indent-fold.min.js
6 lines
| 1 | |
| 2 | (function(mod){if(typeof exports=="object"&&typeof module=="object") |
| 3 | mod(require("../../lib/codemirror"));else if(typeof define=="function"&&define.amd) |
| 4 | define(["../../lib/codemirror"],mod);else |
| 5 | mod(CodeMirror);})(function(CodeMirror){"use strict";CodeMirror.registerHelper("fold","indent",function(cm,start){var tabSize=cm.getOption("tabSize"),firstLine=cm.getLine(start.line);if(!/\S/.test(firstLine))return;var getIndent=function(line){return CodeMirror.countColumn(line,null,tabSize);};var myIndent=getIndent(firstLine);var lastLineInFold=null;for(var i=start.line+1,end=cm.lastLine();i<=end;++i){var curLine=cm.getLine(i);var curIndent=getIndent(curLine);if(curIndent>myIndent){lastLineInFold=i;}else if(!/\S/.test(curLine)){}else{break;}} |
| 6 | if(lastLineInFold)return{from:CodeMirror.Pos(start.line,firstLine.length),to:CodeMirror.Pos(lastLineInFold,cm.getLine(lastLineInFold).length)};});}); |