Rework of omegaup's Karel.js.
It's main reason is so it works in mobile, currently it doesn't because
- CodeMirror 5 isn't mobile compatible
- WorldRenderer scroll doesn't work on all devices
- It is not responsive, toolbar is gone in mobile
This new version includes:
- Now with bootstrap 5
- Now with CodeMirror 6
- Migrated to Bootstrap 5.0.2
- Migrated to JQuery 3.6.1
- Migrated to CodeMirror 6
- Migrated Split.js
- Removed Karel Ruby as it didn't worked and it seemed to be in route of deprecation.
- Supports touch control on both views.
- UI changes to one better suited for small screens, similar to "Karel blue", aka Karel.exe
- CodeEditor maybe edited without writing.
- Settings that allow to set:
- Prefered programming language (default is auto as Karel.js)
- If set, syntax higlighting and compile will always try that language.
- The view (force one view independent of screen size)
- Code Font size
- Prefered programming language (default is auto as Karel.js)
- Hotkeys
Ctrl+K
Decreases editor's font.Ctrl+L
Increases editor's font.
- Added the ability to zoom in and out of the world.
- Native scrolling with scrollbars for the world renderer.
- The previous scroll was hard to use imo.
- Added the ability to specify the name of the file to be downloaded
- Added clean button to remove old messages.
- "Are you sure?" before reseting code
- "Are you sure?" before reseting world
- Added icons to Karel position.
Reworked world editor.
Now it is more similar to Google's spreadsheet
- World edition is based on cell selection and a toolbar.