Can I translate my Snap! project to a text-based language?

TL;DR: No.

If your project uses graphics or sounds, you need the entire Snap! environment to support sprites, backgrounds, video capture, and the rest of the media capabilities your project relies on.

If your project has more than one script running in parallel, you need the Snap! multithreading scheduler to implement the synchronous running of multiple scripts, maybe in multiple sprites.

But if your project has one thread that manipulates text or numbers (a random sentence generator, listing the first thousand Fibonacci numbers, things like that), then yes, you can translate it to any language you like, using the Codification feature. Start by opening this example project:

There isn't any particular text language translation built in; instead, you set up translations from blocks to whatever text form you like. For example, here's an excerpt from the code to set up translation from Snap! to C:


and here's a translation of the same blocks to Javascript:

As you can see, there are some similarities and some differences between the two. If you look inside the sample project, you can see translations into four different text languages.


But maybe you're really asking a different question: "Can I edit my Snap! project using the keyboard instead of the mouse?"

TL;DR: Yes.

You can use the keyboard editor (Section XI.D in the Reference Manual, page 115 in the 6.3 edition).

If you have a motor disability or a partial visual disability, this may be all you need. But if you are blind, you also need an interface to a screen reader, and we don't have that yet. We're working on it.