@mountbuild/tone-script

<br/> <br/> <br/> <br/> <br/> <br/>

Usage no npm install needed!

<script type="module">
  import mountbuildToneScript from 'https://cdn.skypack.dev/@mountbuild/tone-script';
</script>

README










Summary

Tone script (esoteric name HanĂ¡kana) is a Universal Writing System (UWS), capable of representing all human voice sounds in a concise and readable script. This means you can write any language in tone script script (constructed language or natural language) and read it without having to learn that language's specific quirks. See some example words.

Tone script is a sound-based script like the Ancient Runes, which means when you read see a symbol/letter, you know exactly how it is pronounced. There are no weird edge cases or specific words for which you have to memorize the sound. You simply learn the script and can pronounce the words and texts.

You can find how to pronounce the letters in the PDF guide or partly on leaf.surf. Print out the exercises to learn how to write and pronounce them too! Try typing it interactively here!

You may note that Linguistics also has the International Phonetic Alphabet (IPA), which seems to accomplish a similar thing. But the IPA is not for writing anything but the most detailed pronunciation guides, not for writing sentences or long texts. Tone script is meant for the later, for writing like you would in a normal language.

The ASCII encoding is mapped to IPA for your knowledge in the call script. Ideally, tone script would be included in the Unicode standard, but that is unlikely. We have suggested it be used as a writing system on Mars đŸ˜‚. Here is a book using it as well.



It doesn't necessarily play well with dyslexia, which might find the highly symmetric patterns difficult. We think there are far better methods of learning outside of writing systems than trying to invent the perfect script for all cases. To most natural languages, dyslexia is an unsolved problem. We instead strive to make a minimal seed from which knowledge can be modelled from primitive parts, memorized, and then used to derive further knowledge.

Tone Script is also a monospaced font, to be used eventually for programming. All sounds are derived from 3 base shapes, that for i, a, and u. Rotating and extending tails on them gives you the remaining base letters. Then adding dots to them extends the sound of the base letter slightly. From this it should be straightforward to memorize how to pronounce words in a day or so, and from there you can read and write any language pretty well.

The Alphabet

These are the main sounds. Everything else are variations of these sounds. These "variations" are accomplished in a structured way, see the guide. Indic retroflex consonants are added with a dot on the tailless side. Arabic sounds are added with a dot on the tailed side usually. Clicks are mapped to the closest mouth-position-oriented sound. Ejectives and implosives are simply added with accent marks. Etc.

Alphabetical order is this:

i
a
u
e
E
U
I
o
A
O
o#
u#
e#
i#
a#
ma
na
qi
ga
da
bi
pa
tu
ki
hu
lu
wi
fa
si
Ci
za
vu
ya
xu
ri
cu
ji
Qu
Sa
Zi
'a

Everything else is a modification on this base. Here are many more sounds.

La
Ni
Xa
Du
Ju
Ti
Ra
Ha
Ku
Va
Fu
"u
l~a
d~a
s~u
c+~a
t~u
b?a
g?u
ap.
at.
ak.
p!
t!
k!
s!
x!
T!
K!
p@
t@
k@
s@
d*
l*
p*
t*
k*

Main Symbols

Here are the consonants and vowels in their main form (without tone or stress markers).

Note, to add "aspiration" to a sound, you add the corresponding "h" symbol after the main symbol. To add nasalization to a vowel, you add a two dots below the vowel. Long vowels are made by writing two vowel letters.

Sound Variation

The W is for labialization, Y for palatalization, h for aspiration, Q~ for phayrngeal stop, ~ for pharyngealization, M for nasalization, and $ for non-aspirated stop.

Phonology

Here is the consonant IPA phonology chart mapping.

Vowel Symbols

Here are all the possible vowel combinations. The combination elements are: tone (1, 2, 3, 4, or 5, 1 being the lowest, 5 being the highest), nasality, and stress. In languages with only 3 tones you can just use tones 2, 3, and 4, but in languages with 5 tones you need all 5. Nasality is done with two dots under the vowel. Stress is done with one dot above the vowel. Low tones are on the left, high tones on the right.

Usage

npm install @mountbuild/tone-script -g

To get access to the font for your own system, either just click and download the font.otf directly, or do this to copy it after you've installed the NPM package:

tone-script use tone-script.otf

To print tone-script-font-ready text in the terminal, use:

tone-script print "hElo wrld"
tone-script print "$(<story.txt)"

Note, you need to write it in tone script ASCII (called "call script"), which you can see by looking at the form.js file.

To view it in the browser fully rendered:

tone-script view example.txt

To use it in pure JavaScript:

npm install @mountbuild/tone-script

Then in JavaScript or Node.js land:

const tone = require('@mountbuild/tone-script')

document.body.innerHTML = tone('hElow wOrld')

Here is how you might use it more robustly:

const lines = `frUm mAunt yu faind CU stown, ritxiq tu CU klAwd
no wEr an Orc duw yuw fil CU pAwOr Uv neytxOr al UrAwnd
wIc CU klAwd sow klows, yuw kAn si, tUtx, En teyst
fidiq yor EnOrdji tu CU stown wIc heyst
mAwnt holdz Its xeyp, layk CU sikrIt bal`
  .split(/\n+/)
  .map(line => line.split(/\s+/).map(tone).join(' '))
  .join('\n')

document.body.innerHTML = lines.split(/\n/)
  .map(line => `<div>${line}</div>`)
  .join('\n')

License

Copyright 2021 Mount

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Mount

Tone script is being developed by the folks at Mount, a California-based project for helping humanity master information and computation. Mount started off in the winter of 2008 as a spark of an idea, to forming a company 10 years later in the winter of 2018, to a seed of a project just beginning its development phases. Mount funds tone script's development with Etsy and Amazon shops. Also find us on Facebook, Twitter, and LinkedIn. Check out our other GitHub projects as well!