<commit_before>small-ide
=========

A small browser based IDE for web development, featuring a canvas element, a console (with [sticky scroll](http://stackoverflow.com/questions/18614301/keep-overflow-div-scrolled-to-bottom-unless-user-scrolls-up/21067431#21067431)) and an editor.

**Developed for**
Firefox 26, Chrome 31 and Internet Explorer 11

I recommend using [Hacker's Keyboard](https://play.google.com/store/apps/details?id=org.pocketworkstation.pckeyboard) on Android.

[DEMO](http://dotnetcarpenter.github.io/small-ide/) - 
[TEST](http://dotnetcarpenter.github.io/small-ide/test/test.html) - 
[HISTORY](HISTORY.md) - 
[UNLICENSE](UNLICENSE)

## Supported API

`log` - write variables to the console

`canvas` - the canvas element

`draw` - the 2d context for the canvas

`config` - just write `log(config)` in the editor and run the code (`shift` + `enter`)


## Shortcuts

`shift` + `enter` - run code

`shift` + `backspace` - clear console

**Indentations**:

Without a selection

`tab` - insert two, or as configured, spaces (e.g. `config.indentation = 4`)

`shift` + `tab` - delete two, or as configured, spaces to the left. Aborts if it means deletetion of text

With a selection:

`tab` - indentation of selected line(s)

`shift` + `tab` - reverse indentation of selected line(s)<commit_msg>added notes about development<commit_after>small-ide
=========

A small browser based IDE for web development, featuring a canvas element, a console (with [sticky scroll](http://stackoverflow.com/questions/18614301/keep-overflow-div-scrolled-to-bottom-unless-user-scrolls-up/21067431#21067431)) and an editor.

**Developed for**
Firefox 26, Chrome 31 and Internet Explorer 11

I recommend using [Hacker's Keyboard](https://play.google.com/store/apps/details?id=org.pocketworkstation.pckeyboard) on Android.

[DEMO](http://dotnetcarpenter.github.io/small-ide/) - 
[TEST](http://dotnetcarpenter.github.io/small-ide/test/test.html) - 
[HISTORY](HISTORY.md) - 
[UNLICENSE](UNLICENSE)

## Supported API

`log` - write variables to the console

`canvas` - the canvas element

`draw` - the 2d context for the canvas

`config` - just write `log(config)` in the editor and run the code (`shift` + `enter`)


## Shortcuts

`shift` + `enter` - run code

`shift` + `backspace` - clear console

**Indentations**:

Without a selection

`tab` - insert two, or as configured, spaces (e.g. `config.indentation = 4`)

`shift` + `tab` - delete two, or as configured, spaces to the left. Aborts if it means deletetion of text

With a selection:

`tab` - indentation of selected line(s)

`shift` + `tab` - reverse indentation of selected line(s)

## Development

You can either `git clone https://github.com/dotnetCarpenter/small-ide.git` or `bower i small-ide` and then `cd bower_components/small-ide && bower i`, to get the development depedencies.
If you want to use a newer version of [happen](https://github.com/tmcw/happen) and/or [jasmine](http://jasmine.github.io/2.0/introduction.html) than already in the test folder, you need to copy _happen.js_ from _bower_components/happen_ into _test/lib_. And unzip _jasmine-standalone-2.\*.zip_ from _bower_components/jasmine/dist_ into _test/lib_.
{'fraction_non_alphanumeric': 0.13312401883830455, 'fraction_numerical': 0.021036106750392466, 'mean_word_length': 4.550522648083624, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 3, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2688344', 'n_tokens_mistral': 1108, 'n_tokens_neox': 1034, 'n_words': 318}