Return-Path: X-Original-To: apmail-couchdb-l10n-archive@minotaur.apache.org Delivered-To: apmail-couchdb-l10n-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 1BF5F10E75 for ; Sat, 9 Nov 2013 11:12:42 +0000 (UTC) Received: (qmail 93502 invoked by uid 500); 9 Nov 2013 11:11:13 -0000 Delivered-To: apmail-couchdb-l10n-archive@couchdb.apache.org Received: (qmail 93485 invoked by uid 500); 9 Nov 2013 11:11:09 -0000 Mailing-List: contact l10n-help@couchdb.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: l10n@couchdb.apache.org Delivered-To: mailing list l10n@couchdb.apache.org Delivered-To: moderator for l10n@couchdb.apache.org Received: (qmail 79846 invoked by uid 99); 9 Nov 2013 10:55:13 -0000 X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=kPPPCOmroYvRwePwMKqddH+hUbD39CON2O4UJHY3sSc=; b=dmafilzcWAsI5tCDa5zrvvZH9vTyuSxH+FhFFtPTZxYy8pHUlSljQWGX+W/JVdFXAy 4We7gH6gKJk0NMpINCFSLNtMOvQrFonr4HfsMvz70a4mjHDRpOA0B8C/jXFaq7600YU1 0yXgwJw+EYg+CtGKC13Jau5EG9yGUT7sZnN7n5jTiKAMh8jVH2kppJ+WH64vleqAfXld BQqOCI/0p6dPEWZs90VZgReHFaKo9tWzIFSaeN0vArRsBwpPy289f21J3lDArEBTXRFz t+lw4nse88Ut6bBwdkB19y3HA3mCMy3mrd/XyFkjRGGYPJZsxC/egBcqOi/jT1mDlPHB XB8g== MIME-Version: 1.0 X-Received: by 10.112.150.103 with SMTP id uh7mr4539419lbb.34.1383994510480; Sat, 09 Nov 2013 02:55:10 -0800 (PST) In-Reply-To: References: Date: Sat, 9 Nov 2013 11:55:10 +0100 Message-ID: Subject: Re: INFRA: Pootle translation service for CouchDB questions From: janI To: andywenk@apache.org, "infrastructure@apache.org" Cc: jan iversen , "dev@couchdb.apache.org" , l10n@couchdb.apache.org Content-Type: multipart/alternative; boundary=047d7b33da602b1e6d04eabc5502 --047d7b33da602b1e6d04eabc5502 Content-Type: text/plain; charset=ISO-8859-1 Hi Andy. thanks for your mail, I have added infra@ since others might also want to read the answers. On 8 November 2013 22:53, Andy Wenk wrote: > Hi Jan, > > I have read https://issues.apache.org/jira/browse/INFRA-6888 and would > like to get a better understanding, of how we can integrate the pootle > service into the CouchDB CI. In your first comment, you mentioned that you > have written some tools. What are the for? Can they help us? > The tools I have made is a set of C++ classes with a main, that extract the original (typical en-US) messages from from source files and generates template files (.pot). The tool is made is made so that it is very simple to add new source type (e.g. .java). If you use Sphinx that is a good alternative. > > We will be able to create .po files with Sphinx. I am now wondering, how > these files can be uploaded to > https://translate.apache.org/projects/couchdb/ . Is there an API we can > use? As far as I understood, it is also possible to update existing files - > what is for sure essential. > There are no api, you do it via the UI. > It would be great if there are some scenario descriptions or experience > reports. Maybe the folks from the Apache OpenOffice project have some? Or > can you just give some info? That would be awesome ;-). > I am one of those folks (actually, probably one of two that knows most about this process) :-) Let me first shortly present the normal work pattern, and then show how you can get started: The normal workflow are (please see some of the things as being able to happen in parallel) 1) Write source that contain new/changes en-US messages 2) extract messages from source files to 1 or more template files (many projects prefer to group the template files after function, e.g. help/ui/errors, but you can also have a 1-1 with source files). 3) Upload changed .pot files (template files, same format as .po just another name) to pootle using the UI. 4) Run "update languages against templates" in the UI. This will do the following: a) Add new messages to all language files (for each .pot file, you have 1 .po file pr language), leaving translation empty b) Mark changes messages as "fuzzy" so the translations can be corrected. 5) Let translators do their magic online (remark translators can be but need not be committers) 6) Run "sync database to po files" 7) Download po files (as zip) using th UI 8) Merge po files into the source, as pr your code requirement (in AOO, the source files is expanded with all languages, so users can switch online). 9) Compile and test. In order to bootstrap your project, you need to: 1) define the languages you want to have (UI) 2) Upload the first set of templates (its a bit tricky, I can do that for you if you mail me a zip file) 3) Upload any translatations you may already have 4) use the above workflow. I have some spare cycles and can help you in 2 different ways if you want it: a) help setup/load the initial database or b) join the project and help design a workflow fitting for your needs and of course be there to get it working. Please if something is unclear or you need more information, please ask. rgds jan I. > > Thanks a lot for your help! > > Cheers > > Andy > > -- > Andy Wenk > Hamburg - Germany > RockIt! > > http://www.couchdb-buch.de > > GPG fingerprint: C044 8322 9E12 1483 4FEC 9452 B65D 6BE3 9ED3 9588 > --047d7b33da602b1e6d04eabc5502--