Discuss Scratch

VectorV
Scratcher
38 posts

toki pona translation for Scratch

Sorry for the huge post, it's just I need to include all the blocks!
ken la lipu suli li ike. taso mi wile e ni: lipu ni li jo e leko ale!
(Some of the arguments are wrong because I made this using scratchblocks 3.0)
Me and jan Atape worked together on this.

o tawa kepeken noka (10) :: motion
o sike @turnLeft sike (15) :: motion
o sike @turnRight sike (15) :: motion
o tawa (luka lawa v):: motion // luka lawa // lon nasa
o tawa poka (0) tawa sewi (0):: motion
o tawa lete tawa (luka lawa v) lon tenpo (1):: motion
o tawa lete tawa poka (0) tawa sewi (0) lon tenpo (1) :: motion
o lukin e sike (90) :: motion
o lukin e (luka lawa v) :: motion
o pana e (10) tawa poka :: motion
o pana e (10) tawa sewi :: motion
o ante e poka tawa (0) :: motion
o ante e sewi tawa (0) :: motion
lon selo la o tawa :: motion
o ante e nasin sike tawa [poka tu v] :: motion // poka tu // poka ale
lon poka :: motion reporter
lon sewi :: motion reporter
lon sike :: motion reporter
tenpo (2) la o toki e [toki!] :: looks
o toki e [toki!] :: looks
tenpo (2) la o pilin e [m...] :: looks
o pilin e [m...] :: looks
o ante e len tawa (len1 v) :: looks
len sewi:: looks
o ante e tomo tawa (tomo1 v):: looks
tomo sewi:: looks
o pana e nanpa (10) tawa suli:: looks
o ante e suli tawa (100):: looks
o pini e namako sitelen:: looks
o pana e nanpa (25) tawa namako (kule v) :: looks
//kule //wawa suno //leko //ken lukin //mute //lukin kala //nasa
o ante e namako (kule v) tawa nanpa (0) :: looks
o kama lukin :: looks
o kama lukin ala :: looks
o tawa lipu (sinpin v) :: looks // sinpin // monsi
lipu la o tawa (sinpin v) (1) :: looks
([nimi v] len :: looks // nanpa // nimi
([nimi v] tomo :: looks // nanpa // nimi
suli :: looks reporter
o kalama e (mu4 v) :: sound
tenpo kalama la o kalama e (mu4 v) :: sound
o pini e kalama ale :: sound
o pini e namako kalama :: sound // poka // wawa tawa
o pana e (10) tawa wawa kalama :: sound
o ante e wawa kalama tawa (100) :: sound
wawa kalama :: sound reporter
@greenFlag la :: events hat
nena (weka v) la :: events hat // weka, ale, sewi, anpa, soto, te
ijo ni li luka la:: events hat
tomo li kama (tomo1 v) la:: events hat
(10) la (wawa kalama v) li suli la :: events hat
mi kute e (toki1 v) la :: events hat
o toki e (toki1 v) tawa ale :: events
o toki e (toki1 v) tawa ale o awen :: events
tenpo (1 ) la o awen :: control
o pali mute (10) e ni:{
}:: control
tenpo ale la {
} :: control
<> la {
} :: control
<> la {
} ala la {
}:: control
<> li awen ala la o awen :: control
<> li awen ala la {
}:: control
o pini e (ale v) :: control cap // ale // lipu lawa ni // lipu lawa ante lon sijelo ni
sijelo sama la :: control hat
o mama e sijelo sama pi (mi v) :: control
o weka e sijelo sama ni :: control cap
lon poka (selo v):: sensing boolean
lon poka kule (#ff0000) :: sensing boolean
kule (#00ff00) li lon poka (#0000ff):: sensing boolean
ante tawa tawa (sijelo1 v) :: sensing boolean
o wile sona e [nimi sina li seme?] o awen :: sensing
sona pana :: sensing reporter
nena (weka v) :: sensing boolean
luka lawa li luka :: sensing boolean
lon poka pi luka lawa :: sensing reporter
lon sewi pi luka lawa :: sensing reporter
o ante e nasin tawa tawa (ken tawa v) :: sensing // ken tawa // ken ala tawa
wawa kalama :: sensing reporter
ilo tenpo :: sensing reporter
o sike e ilo tenpo :: sensing
(lon poka v) pi (sijelo1 v) :: sensing reporter // monsi
(tenpo sike v) pi tenpo ni :: sensing reporter // tenpo sike // tenpo mun // tenpo suno // nanpa pi tenpo suno lon kulupu pi tenpo suno // tenpo suno kipisi // tenpo suli // tenpo lili
tenpo suno weka pi tenpo sike 2000 :: sensing reporter
nimi jan :: sensing reporter
nanpa (1) tawa nanpa (10) la nanpa nasa :: operators reporter
<> en <> :: operators boolean
<> anu <> :: operators boolean
<> ala :: operators boolean
[toki ] en [pona] :: operators reporter
sitelen nimi (1) pi nimi[pona] :: operators reporter
suli pi nimi [pona] :: operators reporter
nimi [pona]li jo e sitelen nimi [a]? :: operators boolean // edit:this should have been a boolean

poki pona :: variables reporter
o lukin e poki (poki pona v) :: variables
o lukin ala e poki (poki pona v) :: variables
o pana e (1) tawa (poki pona v) :: variables
o ante e (poki pona v) tawa (0) :: variables
o pana e [ijo] tawa (kulupu nanpa pona v):: list
o weka e (1) pi (kulupu nanpa pona v):: list
o weka e ale pi (kulupu nanpa pona v):: list
o pana e [ijo] tawa (kulupu nanpa pona v) lon nanpa (1):: list
o ante e ijo (1) pi (kulupu nanpa pona v) tawa [ijo]:: list
ijo (1) pi (kulupu nanpa pona v):: list reporter
nanpa ijo pi [ijo] lon (kulupu nanpa pona v):: list reporter
suli pi (kulupu nanpa pona v):: list reporter
(kulupu nanpa pona v) li jo e [ijo]? :: list boolean
o lukin e kulupu nanpa (kulupu nanpa pona v):: list
o lukin ala e kulupu nanpa (kulupu nanpa pona v):: list

I have all the extensions, meta terminology, etc here: https://docs.google.com/spreadsheets/d/1bpnXPoKWNQl1xwemBacfMiyms8QwGdVKzFshENxM42o/edit#gid=0

Last edited by VectorV (Aug. 19, 2020 14:00:19)


just some random guy on the internet.

(mi sona e [toki pona] :: extension)
Paddle2See
Scratch Team
1000+ posts

toki pona translation for Scratch

I'll move this over to the “Translating Scratch” section for you - that seems like a better fit?

Scratch Team Member, kayak and pickleball enthusiast, cat caregiver.

This is my forum signature! On a forum post, it is okay for Scratchers to advertise in their forum signature. The signature is the stuff that shows up below the horizontal line on the post. It will show up on every post I make.
(credit to Za-Chary)



;
VectorV
Scratcher
38 posts

toki pona translation for Scratch

Thanks Paddle.

just some random guy on the internet.

(mi sona e [toki pona] :: extension)
VectorV
Scratcher
38 posts

toki pona translation for Scratch

bump

just some random guy on the internet.

(mi sona e [toki pona] :: extension)
Maarten_
Scratcher
100+ posts

toki pona translation for Scratch

bump

Toki Pona has also acquired a valid ISO 639-3 code:
https://iso639-3.sil.org/request/2021-043

FarrellyF5
Scratcher
16 posts

toki pona translation for Scratch

Support! If there is any news on this I would totally love help out; though it seems you got most of everything here!

(Edit: Just realised I may have accidentally necro-posted, if so my bad)

Last edited by FarrellyF5 (June 9, 2022 16:56:50)


say [Hello World] // English
say [Helo Byd] // Cymraeg
say [Toki Ma] // Toki Pona
momoahsan
Scratcher
31 posts

toki pona translation for Scratch

green flag la ::hat
o toki e ni: [ni li pona a!] ::looks

Last edited by momoahsan (Aug. 1, 2022 09:59:24)


From momoahsan
tan, jan momoahsan

Updating the virtual computer
DogCatPuppyLover
Scratcher
100+ posts

toki pona translation for Scratch

epiku a! what's the status on this? i'd be willing to help with whatever's needed!

Isla • trans/queer • leftist • gender abolitionist • programmer • lead manager of the LGBTQ+ studio • she/her

#RevertManagerRestrictions: https://scratch.mit.edu/projects/551194490

https://scratch.mit.edu/discuss/topic/526523/

Your text to link here…
Ninkancho
Scratcher
500+ posts

toki pona translation for Scratch

Digging up this old account to try to give some constructive input on the translations. I'm not sure if I can help consistently like more active Scratchers, so I'm going to frontload a lot of my criticism. Sorry for the long post!

Some translations in the original post are strange or hard to understand, at least for me. There are also some general considerations that I think might deserve more attention and standardization:

  • Should block labels be translated as fragments or full sentences? Not all of the stack blocks are currently phrased as full sentences or commands. This works in English, but I find that sentence-structuring particles are very important to clarity in Toki Pona, as they express the relations between parts of a sentence in ways that lone phrases cannot.
  • Should inputs have headnouns? What headnouns should common Scratch-specific entities use? In Toki Pona, all names require a headnoun to describe what the name refers to. For example, “Canada” is “ma Kanata”, literally “Kanata land”. I think the same should apply to named objects. For example, blocks with a sprite selector might place “ijo” before the dropdown, to make a full name phrase like “ijo Sprite1”. (There could be complications in inputs with multiple types of options, like sprites and the stage, or sprites and the mouse pointer.)
  • Are there any math or programming terms that shouldn't be translated? For example, the translations of x and y position are nice, but will it make it harder to transfer programming skills if they aren't named like Cartesian axes? It's hard to say which method, which translation would match a standard practical use if more software and programming languages were localized.

Note that since this thread was started, Toki Pona Dictionary has collated a standard set of additional words that are commonly recognized and now taught in courses, including newer language editions of Toki Pona: The Language of Good. It's still possible to work without these words, but they can shorten and clarify things dramatically, which I think is important in this application.

I'd also like to bring up Sitelen Pona support. Sitelen Pona is an original writing system used very commonly in the Toki Pona community. It would be really nice to have this as a second localization option! There may be fonts that support Sitelen Pona that have a compatible license.

Motion

I would phrase the “turn … degrees” blocks as “o tawa kipisi sike ccw/cw (15)/360”. Since Toki Pona doesn't have angular units, turning degrees into fractions and saying to move that fraction of a circle is the clearest translation I can come up with right now. Other blocks with degrees could be rephrased similarly. I do like “lon sike” for “direction”, though.

“tawa lete” is very unclear to me. I'd finished the rest of this reply before realizing it might be comparing the glide to sliding on ice? Anyway, I think the last input itself already gives the idea of motion over time.

Using another additional word, “if on edge, bounce” could become “lon selo tomo la, o jasima”. (Most punctuation is optional in Toki Pona, so the presence of a comma is a stylistic choice. It can go either way, especially in such a short phrase.)

Looks

In “say/think … for … seconds”, the time input can stay on the end by using a preposition instead of a context phrase. I'd also consider using a phrase like “tenpo lili” for seconds. While still very inexact, I think it'd be much clearer.

“next costume/backdrop” could use “kama” instead of “sewi”.

For a more discretionary translation, perhaps “hide” could use “kon” in the sense of being an unseen agent, like a spirit?

Sound

“tenpo kalama la o kalame e …” seems like it could be triggered by an event—“once it's time to make sound, make sound”. Instead of the context phrase, I think “tawa pini” would work.

Events

The “when green flag clicked” translation doesn't show what interaction the user is supposed to have. Maybe this could use something with your “luka lawa” translation (which I do like, for both the mouse cursor and touch input).

Renaming keyboard keys seems like it might be out of scope for the translation. I've seen lots of competing custom Toki Pona keyboard layouts with no clear standard yet. The presence and labels of special keys likely varies wildly between layouts. To me, translating this suggests the user is supposed to have a Toki Pona keyboard, which is unlikely >99% of the time, and potentially inconsistent with key labels either way. I also think “weka” sounds most like Esc.

The broadcast blocks are phrased similarly to the say blocks. I must admit, “toki” makes sense, but perhaps an alternative phrasing could be “o pana e toki …”, “o pana e tenpo …” or something? Maybe this is a non-issue, though.

Control

“ala la” does work for “else” in terms of the logic. Another translation could be “ante la”, roughly “or else, otherwise”. There are some Toki Pona programming languages; I wonder how they translate this control flow. Maybe they should be surveyed to see how they translate commands shared with Scratch.

Using “pi” before inputs could be hazardous. The particle “pi” groups multiple following words into an adjective phrase. The default here, “sijelo sama pi mi”, is ungrammatical because only one word follows the “pi”. It should reduce to “sijelo sama mi”. Luckily, this is actually allowed because “sama” is a preposition.

Sensing

“lon poka” sounds like “next to” in the lateral sense. Maybe just “lon” would work, or “mi pilin e …”

“wawa kalama” is used for both “volume” and “loudness”. The latter could probably be distinguished as “wawa kalama kute”.

To avoid the one-word-can-follow-“pi” issue, " of (…)“ should be ”(…) la “. Another solution would be to use a headnoun for sprites, but if I understand correctly, this doesn't work because the stage is also an option in the dropdown.

On the other hand, the ”pi“ in ”days since 2000“ is correct, but I'd still change it to ”tan".

Operators

To distinguish the label from “and”, “join” can become “o wan e … e …”

My Blocks

“define …” could be “o sama pali ni e leko …”

Ninkancho STUDIO☁️ Cloud Clicker DEMO
Let's Play TogetherAnother Rather Unremarkable PlatformerSinewarper
public class Scrape{public static void main(String[] args){Scrape myScrape=new Scrape();myScrape.eternally{myScrape.picture();myScrape.write();myScrape.tell();}}}
Windows NT 10.0, Chrome 51.0.2704.79, Flash 23.0 (release 0)), Flash 23.0 (release 0)
kajquats;
VectorV
Scratcher
38 posts

toki pona translation for Scratch

I'll definitely take your feedback into account when designing my next version of this translation.

just some random guy on the internet.

(mi sona e [toki pona] :: extension)
VectorV
Scratcher
38 posts

toki pona translation for Scratch

New translation! https://docs.google.com/spreadsheets/d/1iNwUYGdAom0ZTSC9ZZ4GoPtaBGPKHpr24jKmgm4QixQ/edit#gid=0

just some random guy on the internet.

(mi sona e [toki pona] :: extension)

Powered by DjangoBB