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,gmane.emacs.orgmode Subject: Re: Translation of the Org mode manual (was: Translation of manuals (was: SES manual French translation)) Date: Thu, 04 Jan 2024 12:19:21 +0000 Message-ID: References: <5D3D13BC-E621-4C40-88D7-3E5805F631AB@traductaire-libre.org> <83sf3fzvk4.fsf@gnu.org> <835y0azhvo.fsf@gnu.org> <83wmsqy14p.fsf@gnu.org> <3E7CF23D-CE62-4581-80D6-E6266CEE4DF5@traductaire-libre.org> <877ckp72ns.fsf@localhost> 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="29452"; mail-complaints-to="usenet@ciao.gmane.io" Cc: Eli Zaretskii , Stefan Kangas , =?utf-8?Q?Vincent_Bela=C3=AFche?= , emacs-devel@gnu.org, rms@gnu.org, emacs-orgmode@gnu.org To: Ihor Radchenko Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Thu Jan 04 13:58:30 2024 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 1rLNIr-0007PM-QH for ged-emacs-devel@m.gmane-mx.org; Thu, 04 Jan 2024 13:58:30 +0100 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rLNIG-0006wD-12; Thu, 04 Jan 2024 07:57:52 -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 1rLMha-0004DH-Lz for emacs-devel@gnu.org; Thu, 04 Jan 2024 07:19:58 -0500 Original-Received: from mail-4317.proton.ch ([185.70.43.17]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rLMhE-000385-9d; Thu, 04 Jan 2024 07:19:58 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=traductaire-libre.org; s=protonmail; t=1704370772; x=1704629972; bh=fZOdtelY1YdLu6BNKoaAL4eYC/ug1Tc9oh4g1AmKrJk=; 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=V3GFK7Kk85cjV61t7GQE5AyNuAQKHF47sXYo8F6Vs2QMXFcOrbzH/d/zEUjhYKqVS 9SUKY2Y6PDvhd6T5subZEjDroX82n7nyZ4gBfwMdRVVzY+wbi/QRU7W/Q++pvbZkHR UwHgkboNuDAVWfT3YeicST2FGVczdi8LNivoTeCin4PbqwUrlk+QQQcW1ZK2AE28RU ZkqMeXwHXHXkzCPJ3zQHFIqcIQelZn9ATDhs8qPcEweb2l1lycl4eYVFP8+QOQVR8I rhf6cV7WUSEFV91HZrlfEID+Fa3yp5Fj/C7mYZPrIzyBaa5EgNLKqbXqT06uFYraxc XHHomr5yyhWCA== In-Reply-To: <877ckp72ns.fsf@localhost> Feedback-ID: 92162971:user:proton Received-SPF: pass client-ip=185.70.43.17; envelope-from=jean.christophe.helary@traductaire-libre.org; helo=mail-4317.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, SPF_HELO_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_TEMPERROR=0.01, WEIRD_PORT=0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Thu, 04 Jan 2024 07:57:50 -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:314539 gmane.emacs.orgmode:158859 Archived-At: Ihor, Thank you for chiming in. > On Jan 4, 2024, at 20:34, Ihor Radchenko wrote: >=20 > Jean-Christophe Helary > writes: >> I=E2=80=99m not sure this is the place to discuss translation theory... >=20 > Let me steer this discussion to non-texi manuals - Org mode manual. Sure. > We also had a few requests about translations, although Org mode needs > are more general compared to a very focused task of translating texi > manuals: >=20 > 1. Org mode manual itself, just like the other Emacs manuals may need to > be translated. However, Org mode manual source is written in Org mode > format, not texi. It is just transformed to texi as one of the export > options. That=E2=80=99s correct and that texi file seems to choke po4a, which is the= =20 reason my script removes it and uses the .org original instead. I use the txt filter in po4a to convert it to po: https://git.sr.ht/~brandelune/emacs_documentation_repository/tree/main/item= /emacs_docs2po.sh#L71 The result is here: https://git.sr.ht/~brandelune/emacs_documentation_repository/tree/main/item= /doc/misc/org.org.fr.po And looks like this: --- #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emac= s - #: Sources/doc/misc/org.org:24 msgid "" "Org Mode is an authoring tool and a TODO lists manager for GNU Emacs. It = " "relies on a lightweight plain-text markup language used in files with the = " "=3D.org=3D extension." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emac= s - #: Sources/doc/misc/org.org:31 msgid "" "As an authoring tool, Org helps you write structured documents and provide= s " "exporting facilities. Org files can also be used for literate programming = " "and reproducible research. As a TODO lists manager, Org helps you organiz= e " "your tasks in a flexible way, from daily needs to detailed project-plannin= g, " "allowing logging, multiple views on your tasks, exporting your agendas, et= c." msgstr "" #. type: Plain text #: /Users/suzume/Documents/Repositories/Projet OmegaT de Documentation Emac= s - #: Sources/doc/misc/org.org:38 msgid "" "Org mode is implemented on top of Outline mode, which makes it possible to= " "keep the content of large files well structured. Visibility cycling and " "structure editing help to work with the tree. Tables are easily created " "with a built-in table editor. Plain text URL-like links connect to " "websites, emails, Usenet messages, BBDB entries, and any files related to = " "the projects." msgstr "" --- In OmegaT it looks like this (all the po decorations are hidden -=20 protected - in the editor, only the translatable parts are displayed): --- =C2=B6 Org Mode is an authoring tool and a TODO lists manager for GNU Emacs. It relies on a lightweight plain-text markup language used in files=20 with the =3D.org=3D extension. =C2=B6 As an authoring tool, Org helps you write structured documents and=20 provides exporting facilities. Org files can also be used for literate programming and reproducible=20 research. As a TODO lists manager, Org helps you organize your tasks in a=20 flexible way, from daily needs to detailed project-planning, allowing=20 logging, multiple views on your tasks, exporting your agendas, etc. =C2=B6 Org mode is implemented on top of Outline mode, which makes it possible=20 to keep the content of large files well structured. Le cycle de visualisation et la modification de la structure aident =C3= =A0=20 travailler avec l'arborescence. Les tableaux sont facilement cr=C3=A9=C3=A9s avec un =C3=A9diteur de tablea= u int=C3=A9gr=C3=A9. Les liens de type URL en texte brut se connectent aux sites Web, aux=20 e-mails, aux messages Usenet, aux entr=C3=A9es BBDB et =C3=A0 tous les fich= iers li=C3=A9s=20 aux projets. =C2=B6 --- You=E2=80=99ll notice that a few sentences have been translated in the last= =20 paragraph. In other tools that support the PO format, similarly the PO decorations=20 would be hidden from view. > 2. Org mode website has several translations (French, Japanese, and > Mandarin). The website sources are written in Org mode, but the work > of translation was done be enthusiasts, and we have no good system to > maintain the main English version of the website in sync with the > translations. I think you should take a look at how Debian does that, even if their=20 site sources are not in org. The process is the same. Debian has a huge=20 amount of experience in documentation/web localization. > 3. A number of Org mode users are using Org sources to publish > multi-lingual books. Such publishing is a bit more challenging > compared to translation as it requires special book layout. Indeed. > Therefore, there is a demand to have a toolset for translating Org mode > documents. >=20 > So far, I have been thinking about some way to support translations with > ideas rather similar to raised in this topic: >=20 > 1. Mark paragraphs/headings/other structural elements with an ID >=20 > 2. Split translation into chunks linked to the original source IDs and > their text hash >=20 > 3. When exporting from Org source to target format (texi, html, pdf, > etc), allow choosing the target language(s) and ensure consistency > between translations and their possibly changed sources. >=20 > However, I did not know about po4a. It is possible that many of the > necessary design decisions are already in place in po4a. po4a has been around for a while and is used in a lot of free=20 documentation projects. A lot of tools that free software translators=20 use fully support the PO format and the translation teams are used to=20 the process of team translating/proofreading/validating/committing. I am sure Martin Quinson would appreciate development of a dedicated=20 org mode filter. Right now, as I wrote above, the plain text filter is=20 sufficient. Also, po4a is not only a filter, it is a tool equivalent to gettext but=20 focused on documentation formats. You should check its documentation to=20 see how your workflow could benefit from its design. >> ... >> I think po-mode already does that and all the "out of emacs" tools do >> too. >=20 > May you share the most important features of po-mode that you find > essential to your translation work? I don=E2=80=99t use po-mode. po-mode is not sufficient (now) for most of th= e=20 professional translation that I handle. >>> @node Display Margins >>> @subsection Displaying in the Margins >>> @cindex display margins >>> @cindex margins, display >>=20 >> As long as the above strings are to be translated, they need an ID too. >>=20 >>> @c para 1234 >>>=20 >>> @c para 1235 >>>=20 >>> @c para 1236 >>=20 >> Is the numbering automatic? >>=20 >> What if you add paragraphs in the middle, like Vincent did? Will the >> author have to check the IDs and add a number that=E2=80=99s not used al= ready? >>=20 >> There are plenty of issues with static IDing parts of a document. >=20 > May you please elaborate on the issues with static IDs? For one, the fact that the numbering ends up not being sequential after=20 a while. If you have a tool that does all the grunt work, then any=20 kind of ID system should work. In PO, the message is the ID. --=20 Jean-Christophe Helary @jchelary@emacs.ch https://traductaire-libre.org https://mac4translators.blogspot.com https://sr.ht/~brandelune/omegat-as-a-book/