Richmond's Winter Project
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Richmond's Winter Project
Over the next few months I shall be building an OXT Lite program to allow end-users to input text in Ge'ez: the ancient, classical Ethiopian language used in extant Jewish texts such as the Books of Enoch, and Jubilees.
https://archive.org/details/EthiopicBoo ... 7/mode/2up
- -
For this you will NOT need to know the language:
https://en.wikipedia.org/wiki/Ge%CA%BDez
But you will need to understand something of the way an abugida works.
https://en.wikipedia.org/wiki/Ge%CA%BDez_script
as well as access to a unicode compliant Ge'ez font:
https://github.com/geezorg/legally-free-geez-fonts
I shall use: AbyssinicaSIL-Regular
Although I should state that I disapprove of SIL's activities (especially in Papua New Guinea), one does have to admit their fonts rock.
https://en.wikipedia.org/wiki/SIL_International
You will also need these Unicode charts to understand the Unicode address of the glyphs of the Ge'ez abugida.
https://www.unicode.org/charts/PDF/U1200.pdf
https://archive.org/details/EthiopicBoo ... 7/mode/2up
- -
For this you will NOT need to know the language:
https://en.wikipedia.org/wiki/Ge%CA%BDez
But you will need to understand something of the way an abugida works.
https://en.wikipedia.org/wiki/Ge%CA%BDez_script
as well as access to a unicode compliant Ge'ez font:
https://github.com/geezorg/legally-free-geez-fonts
I shall use: AbyssinicaSIL-Regular
Although I should state that I disapprove of SIL's activities (especially in Papua New Guinea), one does have to admit their fonts rock.
https://en.wikipedia.org/wiki/SIL_International
You will also need these Unicode charts to understand the Unicode address of the glyphs of the Ge'ez abugida.
https://www.unicode.org/charts/PDF/U1200.pdf
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
An alphabetic system has individual symbols and/or digraphs for individual consonants and vowels.
An abugida system normally contains symbols that consist of a consonant with an inherent vowel sound.
The English variant of the Latin alphabet only consists of alphabetic symbols.
The Bulgarian variant of the Cyrillic 'alphabet' contains both alphabetic symbols and abugida symbols.
The Devanagari writing system used for Hindi consists of abugida symbols.
The Ge'ez script for classical Ethiopic texts consists of abugida symbols amounting to a vast number of glyphs: something that makes
life relatively difficult for computer keyboard input, as it is extremely clumsy to assign many levels of keyboard levels (via dead keys)
with one key combination for each abugida symbol (e.g. SHIFT-ALT-CTRL-Q for glyph Hex 1310).
In terms of usability it is much more practical if one can build a abugida symbol cumulatively: Unicode Hex 1310 is the Ge'ez glyph for 'GWA'
so it has to be easier for end-users to type G+W+a and the interface to deliver Hex 1310.
This is something that OXT lends itself to extremely well.
An abugida system normally contains symbols that consist of a consonant with an inherent vowel sound.
The English variant of the Latin alphabet only consists of alphabetic symbols.
The Bulgarian variant of the Cyrillic 'alphabet' contains both alphabetic symbols and abugida symbols.
The Devanagari writing system used for Hindi consists of abugida symbols.
The Ge'ez script for classical Ethiopic texts consists of abugida symbols amounting to a vast number of glyphs: something that makes
life relatively difficult for computer keyboard input, as it is extremely clumsy to assign many levels of keyboard levels (via dead keys)
with one key combination for each abugida symbol (e.g. SHIFT-ALT-CTRL-Q for glyph Hex 1310).
In terms of usability it is much more practical if one can build a abugida symbol cumulatively: Unicode Hex 1310 is the Ge'ez glyph for 'GWA'
so it has to be easier for end-users to type G+W+a and the interface to deliver Hex 1310.
This is something that OXT lends itself to extremely well.
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
So: to get started with actual programming, here's a 2-card stack that we can use as our template to build our program with:
- - -
You will find that I have already added action 'buttons' to navigate between these 2 cards.
There are NOT buttons, but snapshots of buttons (images) to guarantee cross-platform consistency.
- - -
You will find that I have already added action 'buttons' to navigate between these 2 cards.
There are NOT buttons, but snapshots of buttons (images) to guarantee cross-platform consistency.
- Attachments
-
- Sheba.oxtstack.zip
- (2.19 MiB) Downloaded 5 times
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Before we proceed any further please:
1. Install the Ge'ez font in your system.
2. Download the stack and 'play' with it.
3. Either print out, or in some other way make sure you have access to the Ethiopic Unicode chart.
1. Install the Ge'ez font in your system.
2. Download the stack and 'play' with it.
3. Either print out, or in some other way make sure you have access to the Ethiopic Unicode chart.
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
It is a good idea to "get your head around" the basic consonantal glyphs:
- -
I apologise for those of you who are not cognisant with modern Hebrew, but I have written (in blue) an ALEF and an AIN as those vowels cannot really be adequately represented using some sort of Latinate letter (and I should add that my use of 2 modern Hebrew letters in no way demonstartes support for the Modern state of Israel, Hamas, or Hezbollah).
It is not really necessary to learn the numerical forms, although we will try to integrate them into our program.
- -
HOWEVER, I will have to hack that font come the time as it does NOT contain Ethiopic numerical glyphs in the Unicode allotted paces.
- -
I apologise for those of you who are not cognisant with modern Hebrew, but I have written (in blue) an ALEF and an AIN as those vowels cannot really be adequately represented using some sort of Latinate letter (and I should add that my use of 2 modern Hebrew letters in no way demonstartes support for the Modern state of Israel, Hamas, or Hezbollah).
It is not really necessary to learn the numerical forms, although we will try to integrate them into our program.
- -
HOWEVER, I will have to hack that font come the time as it does NOT contain Ethiopic numerical glyphs in the Unicode allotted paces.
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Here are the basic consonantals with their Unicode addresses which I have converted from Hexadecimal into Decimal:
-
-
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Now we can use my Key Generator stack to generate Key Buttons:
- - -
- - -
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Now you can CUT that 'button' and place it on the keyboard map on the Main stack:
- -
Now you will require 2 fields called "fBUILDER" and "fOUTPUT" respectively.
- -
Let's add some code to our 'button':
-
- -
Now you will require 2 fields called "fBUILDER" and "fOUTPUT" respectively.
- -
Let's add some code to our 'button':
-
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Now clever people, instead of being lazy and waiting for me, can generate all the other consonantals and put them in place.
- Attachments
-
- Key Generator.oxtstack.zip
- (1.03 KiB) Downloaded 5 times
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
For consonantal entry you'll need 'buttons' for all the signs in this table except for the 'Alif' and the 'Ayin' (shaded in orange) [people who are familiar with Afro-Asiatic languages (previously called 'Semitic') will recognise these as what might be best termed 'vowel place markers'].
- -
Arabic alif and ayn.
- -
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Before we go any further let's add some code to the ' ሀ' button (so we can repeat this script across all our base consonantal glyphs), so end-users are prompted when their mouse is over the button:
- -
- -
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Placing the buttons is a relatively easy process (although a bit boring):
- -
Now if, like me, you are ever so slightly unsure of the phonetic values of those "funny" letters it would seem a good idea to have
a built-in system to report them.
So let's place a field here:
- -
This is where we can display the phonetic values of each Ethiopic glyph.
-
- -
Now if, like me, you are ever so slightly unsure of the phonetic values of those "funny" letters it would seem a good idea to have
a built-in system to report them.
So let's place a field here:
- -
This is where we can display the phonetic values of each Ethiopic glyph.
-
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
We can now copy the script from button 'ሀ' to all the other buttons, ONLY adjusting the value for the phonetic transcription field.
- - -
I used Shapecatcher to find the Unicode values for transcription letters with diacritics:
https://shapecatcher.com/
- -
This is a wonderful resource I cannot recommend too strongly.
- - -
I used Shapecatcher to find the Unicode values for transcription letters with diacritics:
https://shapecatcher.com/
- -
This is a wonderful resource I cannot recommend too strongly.
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Let's have a CLEAR button in case we make a mistake:
- -
So: To Summarise . . .
We have built something that allows us to enter single Ethiopic base consonantal glyphs into a field called 'fBUILDER".
- -
So: To Summarise . . .
We have built something that allows us to enter single Ethiopic base consonantal glyphs into a field called 'fBUILDER".
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
As we are going to CONSTRUCT consonantal clusters like this:
- -
We might like to modify the scripts in all our input buttons:
- -
- -
We might like to modify the scripts in all our input buttons:
- -
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Here is the source stack so far.
- Attachments
-
- Sheba.oxtstack.zip
- (2.2 MiB) Downloaded 5 times
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Now we need to provide buttons for the Labio-velar variant consonantals:
- - -
- - -
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
Making a program of this sort is a long drawn-out process, and, as you should have worked out from the way buttons use repetitive code, a fairly tedious process that involves a lot of cutting and pasting of code. I have used for many years a series of gamepads on the left side of my keyboard to minimise repetitive stress injury and write-pronation:
-
-
https://richmondmathewson.owlstown.net/
- richmond62
- Posts: 3731
- Joined: Sun Sep 12, 2021 11:03 am
- Location: Bulgaria
- Contact:
Re: Richmond's Winter Project
We also need to consider Ethiopic punctuation symbols:
- -
The numbers supplied by the Unicode consortium are in Hexadecimal, so, for instance the Hex 1360 is 4960 for those of us who only have 10 fingers.
As I generally work on Macintosh computers I use the Mac built-in calculator to convert Hex into Decimal numbers:
- -
Ethiopic also features 2 series of number symbols:
-
- -
The numbers supplied by the Unicode consortium are in Hexadecimal, so, for instance the Hex 1360 is 4960 for those of us who only have 10 fingers.
As I generally work on Macintosh computers I use the Mac built-in calculator to convert Hex into Decimal numbers:
- -
Ethiopic also features 2 series of number symbols:
-
https://richmondmathewson.owlstown.net/
Who is online
Users browsing this forum: No registered users and 0 guests