Good, finally you resolve your problem by yourselfBTW, are you sure RTL (right to left) text input supported on A1200?
When I create Lamborghini Multi-Language pack. It have some wrong Keyboard Id that make it doesn't appear. so I try to get Keyboard Id from SDK or firmware file. but not success. I accidently found IM_KBD_Interface::LangId2KbID() in libezxkeyboard.so.1.0.0 object dump file. so I try to create app ezx app that get keyboard id from language id. so I start this project. It need ZLanguage and UTIL_Language in libezxappbase.so.1.0.0.
so I try create them first time I thing they are class but I didn't found constructor of ZLanguage and UTIL_Language. I found only constructor of IM_KBD_Interface. my application can run and return some language info by it does not right. so I change ZLanguage and UTIL_Language to namespace. It's worked. I doesn't know before what namespace is. but I understand now.
"Language" is a console application that report all available languages in phone( like in setting->language ). and It also report supported language in phone even it isn't available.
How to use it.
copy both language and language.sh into SD (/mmc/mmca1) and execute this command
so all language info in phone are in this file.Code:cd /mmc/mmca1 ./language.sh > langlist.txt
Here is my langlist.txt from 11.12.09P Lamborghini Multi-Language Pack.
I use unfinished Lamborghini Multi-Language pack so I have arabic (ar), germany(de), english(en-gb), spanish(es-co), france(fr-ca), Italian(it), Netherlands(nl), Portuguese(pt-br), Thai(th), Traditional Chinese( zh-cn), Simplified-Chinese or Hong-Kong (zn-hk). not sure about Chinese language name which is Traditional or Simplified.List of Available languages in your system.
--------------------------------------------------------------
Code ar : ID 35
Code de : ID 1
Code en-gb : ID 0
Code es-co : ID 5
Code fr-ca : ID 3
Code it : ID 4
Code nl : ID 7
Code pt-br : ID 8
Code th : ID 15
Code zh-cn : ID 20
Code zh-hk : ID 22
--------------------------------------------------------------
--------------------------------------------------------------
Lang en-us : en-us : 1 Index : 0
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang Deutsch : de : 0 Index : 1
KB = {20010174-6a8f-d6bf-1248-4abc45ee8897}
Lang da : da : 7 Index : 2
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang Fran็ais : fr-ca : 3 Index : 3
KB = {20010374-6a8f-d6bf-1248-4abc45ee8897}
Lang Italiano : it : 2 Index : 4
KB = {20010474-6a8f-d6bf-1248-4abc45ee8897}
Lang Espa๑ol : es-co : 4 Index : 5
KB = {20010574-6a8f-d6bf-1248-4abc45ee8897}
Lang sv : sv : 6 Index : 6
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang Nederlandse : nl : 5 Index : 7
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang Portugu๊s : pt-br : 8 Index : 8
KB = {20010874-6a8f-d6bf-1248-4abc45ee8897}
Lang fi : fi : 9 Index : 9
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang no : no : 10 Index : 10
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang cl : cl : 11 Index : 11
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang hu : hu : 13 Index : 12
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang tr : tr : 12 Index : 13
KB = {1641efca-03bf-4f19-ba21-15b7b16f803e}
Lang pl : pl : 14 Index : 14
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang : th : 15 Index : 15
KB = {637a8a14-af98-41da-969a-2bd16ecda805}
Lang vi : vi : 15 Index : 16
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang ms : ms : 15 Index : 17
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang in : in : 15 Index : 18
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang en-us : en-us : 15 Index : 19
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang : zh-cn : 17 Index : 20
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang cs : cs : 32 Index : 21
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang : zh-hk : 15 Index : 22
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang bg : bg : 15 Index : 23
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang hr : hr : 15 Index : 24
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang et : et : 15 Index : 25
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang lv : lv : 15 Index : 26
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang lt : lt : 15 Index : 27
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang ro : ro : 15 Index : 28
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang ru : ru : 15 Index : 29
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang sr : sr : 15 Index : 30
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang sk : sk : 15 Index : 31
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang sl : sl : 15 Index : 32
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang uk : uk : 15 Index : 33
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang he : he : 15 Index : 34
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang : ar : 15 Index : 35
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang fa : fa : 15 Index : 36
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang hi : hi : 15 Index : 37
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang ur : ur : 15 Index : 38
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
Lang en-us : en-us : 15 Index : 39
KB = {200100d4-7206-e819-6943-c7a1cedd91d9}
--------------------------------------------------------------
destroy ShareImage Object
and in lower report I got a Keyboard id (InputMethodType ={XXX}) for use in *.kbd file. some language have the same index or keyboard id as another. that is a unsupported input languages. like Danish(da), Finnish(fi), Norway(no) They have the same keyboard id as English EMEA. so da, fi, no can translate but cannot have own keyboard. I think languages that not in list are unsuported for both translation and input.
Both Chinese have an exception they use special libraries to display pinyin and zhuyin keyboard.
so for someone who need to localize phone. try this app before and see which languages are in your phone. if you have a keyboard id for your language so you can create a *.kbd and make it display on screen easily. BUT if you do not have keyboard id like Arabic, Russia. you need to replace so board with yours. see detail in Booster's How to localize guide.
I think supported keyboard and language are different in different firmware. so please try this app and post your language + f/w here.
ps. this application list only first 40 languages due to ZLanguage.h defination in SDK.
PS. I also include source code of language in attachment files. If you need to use ZLanguage and UTIL_Language. copy ZLanguage.h and UTIL_Language.h into /opt/dev-ezx/XX/include/ezx
Thanks for blackhawk for help me link libezxkeyboard.so.1.0.0.
Last edited by Konig; 05-29-2009 at 01:12 PM.
Visit my Blog here.http://my.opera.com/eakrin
Good, finally you resolve your problem by yourselfBTW, are you sure RTL (right to left) text input supported on A1200?
I dont sure that a normal A1200/E6 support Right-to-Left Language. because I found only isRTL function. I think It need a specific library like chinese language. I try to add input for arabic but can not success. I think because system does not have keyboard id for arabic (ar, 35).
This app I only trial and error. and it's worked. LOL. Next step I think If I can assign new keyboard id to system. so we can localize language be startup app.
Visit my Blog here.http://my.opera.com/eakrin
I think RTL support depend on Qt library only (except if Motorola using different method). I have unfinished project to show Arabic text on E680i. Since E680i's Qt library have no RTL support, my application need a patched Qt 2.3.10 to show Arabic font properly.
I 'm still in progress in arabic LP project. 1st trial fail because phone doesn't display Arabic keyboard due to It have no keyboard id. so I switch to plan B. Use the same method as Russian localize, replace Europian symbolic keyboard with Arabic. BUT Still to time to follow them. coz I'm struct in EZX.
I think after I can use Arabic keyboard. I 'll know that phone support Right-to_Left language or not.
Visit my Blog here.http://my.opera.com/eakrin
@eakrin
Maybe someone can help you to prepare Arabic text. If it shows correctly (you can take a screenshot for it), it is a good start.
where do you put the command? ekonsole?
and where do the list appear.
i would like to se if swedish is available.
copy 2 files into your SD and execute 2 command line in eKonsole or via telnet command prompt.
1. copy lanuguage and language.sh to SD
2. execute
cd /mmc/mmca1
./language.sh > langlist.txt
3. result are in langlist.txt in SD.
Last edited by eakrin; 03-19-2008 at 06:34 AM.
Visit my Blog here.http://my.opera.com/eakrin
Good job, eakrrin, but that command doesn't work because of some name problem, here I correct that:
when you download the file, you can find dist folder that contains:
-language
-langage.sh
1: Rename language to langauge
2: Rename langage.sh to langage.sh
Now. it'll be work!![]()
Amin's Persian Gulf firmware has been updated(9/2/2010)
"We share the same biology, regardless of ideology..."
By the way...
here is mine:
Code:List of Available languages in your system. -------------------------------------------------------------- Code en-gb : ID 0 Code es-co : ID 5 Code fr-ca : ID 3 Code it : ID 4 Code pt-br : ID 8 Code th : ID 15 Code zh-cn : ID 20 Code zh-hk : ID 22 -------------------------------------------------------------- -------------------------------------------------------------- Lang en-us : en-us : 1 Index : 0 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang de : de : 0 Index : 1 KB = {20010174-6a8f-d6bf-1248-4abc45ee8897} Lang da : da : 7 Index : 2 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang French : fr-ca : 3 Index : 3 KB = {20010374-6a8f-d6bf-1248-4abc45ee8897} Lang Italiano : it : 2 Index : 4 KB = {20010474-6a8f-d6bf-1248-4abc45ee8897} Lang Spanish : es-co : 4 Index : 5 KB = {20010574-6a8f-d6bf-1248-4abc45ee8897} Lang sv : sv : 6 Index : 6 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang nl : nl : 5 Index : 7 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang Portuguese : pt-br : 8 Index : 8 KB = {20010874-6a8f-d6bf-1248-4abc45ee8897} Lang fi : fi : 9 Index : 9 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang no : no : 10 Index : 10 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang cl : cl : 11 Index : 11 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang hu : hu : 13 Index : 12 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang tr : tr : 12 Index : 13 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang pl : pl : 14 Index : 14 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang Thai : th : 15 Index : 15 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang vi : vi : 15 Index : 16 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang ms : ms : 15 Index : 17 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang in : in : 15 Index : 18 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang en-us : en-us : 15 Index : 19 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang Pinyin : zh-cn : 17 Index : 20 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang cs : cs : 32 Index : 21 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang Zhuyin : zh-hk : 15 Index : 22 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang bg : bg : 15 Index : 23 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang hr : hr : 15 Index : 24 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang et : et : 15 Index : 25 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang lv : lv : 15 Index : 26 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang lt : lt : 15 Index : 27 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang ro : ro : 15 Index : 28 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang ru : ru : 15 Index : 29 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang sr : sr : 15 Index : 30 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang sk : sk : 15 Index : 31 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang sl : sl : 15 Index : 32 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang uk : uk : 15 Index : 33 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang he : he : 15 Index : 34 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang ar : ar : 15 Index : 35 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang fa : fa : 15 Index : 36 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang hi : hi : 15 Index : 37 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang ur : ur : 15 Index : 38 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} Lang en-us : en-us : 15 Index : 39 KB = {200100d4-7206-e819-6943-c7a1cedd91d9} -------------------------------------------------------------- destroy ShareImage Object
Amin's Persian Gulf firmware has been updated(9/2/2010)
"We share the same biology, regardless of ideology..."