toki pona ASCII syllabary: Difference between revisions

From sona pona, the Toki Pona wiki
Content added Content deleted
(Created page with "<div class="thumb tright"><div class="thumbinner">{{tok|<code>j l bn e Oq Tw sn</code>}}<div class="thumbcaption">{{tp|jan li pana e moku tawa sina}}</div></div></div> The '''toki pona ASCII syllabary''' by {{tok|jan Misali}} is a writing system that assigns each phonotactically allowed syllable in Toki Pona to a single {{abbr|{{w|ASCII}}|American Standard Code for Information Interchange}} character. The syllabary can be used to Text compression|c...")
 
No edit summary
 
(17 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Short description|ASCII-based syllabary by jan Misali}}
<div class="thumb tright"><div class="thumbinner">{{tok|<code>j l bn e Oq Tw sn</code>}}<div class="thumbcaption">{{tp|jan li pana e moku tawa sina}}</div></div></div>
{{Figure|{{tok|<code>j l bn e Oq Tw sn</code>}}|{{tp|jan li pana e moku tawa sina}}}}
The '''toki pona ASCII syllabary''' by {{tok|[[jan Misali]]}} is a [[writing system]] that assigns each [[phonotactic]]ally allowed [[syllable]] in [[Toki Pona]] to a single {{abbr|{{w|ASCII}}|American Standard Code for Information Interchange}} character.
The '''toki pona ASCII syllabary''' by {{tok|[[jan Misali]]}}, or '''{{tp|sitelen Aki}}'''{{citation needed|date=2024-01-10|reason=Origin of this name?}}, is a [[writing system]] that assigns each [[phonotactic]]ally allowed [[syllable]] in [[Toki Pona]] to a single [[ASCII]] character. It is designed so that many [[particle]]s and short and common [[content word]]s become recognizable [[Abbreviations|initials]], or become or integrate meaningful symbols.


