[HN Gopher] Show HN: A modern way to type in African languages
___________________________________________________________________
Show HN: A modern way to type in African languages
Hello HN, I'm pythonbrad and a core maintainer of Afrim - an input
method engine for African languages. Afrim want to simplify the
typing in African languages and also digitalize the African typing
systems. Basically, it wants to solve the problems encountered with
current solutions: - slow typing - not easily configurable -
keyboard layout dependent - constant bugs Additionally, Afrim
offers the following features [1]: - Dataset easily customizable -
Keyboard layout independent - Auto completion, autocorrection and
autosuggestion - Support all sequential codes Technical details
[2]: Afrim is written in Rust and his architecture is inspired of
RIME. What's next? - Offer an android frontend of the Afrim (in
development) [3] - Support more African input methods as possible
I would like to have your opinions about this project. I have been
working on it so far, and I would like to know how I can improve
it. -------------- [1]
https://github.com/pythonbrad/afrim?tab=readme-ov-file#featu... [2]
https://pythonbrad.github.io/afrim-man/for_developers [3]
https://github.com/pythonbrad/afrim-keyboard/
Author : pythonbrad
Score : 85 points
Date : 2024-09-02 18:10 UTC (4 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| azernik wrote:
| Comment on the documentation/README more than anything - I
| couldn't find anywhere a list of specific languages supported.
| That's a pretty important data point for any speaker of an
| African language hoping to use this IME. If the library supports
| only Amhari and Ge'ez (the only two languages mentioned
| specifically) it's extremely important to a Wolof or Swahili
| speaker to know that when evaluating if the IME is in a usable
| state for them.
| valdez wrote:
| It looks like it is an a distinct repository, see
| https://github.com/pythonbrad/afrim-data
| numpad0 wrote:
| repo for Android keyboard implementation[1] says below, but
| feels strange this don't seem to be stated anywhere else:
| ### What african languages (and layouts) are supported ?
| - Amharic Keyboard - Transliteration - Clafrica
| Keyboard - Transliteration - Geez Keyboard -
| Transliteration - Nufi Keyboard (Fe'efe'e) -
| Transliteration
|
| 1: https://github.com/pythonbrad/afrim-keyboard
| umanwizard wrote:
| Isn't Swahili compatible with ASCII (just like English)? Why
| would you need a special IME to write it?
| andsoitis wrote:
| Yes, Swahili is now written using the Latin script.
| azernik wrote:
| Depends on location and time period. There's lots of
| historical stuff written in a customized Arabic script with
| unique characters.
| pythonbrad wrote:
| I understand your point, we should do a big work at the level
| of the documentation.
| trompetenaccoun wrote:
| Apart from Ethiopia, are there any places where they don't use
| either Latin or Arabic scripts in everyday life? There are
| technically a whole bunch of alphabets of course but they aren't
| used much afaik. Maybe the Tuareg script? Is that used by people
| in North Africa beyond bilingual signs?
| firefoxd wrote:
| There is Adlam for Fulani [1]. Widely spoken in west Africa.
| However, I'm still trying to familiarize myself with the
| writing system. The word for "yes" in fulani does not translate
| in writing. The best way I can write it is HIiiII. Imagine the
| lowercase i goes down in tone. Then the last two uppercase i
| shoots up. I don't know if any writing system supports this.
|
| [1]: https://en.m.wikipedia.org/wiki/Adlam_script
| yorwba wrote:
| If there are no two words that are only distinguished by
| tone, it might be unnecessary to mark it in writing, except
| as a learning aid for people who're not fluent enough in the
| language to predict this information from context.
|
| E.g. in English, questions are marked by rising pitch, but
| that intonation is not indicated in writing.
| jiggawatts wrote:
| ?
| pythonbrad wrote:
| Using the phonetic representation (IPA), you can obtain a
| writing system similar to the pinyin.
|
| Hanyu Pinyin Hanyu Pinyin Fang'an
|
| Bopomofo HAN\ IUV PIEN IEN FANG AN\
|
| IPA [xan.y pkin.in faNG.an]
|
| Cameroonian dialect are written using the GACL who is similar
| to the IPA.
|
| Clafrica: Pookai2t peu2nze2e2 n*kut !
|
| Shupap@m (Bamoun): Pooket p@nzee NGkut !
| ks2048 wrote:
| https://en.wikipedia.org/wiki/Writing_systems_of_Africa
|
| I don't think any have very widespread use outside of Ge'ez
| (Ethiopian, etc). Maybe Tifinagh.
|
| I do notice that iOS has built-in keyboards for N'Ko and
| Tamazight (Tifinagh) - pretty cool to try out if you have an
| iphone.
| saylisteins wrote:
| North african here! For Moroccan arabic dialect, we mostly use
| latin alphabets and some numbers to replace some sounds/letters
| pythonbrad wrote:
| It looks a little bit similar to the working of the clafrica
| code to type in General Alphabet of Cameroonian languages.
|
| Clafrica: Pookai2t peu2nze2e2 n*kut !
|
| Shupap@m (Bamoun): Pooket p@nzee NGkut !
| DazWilkin wrote:
| I was intrigued by this and looked through the README for
| examples of Afrim being used and learn more about the problem
| it's solving and how but didn't find these.
| avodonosov wrote:
| This video linked from the HN post is an example, although I
| did't understand yet how it works. They type on a latin
| keyboard but get some other symbols in result.
|
| https://github.com/pythonbrad/afrim-keyboard/
| avodonosov wrote:
| Similar to other commenters, I am curious to know what is the
| problem with african languages? Can't you just make a button for
| each character in the alphabet? (The readme mentions it is a
| phonetic-based input method, so I assume African languages use
| alphabets, not some logograms, right?)
|
| What is common for African languages that allows solving the
| problem for all of them together in one software package? (How
| meaningful, for example, whould be a software package for
| Eurasian languages?)
|
| I watched the video - https://github.com/pythonbrad/afrim-
| keyboard/ - but don't understand. A latin keyboard is used, but
| it produces some other characters.
| ppseafield wrote:
| Ge'ez and its adaptations are abugidas, which means one symbol
| is a full syllable. For Amharic there are over 200 individual
| symbols. [0] That would be a big keyboard! It does seem that
| most in-use languages in Africa are alphabets or abjads, which
| could be adapted to keyboards. [1]
|
| [0]
| https://en.wikipedia.org/wiki/Ge%CA%BDez_script#Ge%CA%BDez_w...
|
| [1] https://en.wikipedia.org/wiki/Writing_systems_of_Africa
| avodonosov wrote:
| Thanks.
|
| So probably the user on the video types in a phonetic
| approximation of the words using the latin alphabet, and the
| software translates it to the abugida symbols?
|
| Seems plausable, especially because he types several latin
| characters to get one symbol.
|
| Interesting to note that sometimes he also uses digits.
| cyph3rpvnk wrote:
| Amahric, Ge'ez and "Ethiopic" are all the same alphabets, am I
| missing something? Ge'ez encompasses all of them including
| Tigrinya. Why not just have an expanded Ge'ez library?
| fsndz wrote:
| I couldn't understand what this is for and why it is useful.
| Gotta work on that documentation to make it more clear.
| beAbU wrote:
| It's interesting, having grown up in Africa, and lived there
| almost 35 years, reading, writing and speaking an African
| language, being surrounfed by at least 10 other African languages
| and seeing them written, that I have never ever in my entire life
| encountered this writing system.
|
| I think the product is a great technological achievement, but...
|
| I would warn against the generalisation of "African" in this
| context. It does not tell the full picture, and simplifies the
| rather complex and very ancient reality that is language on the
| continent of Africa.
| pythonbrad wrote:
| Thanks for your feedback, i will take it in account.
| chungy wrote:
| Africa is a very very big place. :)
| MehdiHK wrote:
| Cool. Do you have plans for Windows and macOS frontends?
| pythonbrad wrote:
| Windows is supported through
| https://github.com/pythonbrad/afrim-wish
| MehdiHK wrote:
| Oh, didn't realize that. How does it handle key input in
| Windows? Text Services Framework or something else?
| pythonbrad wrote:
| The initial work was a prototype, we are currently working
| on the usage of text service for windows, and IBUS for
| Linux (mainly Wayland environment).
|
| But the next release, will take a time, since we are not
| familiar with these technologies.
| https://github.com/pythonbrad/afrim/issues/242
| kreyenborgi wrote:
| https://en.wikipedia.org/wiki/Writing_systems_of_Africa is
| dangerously interesting
| crazygringo wrote:
| I've visited all the links and honestly still don't have the
| slightest idea what this input method does, or exactly what
| problem it's trying to solve, or why it's a good solution to the
| problem. I found the video [1] but it has no audio or
| explanations at all.
|
| I also don't understand why you'd want phonetic input methods,
| rather than wanting to input your desired character directly. For
| languages like Chinese I understand because there are thousands
| of characters, but aren't most or all African writing systems
| based on small alphabets? I shudder to think of having to learn
| to input English phonetically.
|
| So if you're looking for opinions, my first one is that your
| pages need to do a better job at explaining what current problems
| are (with multiple clear examples for each), where current
| solutions fail (with clear examples of how), and how your
| solution is different and better (again, with clear examples).
|
| Good luck!
|
| [1] https://github.com/pythonbrad/afrim-keyboard/?tab=readme-
| ov-...
| saylisteins wrote:
| > I also don't understand why you'd want phonetic input methods
|
| I'm from Morocco, and most people here (myself included) are
| accustomed to typing on an AZERTY (or QWERTY) keyboard. Typing
| in Arabic using a standard keyboard layout can be quite
| cumbersome and slow for us (Most people never took the time to
| learn it), using latin alphabet for us is just more practical,
| and doesn't require you to learn a new way to type.
|
| In our daily communication, when we text, whether with friends
| or family, we often switch between English, French, or Moroccan
| dialects. When writing in Moroccan dialect, we frequently use a
| phonetic system (read in french way) that combines the Latin
| alphabet with numbers to represent specific sounds or letters
| that don't have a direct equivalent in the Latin script.
|
| For example: q is replaced by "q" `
| is replaced by "3" kh is replaced by "5" (though "kh"
| is more common) G is replaced by "4" (or "gh")
| The rest is just a 1 to 1 conversion to how the letter sounds
| in french
|
| Example phrase :
|
| Bro, I woke up and had a sick breakfast.
|
| Sat, 3ad fe9t o drabt wa7d ftor khatir.
| delfinom wrote:
| ah so leet speak.
| fsndz wrote:
| I said basically the same thing earlier and got downvoted,
| which surprised me. Now I know I am not alone in thinking that
| the purpose of the project is not clear enough.
|
| Thanks for sharing your thoughts.
| zaik wrote:
| How does this compare to IBus or Fcitx?
| vfclists wrote:
| Is this being done in collaboration with the Linguistics
| faculties of African universities?
| lelanthran wrote:
| I'm wondering what problem you experienced that this is a
| solution for.
|
| "African languages" is not, in my experience, a single class of
| languages. There are large differences between the languages,
| with most of the northern languages borrowing heavily from
| Arabic, most of the central African/West African languages
| borrowing from French and the rest are different enough that they
| can't be considered dialects.
| juxtapose wrote:
| It's interesting to see African input methods taking inspiration
| from a Chinese IME, RIME. Would like to know more about this!
___________________________________________________________________
(page generated 2024-09-02 23:00 UTC)