Ghoniem,
I did not check your code yet but it really looks good. I will create
CVS
account for you to check-in your work on
arabic-fedora.com isa.
Great work so far :)
OK to the real tasks .. Shall I install tomcat and get your a test page
where you can publish your work there? I can also create Database
for you, give you access to creat tables ..etc.
Attached is a java parser that loads data from a PO file into an
instance of POFile (an ArrayList of POMessages). For now, a POMessage
has three strings : comments, msgid and msgstr. If necessary, we can
easily add a unique numeric ID or a hashcode to identify each message.
Having read the specs of PO files sent by Sherif, I realized that the
header of each PO file is actually a POMessage, which simplified the
previous code. The parser now takes into account all types of comments +
multiple-line strings.
Sounds good.
It handles Arabic strings correctly using the UTF-8 charset. Other
charsets can be passed to the parser. Therefore all languages supported
by java can be handled by this parser. Please test it on your side and
give me feedback.
As far as I understand next step would deal with storing and retrieving
data in/from a database. If so, we need to discuss this point carefully
to cover all use cases. Here is a small list :
1- From an administrator point of view :
1a- in preparation of a new release, load all PO files into the database.
1b- build up PO files from data stored into the database to ship with an
upcoming release.
I would say for the first try-out of the code this is the initial first
phase
next after we try your code and finish it up.
2- From a maintainer/QA operator's point of view :
2a- browse the list of changes made by the translators
2b- validate/invalidate the changes, when a string is validated, it is
merged with original version.
2c- assign files to translators
Also sounds a reasonable step after we finish the important one.
3- From a translator's point of view :
3a- browse the list of his/her personal assignments
3b- browse the list of unassigned PO files and take one of them.
3c- work on a given PO file including modifying msgstr strings and the
flags (fuzzy state) of each message and adding comments
3d- notify the maintainer when his work is done.
3e- the translator's info should be appended automatically to the header
data.
3f- the translation team should be able to discuss translations through
some kind of forum related to each PO file. (this is not urgent nor
mandatory)
3g- translators should have a search facility through some kind of
glossary, if available. (this is not urgent nor mandatory)
Any other ideas or comments ? :)
I guess the flags needed:
- My assigned
- Untranslated strings
- Marked Fuzzy
All other tasks sounds _good_to_have_ :)
Apart from that, can you Sherif enlight us about the lifecycle of a
PO
file in fedora from one release to the next ? What changes can occur ?
How does this fit in the previous scenarios ?
Policy is not clear at least for me :) The next thing we will do once we
have
something usable, we will put it up and go up in the chain by include Sarah
and other translation teams. This can be a tool that everyone uses it and
can be your contribution and great application for the community.
As far as the lifecycle of a PO file , I am really need to check how things
are done. Maybe we can start a thread to discuss this on fedora-trans-list.
I will start a new broader thread to include other translation team.
Thanks
Sherif