Named "Walldorf" to honor SAP's sponsorship Snap’s first update in 2017 concludes a series of improvements and enhancements to the user interface. While previous releases in 2016 focused on data and its visualization (tables, linked lists and first-class sprites) v4.0.10 revisits how you work with blocks, adding such long sought-after features as UNDO/REDO, auto-wrapping (inside-out nesting of control structures), entering formulas using the keyboard, refactoring variables (renaming all accessors in scope), browsing and previewing libraries, supporting hierarchical drop-down menus for input slots and extending the typography for block labels. In addition, this release also improves the UI for working with resources (pictures, SVGs, sounds) and projects.
Detailed description of new features:
- auto-wrapping of C-slots
- undo / redo for blocks, unlimited, but has some issues
- search field for projects, thanks, Bernat!!
- basic typography support for custom block labels, thanks, Bernat!!
- treat JS-function reporters the same as variable getters wrt rings
- new url switch #dl: for downloading raw shared projects
- new url option switch: &noExitWarning
- svg support for images from the web (svg files have been supported for a long time)
- use media dialog for browsing and importing sounds
- highly experimental infix-expression-to-reporter parser. Thanks, Bernat, for the brilliant idea to add it to the search-blocks field!
- hierarchical menus, also for custom blocks, thanks, Brian!
- variable refactoring, thanks, Bernat!
- “#run:” flags (same as “#present:”): ’editMode’, ‘noRun’, ‘hideControls’, thanks, Brian!
- Libraries Browser, thanks, Michael!
- Music (play note) to work again in new and recent browser versions (Chrome 55)
- IDE layout: fixed resizing issues when the window becomes too small
- Keep left-over blocks from “relabel” around
- Evaluate the generic WHEN-hat block’s predicate and first step of the attached script in the same atom
- “go back _ layers” to work with out-of bounds numbers, thanks, Brian Broll!
- Translation updates (Russian, Polish, Danish, Portuguese, Catalan, German)