// Allow codefolding in code cells define([ 'require', 'components/codemirror/addon/fold/foldgutter', 'components/codemirror/addon/fold/foldcode', 'components/codemirror/addon/fold/brace-fold', 'components/codemirror/addon/fold/indent-fold' ], function(require) { "use strict"; if (IPython.version[0] != 2) { console.log("This extension requires IPython 2.x") return } function toggleFolding(cm) { var pos = cm.getCursor(); var opts = cm.state.foldGutter.options; cm.foldCode(pos, opts.rangeFinder); } var foldingKey = { "Alt-F" : toggleFolding }; /** * Concatenate associative array objects * * Source: http://stackoverflow.com/questions/2454295/javascript-concatenate-properties-from-multiple-objects-associative-array */ function collect() { var ret = {}; var len = arguments.length; for (var i=0; i