From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jean-Christophe Helary Newsgroups: gmane.emacs.devel Subject: Re: Where to contribute manual translations ? (Re: Emacs-devel Digest, Vol 238, Issue 29) Date: Sat, 30 Dec 2023 01:33:18 +0000 Message-ID: References: <838r5d7bcc.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="32281"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Eli Zaretskii , "emacs-devel@gnu.org" , "stefankangas@gmail.com" To: =?utf-8?Q?Vincent_Bela=C3=AFche?= Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Sat Dec 30 07:20:47 2023 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1rJSiE-0008Dl-OQ for ged-emacs-devel@m.gmane-mx.org; Sat, 30 Dec 2023 07:20:47 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rJShd-000315-8d; Sat, 30 Dec 2023 01:20:09 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rJOET-0003Rp-V2 for emacs-devel@gnu.org; Fri, 29 Dec 2023 20:33:45 -0500 Original-Received: from mail-4323.proton.ch ([185.70.43.23]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rJOER-0003BH-D9 for emacs-devel@gnu.org; Fri, 29 Dec 2023 20:33:45 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=traductaire-libre.org; s=protonmail; t=1703900017; x=1704159217; bh=uZRbsIHaiepv4NrO54Ps3qYiHGHiHCaKhYRFuYgqqDQ=; h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References: Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID: Message-ID:BIMI-Selector; b=cEe677KAaCDX50PhUToOqL4sbwi7LvUCibaRxSCH2pOJKgeSb7sdMHFF0XTb1Pza0 +zJICiBgcyw43kR8KKJhgbRz3BbjEWvpodr3o2YHVBqpDyT+cZvrsyenytkNiZJon6 +BjxEP+pkyLdetK/PNyouGoXg1bXUOmcBbiBMDxqoo1FP0vphFz+ANholJOLpuYJxC vrIQRXyE+5YeOtEoY9AUGL7Zk1Dd7B2amZiOlnwrmzY6odZ1qmyrrd7PEXAp4VyZSC BLcSCaaNTr7iF+UTekesTlsLIw7CxvJOKLDViWJDNf/dp+0ahskEFBNw2TUJ9gAnG1 y+HWXLt95/8Wg== In-Reply-To: Feedback-ID: 92162971:user:proton Received-SPF: pass client-ip=185.70.43.23; envelope-from=jean.christophe.helary@traductaire-libre.org; helo=mail-4323.proton.ch X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_MSPIKE_H5=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Sat, 30 Dec 2023 01:20:06 -0500 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.devel:314356 Archived-At: Hello Vincent, > On Dec 30, 2023, at 7:58, Vincent Bela=C3=AFche = wrote: >=20 > Dear Jean-Christophe, >=20 > I had a look at your git repo, and I also watched your presentation about= OmegaT. I realize that all the manual translations that you have are po fi= les that are output by OmegaT as a sequence of individual segment translati= ons. I understand that some tool will then reassemble those segment to rebu= ild the Texinfo file, that can then be compiled to the usuer manuel. I use po4a. po4a is a tool developed to help translators handle documents t= hat are often updated. A lot of free documentation translations are made wi= th po4a. po4a=E2=80=99s workflow is similar to gettext in terms of converting the so= urce files to po, updating the translations, converting back the po files t= o the source format. In our case we use the texinfo =E2=86=92 po =E2=86=92 texinfo conversion al= lowed by po4a. (There is a special case for the org manual.) As you know, Emacs evolves a lot, and diffing the sources to see what has c= hanged is not practical when it comes to translating, because it is not tri= vial to locate the position of a source diff in the translated document. po4a helps with that because the po format is a list of bilingual chunks of= the original document. When sentences have been added to the source or hav= e been slightly modified, po4a finds them and creates a monolingual chunk t= hat the translator will have to translate. And then, po4a converts back the chunks into the original source file, read= y for compilation. > My translation of SES manual to French is a =C2=AB hand-made =C2=BB trans= lation (as opposed to computer-aided), so it is a plain Texinfo file which = I directly edited with an editor (it was Emacs, but any editor, and even MS= Word used as a text editor could have been used). Anything that happens on a computer is =E2=80=9Ccomputer aided=E2=80=9D :) = You just decide how much aid you force the computer to give you :) For relatively stable documents such as books, a text editor is enough, and= you can use separate documents to handle terminology, etc. OmegaT is like a small IDE for translators. It automatically checks the ter= minology as you enter a new chunk, it checks for previously translated simi= lar chunks, it checks technical errors (texi tags for ex., defined as regex= ), etc. > Therefore I am not sure that your repo is the best place for me. For the = time being I will therefore have it on the Emacs repo, when the conversatio= n here converges on the right place and name. =E2=80=9CMy=E2=80=9D repo is just a workshop. The end product is intended t= o be part of the Emacs distribution in a way or another. > I don't know how you can get my translation and use it in your OmegaT fra= mework as the splitting into segments + segment naming is not done. I know :) It=E2=80=99s a process called =E2=80=9Caligning=E2=80=9D translations, whic= h means associating chunks of the source document with chunks of the target= document and thus creating the bilingual (translated) chunks that I mentio= ned above. po4a creates the chunks from your texinfo file, and OmegaT takes the inform= ation in that file and associates it to the original English texinfo file.= =20 And you end up with a list of chunks that can be used in OmegaT. > Also, I am not sure that I want to install and learn how to use OmegaT, a= s I am not a professional translator, and my aim was not so much as to prod= uce a translation (although I have no doubt that it will be useful), but th= e side products of translating, that is improve the manual quality and my k= nowledge and understanding. It=E2=80=99s a very good idea. Translators are indeed proofreaders and can = detect a lot of issues in the original documents. OmegaT is not a tool limited to professional translators. It is used in man= y free software communities in many language environments. Its basic use is= pretty straightforward and really helps maintain consistency of translatio= n over very large volumes of documents. What would seem to matter (if anything does) is duplication of work. Emacs = manuals have seen attempts at French translations (that I=E2=80=99m aware o= f) for at least 20 years and none has reached completion (even if some seem= ed to have come pretty close). I=E2=80=99ve tried to =E2=80=9Calign=E2=80=9D all the old translations to p= roduce en/fr chunks that could be easily used. It was not trivial because f= inding which version of Emacs they were based on was not easy and because I= could not find the original texinfo files. The current state of the repo is that there are already a number of chapter= s that have been completed, or that only miss a few paragraphs. > That is the same reason for which I translated to French the Unofficial L= aTeX manual, that allowed plenty of minor improvements on the manual (both = English & French versions). Thank you :) Unlike LateX2e, the Emacs manuals evolve a lot. Over the course of 3 years,= I=E2=80=99ve counted about 180,000 additional words, excluding modificatio= ns of the original sources including typos or factual errors. Any translation process that handles such frequent changes must have a way = to easily identify the location in the translation where the modification m= ust take place. And that=E2=80=99s exactly where =E2=80=9Ccomputer aided translation= =E2=80=9D tools come into play. The way they use bilingual chunks as the ob= ject the translator handles makes it trivial to identify where new translat= ions are needed. Jean-Christophe --=20 Jean-Christophe Helary @jchelary@emacs.ch https://traductaire-libre.org https://mac4translators.blogspot.com https://sr.ht/~brandelune/omegat-as-a-book/