Code organization overhaul

Hi all. I’ve just merged #4200, which splits the old 9000-line core file into over 60 smaller files, and sets up a build script (based on the wonderful Rollup tool) that combines them into the same, backwards-compatible lib/codemirror.js file.

This means:

  • lib/codemirror.js is no longer part of the repository, and you can no longer run stuff in a checkout without first building

  • Building is done with npm run build (or npm run watch to set up a process that automatically rebuilds when the source files change)

  • The actual source code for the core is now under the src/ directory

  • Specific pieces of code should be easier to find (but finding them might involve running grep instead of just searching through a single file)

  • The code is now written in ES3-syntax-with-ES6-modules. We’ll probably migrate to full ES6 with a compilation step soon

The work for this was done by Adrian Heine, my excellent new co-maintainer, as part of a MOSS grant.

great ! thx to all involved …