==History==
The syllabary can be used to [[Text compression|compress text]]. Word lengths range from unchanged (for one-letter words) to a third as long, such as {{tok|<code>C%</code>}} for {{tp|[[sinpin]]}}. A major limiting factor for the {{w|Data compression ratio|compression ratio}} is the need to separate words, which is generally done with the ASCII {{w|Whitespace character|space}} (<code> </code>). {{tok|Misali}} also suggests using the syllabary as an {{w|input method}} for other writing systems.
<div style="float:right;margin-left:1em;">
{|class="wikitable"
|+Version differences
|-style="font-size:smaller;"
!Syllable
!2017
!2019
|-
!{{tp|lan}}
|{{tok|1=<code style="background:inherit;">:</code>}}
|{{tok|1=<code style="background:inherit;">'</code>}}
|-
!{{tp|ju}}
|{{tok|1=<code style="background:inherit;">/</code>}}<ref group="lower-alpha">Same as {{tp|nu}}</ref>
|{{tok|1=<code style="background:inherit;">,</code>}}
|-
!{{tp|jen}}
|{{tok|1=<code style="background:inherit;">,</code>}}
|{{tok|1=<code style="background:inherit;">"</code>}}
|}
<references group="lower-alpha" />
</div>
{{tok|jan Misali}} posted an early version of the syllabary on 13 October 2017.<ref>{{cite Discord|url=//discord.com/channels/251910419017498624/309864124437757963/368195683674619906|channel=conlangs|server="CongIang" Community|author={{tok|[[jan Misali]]}}|username=hbmmaster|access-date=2024-02-22|quote=ascii toki pona syllabary}} [//web.archive.org/web/20240222085206/https://cdn.discordapp.com/attachments/309864124437757963/368195683674619904/image.png Image] (archived).</ref> It is nearly identical to the final version, but three of the characters for non-[[nimi pu|{{tp|nimi}}-{{tp|pu}}]] syllables would later be changed, including a duplicate character.


The earliest archive of the final version is from 29 April 2019.<ref>{{cite web|url=//web.archive.org/web/20190429141548/https://www.seximal.net/tkpn|title=Archive of "seximal offtopic: toki pona ASCII syllabary"|delimiters=|author={{tok|[[jan Misali]]}}|username=|date=20190429141548|website=Wayback Machine|publisher=Internet Archive|access-date=2024-02-22|quote=}}</ref> This version deallocated the colon (<code>:</code>) and allocated the quotation mark (<code>"</code>).
Due to the significant {{w|letter case}} and the use of all ASCII {{w|bracket}}s, it is unclear how to specify proper [[name]]s with this system. The only unused printable, non-whitespace ASCII characters are the period (<code>.</code>) and colon (<code>:</code>), which could be used for name marking where necessary, but there is no recommended style for doing so.


==Syllables==
==Syllables==
Highlighted cells correspond to syllables that do not occur in any {{tp|[[nimi pu]]}} (but that can appear in [[name]]s, and some of which would later appear in {{tp|[[nimi ku]]}}). This affected the allocation of the characters, with many non-alphanumeric symbols being given to these syllables.

{|class="wikitable" style="text-align:center;"
{|class="wikitable" style="text-align:center;"
!rowspan="2"|
!
!colspan="5"|Null coda
!colspan="5"|Coda nasal
|-
!{{tp|-i}}
!{{tp|-i}}
!{{tp|-u}}
!{{tp|-u}}
Line 20: Line 49:
!{{tp|-an}}
!{{tp|-an}}
|-
|-
!{{tp|&empty;-}}
!&empty;-
|{{tok|<code>i</code>}}
|{{tok|1=<code style="background:inherit;">i</code>}}
|{{tok|<code>0</code>}}
|{{tok|1=<code style="background:inherit;">0</code>}}
|{{tok|<code>e</code>}}
|{{tok|1=<code style="background:inherit;">e</code>}}
|{{tok|<code>o</code>}}
|{{tok|1=<code style="background:inherit;">o</code>}}
|{{tok|<code>a</code>}}
|{{tok|1=<code style="background:inherit;">a</code>}}
|{{tok|<code>!</code>}}
|{{tok|1=<code style="background:inherit;">!</code>}}
|{{tok|<code>U</code>}}
|{{tok|1=<code style="background:inherit;">U</code>}}
|{{tok|<code>&</code>}}
|{{tok|1=<code style="background:inherit;">&</code>}}
|{{tok|<code>7</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">7</code>}}}}
|{{tok|<code>A</code>}}
|{{tok|1=<code style="background:inherit;">A</code>}}
|-
|-
!{{tp|m-}}
!{{tp|m-}}
|{{tok|<code>m</code>}}
|{{tok|1=<code style="background:inherit;">m</code>}}
|{{tok|<code>u</code>}}
|{{tok|1=<code style="background:inherit;">u</code>}}
|{{tok|<code>?</code>}}
|{{tok|1=<code style="background:inherit;">?</code>}}
|{{tok|<code>O</code>}}
|{{tok|1=<code style="background:inherit;">O</code>}}
|{{tok|<code>M</code>}}
|{{tok|1=<code style="background:inherit;">M</code>}}
|{{tok|<code>8</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">8</code>}}}}
|{{tok|<code>3</code>}}
|{{tok|1=<code style="background:inherit;">3</code>}}
|{{tok|<code>9</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">9</code>}}}}
|{{tok|<code>@</code>}}
|{{tok|1=<code style="background:inherit;">@</code>}}
|{{tok|<code>`</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">`</code>}}}}
|-
|-
!{{tp|n-}}
!{{tp|n-}}
|{{tok|<code>N</code>}}
|{{tok|1=<code style="background:inherit;">N</code>}}
|{{tok|<code>/</code>}}
|{{tok|1=<code style="background:inherit;">/</code>}}
|{{tok|<code>^</code>}}
|{{tok|1=<code style="background:inherit;">^</code>}}
|{{tok|<code>*</code>}}
|{{tok|1=<code style="background:inherit;">*</code>}}
|{{tok|<code>n</code>}}
|{{tok|1=<code style="background:inherit;">n</code>}}
|{{tok|<code>(</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">(</code>}}}}
|{{tok|<code>)</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">)</code>}}}}
|{{tok|<code>-</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">-</code>}}}}
|{{tok|<code>_</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">_</code>}}}}
|{{tok|<code>#</code>}}
|{{tok|1=<code style="background:inherit;">#</code>}}
|-
|-
!{{tp|p-}}
!{{tp|p-}}
|{{tok|<code>P</code>}}
|{{tok|1=<code style="background:inherit;">P</code>}}
|{{tok|<code>f</code>}}
|{{tok|1=<code style="background:inherit;">f</code>}}
|{{tok|<code>B</code>}}
|{{tok|1=<code style="background:inherit;">B</code>}}
|{{tok|<code>p</code>}}
|{{tok|1=<code style="background:inherit;">p</code>}}
|{{tok|<code>b</code>}}
|{{tok|1=<code style="background:inherit;">b</code>}}
|{{tok|<code>%</code>}}
|{{tok|1=<code style="background:inherit;">%</code>}}
|{{tok|<code>+</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">+</code>}}}}
|{{tok|<code>F</code>}}
|{{tok|1=<code style="background:inherit;">F</code>}}
|{{tok|<code>&equals;</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">&equals;</code>}}}}
|{{tok|<code>6</code>}}
|{{tok|1=<code style="background:inherit;">6</code>}}
|-
|-
!{{tp|t-}}
!{{tp|t-}}
|{{N/A|{{space}}|link=wuwojiti}}
|style="background:#ececec;"|
|{{tok|<code>2</code>}}
|{{tok|1=<code style="background:inherit;">2</code>}}
|{{tok|<code>E</code>}}
|{{tok|1=<code style="background:inherit;">E</code>}}
|{{tok|<code>t</code>}}
|{{tok|1=<code style="background:inherit;">t</code>}}
|{{tok|<code>T</code>}}
|{{tok|1=<code style="background:inherit;">T</code>}}
|{{N/A|{{space}}|link=wuwojiti}}
|style="background:#ececec;"|
|{{tok|<code>d</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">d</code>}}}}
|{{tok|<code>x</code>}}
|{{tok|1=<code style="background:inherit;">x</code>}}
|{{tok|<code>D</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">D</code>}}}}
|{{tok|<code>X</code>}}
|{{tok|1=<code style="background:inherit;">X</code>}}
|-
|-
!{{tp|k-}}
!{{tp|k-}}
|{{tok|<code>k</code>}}
|{{tok|1=<code style="background:inherit;">k</code>}}
|{{tok|<code>q</code>}}
|{{tok|1=<code style="background:inherit;">q</code>}}
|{{tok|<code>G</code>}}
|{{tok|1=<code style="background:inherit;">G</code>}}
|{{tok|<code>H</code>}}
|{{tok|1=<code style="background:inherit;">H</code>}}
|{{tok|<code>K</code>}}
|{{tok|1=<code style="background:inherit;">K</code>}}
|{{tok|<code>Q</code>}}
|{{tok|1=<code style="background:inherit;">Q</code>}}
|{{tok|<code>{</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">{</code>}}}}
|{{tok|<code>g</code>}}
|{{tok|1=<code style="background:inherit;">g</code>}}
|{{tok|<code>h</code>}}
|{{tok|1=<code style="background:inherit;">h</code>}}
|{{tok|<code>}</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">}</code>}}}}
|-
|-
!{{tp|s-}}
!{{tp|s-}}
|{{tok|<code>s</code>}}
|{{tok|1=<code style="background:inherit;">s</code>}}
|{{tok|<code>z</code>}}
|{{tok|1=<code style="background:inherit;">z</code>}}
|{{tok|<code>Z</code>}}
|{{tok|1=<code style="background:inherit;">Z</code>}}
|{{tok|<code>S</code>}}
|{{tok|1=<code style="background:inherit;">S</code>}}
|{{tok|<code>c</code>}}
|{{tok|1=<code style="background:inherit;">c</code>}}
|{{tok|<code>C</code>}}
|{{tok|1=<code style="background:inherit;">C</code>}}
|{{tok|<code>4</code>}}
|{{tok|1=<code style="background:inherit;">4</code>}}
|{{tok|<code>[</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">[</code>}}}}
|{{tok|<code>\</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">\</code>}}}}
|{{tok|<code>]</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">]</code>}}}}
|-
|-
!{{tp|w-}}
!{{tp|w-}}
|{{tok|<code>W</code>}}
|{{tok|1=<code style="background:inherit;">W</code>}}
|{{N/A|{{space}}|link=wuwojiti}}
|style="background:#ececec;"|
|{{tok|<code>V</code>}}
|{{tok|1=<code style="background:inherit;">V</code>}}
|{{N/A|{{space}}|link=wuwojiti}}
|style="background:#ececec;"|
|{{tok|<code>w</code>}}
|{{tok|1=<code style="background:inherit;">w</code>}}
|{{tok|<code>&VerticalLine;</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">&VerticalLine;</code>}}}}
|{{N/A|{{space}}|link=wuwojiti}}
|style="background:#ececec;"|
|{{tok|<code>v</code>}}
|{{tok|1=<code style="background:inherit;">v</code>}}
|{{N/A|{{space}}|link=wuwojiti}}
|style="background:#ececec;"|
|{{tok|<code>1</code>}}
|{{tok|1=<code style="background:inherit;">1</code>}}
|-
|-
!{{tp|l-}}
!{{tp|l-}}
|{{tok|<code>l</code>}}
|{{tok|1=<code style="background:inherit;">l</code>}}
|{{tok|<code>5</code>}}
|{{tok|1=<code style="background:inherit;">5</code>}}
|{{tok|<code>r</code>}}
|{{tok|1=<code style="background:inherit;">r</code>}}
|{{tok|<code>~</code>}}
|{{tok|1=<code style="background:inherit;">~</code>}}
|{{tok|<code>L</code>}}
|{{tok|1=<code style="background:inherit;">L</code>}}
|{{tok|<code>I</code>}}
|{{tok|1=<code style="background:inherit;">I</code>}}
|{{tok|<code>;</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">;</code>}}}}
|{{tok|<code>$</code>}}
|{{tok|1=<code style="background:inherit;">$</code>}}
|{{tok|<code>R</code>}}
|{{tok|1=<code style="background:inherit;">R</code>}}
|{{tok|<code>'</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">'</code>}}}}
|-
|-
!{{tp|j-}}
!{{tp|j-}}
|{{N/A|{{space}}|link=wuwojiti}}
|style="background:#ececec;"|
|{{tok|<code>,</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">,</code>}}}}
|{{tok|<code>y</code>}}
|{{tok|1=<code style="background:inherit;">y</code>}}
|{{tok|<code>J</code>}}
|{{tok|1=<code style="background:inherit;">J</code>}}
|{{tok|<code>Y</code>}}
|{{tok|1=<code style="background:inherit;">Y</code>}}
|{{N/A|{{space}}|link=wuwojiti}}
|style="background:#ececec;"|
|{{tok|<code><</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;"><</code>}}}}
|{{tok|<code>"</code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">"</code>}}}}
|{{tok|<code>></code>}}
|{{CellCategory|1|2={{tok|1=<code style="background:inherit;">></code>}}}}
|{{tok|<code>j</code>}}
|{{tok|1=<code style="background:inherit;">j</code>}}
|}
|}

==Punctuation==
Only three {{w|Printable character|printable}} ASCII characters are not defined in the syllable chart, and are, ''de facto'', virtually always used as [[punctuation]] in the same way as in {{tp|[[sitelen Lasina]]}}.

The ASCII {{w|Whitespace character|space}} (<code> </code>) is used to separate words. The period (<code>.</code>) and the colon (<code>:</code>) are generally used as sentence separators. Any other [[punctuation]] would be lost due to conflicting with syllable characters or being out of the ASCII range.

Similarly, due to the significant {{w|letter case}} and the use of all ASCII {{w|bracket}}s, there is no clear way to specify proper [[name]]s with this system. It has been suggested to instead use the colon for name marking where necessary, using the period as the only sentence separator, even after sentence-linking {{tp|[[ni]]}}.<ref>{{cite Discord|url=//discord.com/channels/301377942062366741/1156485500102778900/1194802490235953183|thread={{tok|sitelen Aki pi jan Misali · sE$ ak P j mcl}}|channel={{tok|toki-suli}}|server={{tp|ma pona pi toki pona}}|author={{tok|kulupu Menasewi}}|access-date=2024-01-15|quote=}}</ref>

==Usage==
The syllabary can be used to [[Text compression|compress text]], with each character being reducible to 7 {{w|bit}}s. Word lengths range from unchanged (for one-letter words) to a third as long, such as {{tok|<code>C%</code>}} for {{tp|[[sinpin]]}}. A major limiting factor for the {{w|Data compression ratio|compression ratio}} is the [[Minimal pairs#Suprasegmentals|need]] to separate words.

{{tok|Misali}} also suggests using the syllabary as an {{w|input method}} for other writing systems.

The syllabary is rarely used as a writing system for general conversation.

==See also==
* {{tp|[[sitelen akesi]]}}, another ASCII-based writing system


==External links==
==External links==
*[//seximal.net/tkpn Website]
* [//seximal.net/tkpn Documentation on the official website]

==References==
<references />
{{Writing systems}}
[[Category:Writing systems]]
[[Category:Writing systems]]

Latest revision as of 04:15, 6 April 2024

j l bn e Oq Tw sn
jan li pana e moku tawa sina

The toki pona ASCII syllabary by jan Misali, or sitelen Aki[citation needed…], is a writing system that assigns each phonotactically allowed syllable in Toki Pona to a single ASCII character. It is designed so that many particles and short and common content words become recognizable initials, or become or integrate meaningful symbols.

History[edit | edit source]

Version differences
Syllable 2017 2019
lan : '
ju /[a] ,
jen , "
  1. Same as nu

jan Misali posted an early version of the syllabary on 13 October 2017.[1] It is nearly identical to the final version, but three of the characters for non-nimi-pu syllables would later be changed, including a duplicate character.

The earliest archive of the final version is from 29 April 2019.[2] This version deallocated the colon (:) and allocated the quotation mark (").

Syllables[edit | edit source]

Highlighted cells correspond to syllables that do not occur in any nimi pu (but that can appear in names, and some of which would later appear in nimi ku). This affected the allocation of the characters, with many non-alphanumeric symbols being given to these syllables.

Null coda Coda nasal
-i -u -e -o -a -in -un -en -on -an
∅- i 0 e o a ! U & 7 A
m- m u ? O M 8 3 9 @ `
n- N / ^ * n ( ) - _ #
p- P f B p b % + F = 6
t- 2 E t T d x D X
k- k q G H K Q { g h }
s- s z Z S c C 4 [ \ ]
w- W V w | v 1
l- l 5 r ~ L I ; $ R '
j- , y J Y < " > j

Punctuation[edit | edit source]

Only three printable ASCII characters are not defined in the syllable chart, and are, de facto, virtually always used as punctuation in the same way as in sitelen Lasina.

The ASCII space ( ) is used to separate words. The period (.) and the colon (:) are generally used as sentence separators. Any other punctuation would be lost due to conflicting with syllable characters or being out of the ASCII range.

Similarly, due to the significant letter case and the use of all ASCII brackets, there is no clear way to specify proper names with this system. It has been suggested to instead use the colon for name marking where necessary, using the period as the only sentence separator, even after sentence-linking ni.[3]

Usage[edit | edit source]

The syllabary can be used to compress text, with each character being reducible to 7 bits. Word lengths range from unchanged (for one-letter words) to a third as long, such as C% for sinpin. A major limiting factor for the compression ratio is the need to separate words.

Misali also suggests using the syllabary as an input method for other writing systems.

The syllabary is rarely used as a writing system for general conversation.

See also[edit | edit source]

External links[edit | edit source]

References[edit | edit source]

  1. jan Misali [@hbmmaster]. (13 October 2017). [Message posted in the #conlangs channel in the "CongIang" Community Discord server]. Discord. Retrieved 22 February 2024. "ascii toki pona syllabary". Image (archived).
  2. jan Misali. (29 April 2019). Archive of "seximal offtopic: toki pona ASCII syllabary". Wayback Machine. Internet Archive. Retrieved 22 February 2024.
  3. kulupu Menasewi. (11 January 2024). [Message posted in the #sitelen Aki pi jan Misali · sE$ ak P j mcl thread in the #toki-suli channel in the ma pona pi toki pona Discord server]. Discord. Retrieved 15 January 2024.