Done for zh_CN translation on transifex for master branch.

For 2.2.xmessages for zh_CN, and also for ja, the encoding is incorrect and
resource files are not maintained by community.


On Wed, Apr 24, 2013 at 10:06 PM, Milamber <milam...@apache.org> wrote:

>
>
> Le 24/04/2013 10:44, Milamber a ecrit :
>
>
>>
>> Le 23/04/2013 13:50, Gavin Lee a ecrit :
>>
>>> Following Milamber's guide , below process I used for
>>> 4.1.xmessage.properties on zh_CN:
>>> 1. git pull for the latest messages_zh_CN.properties
>>> 2. native2ascii -reverse messages_zh_CN.properties
>>> /tmp/zh_CN.properties.native -encoding utf8
>>>
>> -encoding utf8 <=== not necessary (on my machine)
>
>
>
>  3. copy to the CloudStack_UI transifex project:
>>> cp/tmp/zh_CN.properties.native /
>>> txprj/acsui/translations/**CloudStack_UI.**41xmessageproperties
>>> 4. tx push -l zh_CN -r CloudStack_UI.**41xmessageproperties -t
>>> 5. Do translation on transifex, there are some untranslated items when
>>> syncing with en.properties
>>> 6. tx pull -a
>>>
>>>
>>> Then convert to ascii with unicode, the i18nedit tools throws exception,
>>> I
>>> tried native2ascii command as below and UI display correctly:
>>> native2ascii -encoding UTF-8 zh_CN.properties messages_zh_CN.properties
>>>
>>> Are the whole processes above correct or not?
>>>
>>
>> Yes the process is correct, but currently on master branch the
>> messages_zh_CN.properties is not converting into a ASCII with unicode
>> unlike the 4.1 branch.
>> I will fix this for all messages_xx.properties on master branch today
>> (tonight) (FRench is already convert)
>>
>
> I just have made the fix for chinese (zh_CN) resource file on master
> branch. Now it's a ascii with unicode file and the process can execute
> manually with transifex.
> I made too a upload on transifex (with converting into native charset) for
> fix all sentences which have been corrupts with a previous upload (perhaps
> your upload I think)
>
>
> Currently, missing 33 translations for master (4.2) resource file zn_CN on
> transifex.
>
> Milamber
>
>
>
>> === (on master branch) ===
>>
>> cloudstack-dev/client/WEB-INF/**classes/resources$ file *
>> messages_fr_FR.properties: ASCII text, with very long lines
>> messages_ja.properties:    UTF-8 Unicode text, with very long lines
>> messages_ko_KR.properties: UTF-8 Unicode text, with very long lines
>> messages.properties:       ASCII text, with very long lines
>> messages_pt_BR.properties: ISO-8859 text, with very long lines
>> messages_ru_RU.properties: UTF-8 Unicode text, with very long lines, with
>> CRLF line terminators
>> messages_zh_CN.properties: UTF-8 Unicode text, with very long lines, with
>> CRLF, LF line terminators
>>
>> === (on 4.1 branch) ===
>> cloudstack-dev/client/WEB-INF/**classes/resources$ file *
>> messages_ca.properties:    ASCII text, with very long lines
>> messages_de_DE.properties: ASCII text
>> messages_es.properties:    ASCII text, with very long lines
>> messages_fr_FR.properties: ASCII text, with very long lines
>> messages_it_IT.properties: ASCII text, with very long lines
>> messages_ja.properties:    ASCII text, with very long lines
>> messages_ko_KR.properties: ASCII text, with very long lines
>> messages_nb_NO.properties: ASCII text
>> messages.properties:       ASCII text, with very long lines
>> messages_pt_BR.properties: ASCII text, with very long lines
>> messages_ru_RU.properties: ASCII text, with very long lines
>> messages_zh_CN.properties: ASCII text, with very long lines
>>
>> Milamber
>>
>>
>>
>>>
>>>
>>>
>>> On Tue, Apr 23, 2013 at 12:01 AM, Sebastien Goasguen<run...@gmail.com>**
>>> wrote:
>>>
>>>  Milamber, I made you a manager of the transifex project so you can help
>>>> fixing those issues.
>>>>
>>>> -sebastien
>>>>
>>>> On Apr 22, 2013, at 11:10 AM, Milamber<milam...@apache.org>  wrote:
>>>>
>>>>
>>>>> Le 17/04/2013 07:26, Sebastien Goasguen a ecrit :
>>>>>
>>>>>> On Apr 16, 2013, at 11:10 AM, Milamber<milam...@apache.org>   wrote:
>>>>>>
>>>>>>  Le 16/04/2013 13:41, Gavin Lee a ecrit :
>>>>>>>
>>>>>>>> Yes, Traditional Chinese moving very quickly.
>>>>>>>> Hopefully, the other languages can have more contributors.
>>>>>>>>
>>>>>>>> For the UI part, I saw the characters are not recognizable (browser
>>>>>>>> encoding setting: auto detect&    Unicode UTF-8):
>>>>>>>> ja: http://snag.gy/AVsbU.jpg
>>>>>>>> zh_CN: http://snag.gy/MxbBS.jpg
>>>>>>>>
>>>>>>> This screenshots shows some characters with a incorrect encoding (try
>>>>>>>
>>>>>> to display a char as a ISO-8859-1 (or japanese charset) but the
>>>> encoding is
>>>> a UTF-8, I think)
>>>>
>>>>> With Sebgoa, we have correct all UI ressource file to have only one
>>>>>>>
>>>>>> encoding charset in this files (ASCII with unicode). The transifex
>>>> data
>>>> isn't up-to-date.
>>>>
>>>>> Sebgoa, I think we must upload the last version of this (all)
>>>>>>>
>>>>>> resources files (except FR already done) from branch 4.1 to transifex.
>>>>
>>>>> The last version of resources files is ASCII with unicode for *all
>>>>>>>
>>>>>> chars* in each file, and now transifex keep the unicode char (check
>>>> with FR
>>>> download for use)
>>>>
>>>>> Mistake: transifex don't support uploaded unicode chars.
>>>>>
>>>>>  The way the original workflow was:
>>>>>> -Upload new versions of the resources file in english
>>>>>> -Translators create a new language in transifex.
>>>>>> -Download new language resources file
>>>>>> -Fix encoding
>>>>>>
>>>>> For the fix encoding step, we can use this (unix and JDK) commands for
>>>>>
>>>> each language:
>>>>
>>>>> CODELANG=it_IT
>>>>>
>>>>>  
>>>>> FILE_TRANSIFEX=for_use_**CloudStack_UI_**41xmessageproperties_${**CODELANG}.properties
>>>>
>>>>
>>>>> FILE_RES=messages_${CODELANG}.**properties
>>>>>
>>>>> # Convert to ascii with unicode (native2ascii is a JDK tool)
>>>>> native2ascii ${FILE_TRANSIFEX} /tmp/${FILE_RES}.ascii-with-**unicode
>>>>>
>>>>> # sort key, add a double-backslash before the quote char ( ' ==>  \\' )
>>>>> grep -v "^#" /tmp/${FILE_RES}.ascii-with-**unicode | sort -f | uniq |
>>>>> sed
>>>>>
>>>> "s/'/\\\\\\\\\'/g">
>>>> /tmp/${FILE_RES}.ascii-with-**unicode_doublebackslashquote
>>>>
>>>>> # Define Apache Licence Header (one long line)
>>>>> AL2_STRING="# Licensed to the Apache Software Foundation (ASF) under
>>>>>
>>>> one\n# or more contributor license agreements.  See the NOTICE file\n#
>>>> distributed with this work for additional information\n# regarding
>>>> copyright ownership.  The ASF licenses this file\n# to you under the
>>>> Apache
>>>> License, Version 2.0 (the\n# \"License\"); you may not use this file
>>>> except
>>>> in compliance\n# with the License.  You may obtain a copy of the License
>>>> at\n#\n#   
>>>> http://www.apache.org/**licenses/LICENSE-2.0\n#\n#<http://www.apache.org/licenses/LICENSE-2.0%5Cn#%5Cn%23>Unless
>>>> required by applicable law or agreed to in writing,\n# software
>>>> distributed
>>>> under the License is distributed on an\n# \"AS IS\" BASIS, WITHOUT
>>>> WARRANTIES OR CONDITIONS OF ANY\n# KIND, either express or implied.  See
>>>> the License for the\n# specific language governing permissions and
>>>> limitations\n# under the License."
>>>>
>>>>> # Re-introduce the AL2 header
>>>>> echo -e "$AL2_STRING" | cat -
>>>>>
>>>> /tmp/${FILE_RES}.ascii-with-**unicode_doublebackslashquote>
>>>> ./FOR_REPO_${FILE_RES}
>>>>
>>>>>
>>>>>  So I never uploaded the language specific resource file to transifex.
>>>>>>
>>>>> Won't we have a problem that they won't stay in sync with the en-US
>>>> resource file, if it gets changed ?
>>>>
>>>>> On upload, Transifex seems only get the matching key with source
>>>>>
>>>> language.
>>>>
>>>>> In any case I uploaded the ja-JP resource file and the result on
>>>>>>
>>>>> transifex is less than optimal, check the unreviewed strings, there is
>>>> a
>>>> mix of encoding.
>>>>
>>>>> We needs to revert the native to ascii convert.
>>>>> We can use this steps for each language before uploading on transifex :
>>>>>
>>>>> CODELANG=ja
>>>>> FILE_RES=messages_${CODELANG}.**properties
>>>>>
>>>>> # Revert convert
>>>>> native2ascii -reverse ${FILE_RES} /tmp/${FILE_RES}.native1
>>>>>
>>>>> # Remove double backslashes before quote
>>>>> sed "s/\\\\\\\'/'/g" /tmp/${FILE_RES}.native1>  ${FILE_RES}.native
>>>>>
>>>>>
>>>>> I've tested this commandes for download/upload with French language,
>>>>> and
>>>>>
>>>> just for download with ko_KR, it_IT, ca, ja, pt_BR.
>>>>
>>>>>
>>>>> I can make one shell script to automate this, and put in a tools dir in
>>>>>
>>>> CS git repo.
>>>>
>>>>> Milamber
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>>  Milamber
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>  The other languages are ok.
>>>>>>>>
>>>>>>>>
>>>>>>>> On Tue, Apr 16, 2013 at 8:25 PM, Sebastien Goasguen<
>>>>>>>> run...@gmail.com
>>>>>>>>
>>>>>>> wrote:
>>>>>
>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> There has been some terrific progress on the translations.
>>>>>>>>>
>>>>>>>>> The easiest way to share it is to check the Transifex dashboard,
>>>>>>>>>
>>>>>>>> below are
>>>>
>>>>> some screenshots:
>>>>>>>>>
>>>>>>>>> The runbook:
>>>>>>>>> http://awesomescreenshot.com/**0bd163zldd<http://awesomescreenshot.com/0bd163zldd>
>>>>>>>>>
>>>>>>>>> The UI:
>>>>>>>>> http://awesomescreenshot.com/**089163zva2<http://awesomescreenshot.com/089163zva2>
>>>>>>>>>
>>>>>>>>> The entire docs set:
>>>>>>>>> http://awesomescreenshot.com/**01c163zq63<http://awesomescreenshot.com/01c163zq63>
>>>>>>>>>
>>>>>>>>> Since 4.1 is not out yet, there is time to finish those last 3% on
>>>>>>>>>
>>>>>>>> the UI
>>>>
>>>>> translations.
>>>>>>>>>
>>>>>>>>> Keep getting the word out, forward to friends and let's all make
>>>>>>>>> CloudStack a truly worldwide project.
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>>
>>>>>>>>> -Sebastien
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>
>>>
>>
>>
>


-- 
Gavin

Reply via email to