Tosh is an alternative Scratch editor developed by user blob8108. It is available as both a free browser application (The recommended browser is Google Chrome) and a Mac app. Tosh is currently only available in English.

Comparisons Between Tosh and Scratch

Tosh is a text-based alternative to Scratch. While Scratch is a graphic programming language where blocks are dragged into place, Tosh features a text-based syntax that is based around the literal text featured in Scratch blocks. Tosh also features an autocomplete function for faster programming.

The user interface also differs from Scratch. The stage is in the upper-right corner, similar to Scratch 1.4 and Scratch 3.0. Costumes, data, and sounds appear on the left-hand side. In the center of the window is the scripting area. The default sprite that appears when the program starts has been replace by a pointer known as a "Turtle". Apart from this, there are no further differences in the interface.

Compatibility with Scratch

Tosh uses the same file format as Scratch 2.0 - meaning it has the file extension ".sb2". This makes them completely compatible with Scratch 2.0 . If a project made in Tosh is saved, it can be uploaded in the future to the Scratch 2 website. The programs should function with the normal behavior of Scratch.

Issues

The Tosh interface uses the Phosphorus Player to run the projects. This means that some functions such as graphic effects do not work properly (with the exception of transparency). Other Phosphorus related issues include the possibility to move figures completely of the edge of the stage, or to exceed the limit of 300 clones on stage at once.

Unfortunately, Tosh is unable to process "hacked blocks" and will not export projects containing them.

Tosh Syntax

A detailed guide of correct syntax can be found here. Tosh also has a feature that marks syntax errors making them easier to find.

Text and Menu inputs

All text inputs and menu inputs must be put into quotes.

say "Hello World!"
broadcast "Start Story"
switch costume to "Square"
play sound "Pop"
point towards "Sprite1"

Resulting Code:

say [Hello World!]
broadcast [Start Story v]
switch costume to [square v]
play sound [Pop v]
point towards [Sprite1 v]