summaryrefslogtreecommitdiffstats
path: root/2021/talks/omegat.md
blob: 3569a6115af68eb3d95ca2034e1086ae7e88b951 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
[[!meta title="Emacs manuals translation and OmegaT"]]
[[!meta copyright="Copyright © 2021 Jean-Christophe Helary"]]
[[!inline pages="internal(2021/info/omegat-nav)" raw="yes"]]

<!-- You can manually edit this file to update the abstract, add links, etc. --->


# Emacs manuals translation and OmegaT
Jean-Christophe Helary

[[!inline pages="internal(2021/info/omegat-schedule)" raw="yes"]]

Even if it is generally agreed that software localization is a good thing, Emacs is lacking in that respect for a number of technical reasons. Nonetheless, the free software using public could greatly benefit from Emacs manuals translations, even if the interface were to remain in English.

OmegaT is a multiplatform GPL3+ "computer aided translation" (CAT) tool running on OpenJDK 8. CATs are roughly equivalent for translators to what IDEs are for code writers. Casual translators can benefit from their features but professionals or committed amateurs are the most likely to make the most use of such tools.

When OmegaT, free software based forges and Emacs meet, we have a free multi-user translation environment that can easily sustain the (close to) 2 million words load that comprise the manuals distributed with Emacs, along with powerful features like arbitrary string protection for easy typing and QA (quality assurance), automatic legacy translation handling, glossary management, history based or predictive autocompletion, etc.

The current trial project for French is hosted on 2 different forges:

1. sr.ht hosts the source files
    <https://sr.ht/~brandelune/documentation_emacs/>
2. chapril hosts the OmegaT team project architecture
    <https://forge.chapril.org/brandelune/documentation_emacs>

The sources are regularly updated with a po4a based shell script.

# Outline

- Duration: 10 minutes
- Software used during the presentation
  - [po4a](https://po4a.org) a tool to convert documentation formats to and from the commonly used `gettext` **PO** format.
    po4a supports the `texinfo` format along with many others.
  - [OmegaT](https://omegat.org) a "computer aided translation" tool used by translators to efficiently combine translation resources (legacy translations, glossaries, etc.) so as to produce more consistent translations.

During this short presentation, I will address:

- The specificities of the Emacs manuals and the difficulties they present to the translator
- The reason why a professional tool is better than a collaborative web-based system
- How to convert the texi and org files to a format that translators can handle
- How to adapt OmegaT to the Emacs manual specificities
- How to use OmegaT features such as arbitrary string protection, legacy translation handling, glossaries, autocompletion, QA, etc.
- How to use OmegaT with a team of 2 (or more) translators working at the same time


I will *not* show:

- How to create an OmegaT project
- How to set up an OmegaT team project
- How to use OmegaT from the command line to work in localization pipelines
- How to use machine translation and MT "post-edit"
- How to convert back the translated files to texi format
- How to install translated texi files for use in Emacs

People who are interested in knowing more about OmegaT are invited to check the [online user manual](https://omegat.sourceforge.io/manual-latest/en/).

# Personal information
- Name pronunciation: [ʒɑ̃kRstɔf elaRi](https://doublet.jp/wp-content/uploads/2021/11/jch.ogg)
- Pronouns: he
- Homepage: [https://mac4translators.blogspot.com](https://mac4translators.blogspot.com)
- Preferred contact info: [jean.christophe.helary@traduction-libre.org](jean.christophe.helary@traduction-libre.org)
- Links for sponsoring/supporting (multilingual translations): [https://doublet.jp](https://doublet.jp)

[[!inline pages="internal(2021/captions/omegat)" raw="yes"]]

[[!inline pages="internal(2021/info/omegat-nav)" raw="yes"]]