diff options
author | Sacha Chua <sacha@sachachua.com> | 2021-11-27 09:59:57 -0500 |
---|---|---|
committer | Sacha Chua <sacha@sachachua.com> | 2021-11-27 09:59:57 -0500 |
commit | a6d7721b8024c1b2c1fceaf8a6cc91770857bf74 (patch) | |
tree | 78c85e64be1a88f7f00583810fd208186acd3b5a /2021/captions | |
parent | 2cb0abf809cba554607ef6781d1e34a50bdefbb0 (diff) | |
download | emacsconf-wiki-a6d7721b8024c1b2c1fceaf8a6cc91770857bf74.tar.xz emacsconf-wiki-a6d7721b8024c1b2c1fceaf8a6cc91770857bf74.zip |
Update
Diffstat (limited to '2021/captions')
3 files changed, 2676 insertions, 0 deletions
diff --git a/2021/captions/emacsconf-2021-omegat--emacs-manuals-translation-and-omegat--jean-christophe-helary--main.vtt b/2021/captions/emacsconf-2021-omegat--emacs-manuals-translation-and-omegat--jean-christophe-helary--main.vtt new file mode 100644 index 00000000..34cfbcad --- /dev/null +++ b/2021/captions/emacsconf-2021-omegat--emacs-manuals-translation-and-omegat--jean-christophe-helary--main.vtt @@ -0,0 +1,892 @@ +WEBVTT
+
+00:01.280 --> 00:00:02.560
+Hello everybody.
+
+00:02.560 --> 00:00:04.400
+My name is Jean-Christophe Helary,
+
+00:00:04.400 --> 00:00:05.680
+and today I’m going to talk about
+
+00:00:05.680 --> 00:00:08.320
+Emacs manuals translation and OmegaT.
+
+00:00:08.320 --> 00:00:10.960
+Thank you for joining the session.
+
+00:10.960 --> 00:00:12.880
+Translation in the free software world
+
+00:12.880 --> 00:00:15.040
+is really a big thing. You already know
+
+00:15.040 --> 00:00:17.119
+that most of the Linux distributions,
+
+00:17.119 --> 00:00:18.720
+most of the software packages,
+
+00:00:18.720 --> 00:00:19.920
+most of the websites
+
+00:00:19.920 --> 00:00:22.320
+are translated by dozens of communities
+
+00:00:22.320 --> 00:00:23.439
+using different processes
+
+00:23.439 --> 00:00:24.880
+and file formats.
+
+00:24.880 --> 00:00:27.359
+Translation and localization
+
+00:27.359 --> 00:00:29.599
+are things we know very well.
+
+00:29.599 --> 00:00:30.400
+It’s a tad different
+
+00:00:30.400 --> 00:00:32.160
+for the Emacs community.
+
+00:32.160 --> 00:00:34.079
+We do not have a localization process
+
+00:34.079 --> 00:00:35.200
+because it’s quite complex
+
+00:00:35.200 --> 00:00:35.920
+and because we don’t
+
+00:00:35.920 --> 00:00:37.600
+have the resources yet.
+
+00:37.600 --> 00:00:39.920
+Still, we could translate the manuals,
+
+00:00:39.920 --> 00:00:41.200
+and translating the manuals
+
+00:00:41.200 --> 00:00:42.399
+would probably bring a lot of good
+
+00:00:42.399 --> 00:00:45.600
+to the Emacs community at large.
+
+00:45.600 --> 00:00:47.920
+So what’s the state of the manuals?
+
+00:47.920 --> 00:00:51.199
+As of today, we have 182 files
+
+00:51.199 --> 00:00:54.160
+coming in .texi and .org format.
+
+00:54.160 --> 00:00:56.559
+We’ve got more than 2 million words.
+
+00:56.559 --> 00:00:57.360
+We’ve got more than
+
+00:00:57.360 --> 00:00:59.039
+50 million characters.
+
+00:00:59.039 --> 00:01:00.559
+So that’s quite a lot of work,
+
+01:00.559 --> 00:01:04.559
+and obviously, it’s not a one person job.
+
+01:04.559 --> 00:01:06.159
+When we open .texi files,
+
+00:01:06.159 --> 00:01:07.760
+what do we have?
+
+01:07.760 --> 00:01:09.439
+Well, we actually have a lot of things
+
+01:09.439 --> 00:01:10.560
+that the translators
+
+00:01:10.560 --> 00:01:12.400
+shouldn’t have to translate.
+
+01:12.400 --> 00:01:13.680
+Here we can see that only
+
+00:01:13.680 --> 00:01:15.040
+the very last segment,
+
+00:01:15.040 --> 00:01:16.400
+the very last sentence
+
+00:01:16.400 --> 00:01:18.080
+should be translated.
+
+01:18.080 --> 00:01:19.360
+All those meta things
+
+00:01:19.360 --> 00:01:20.240
+should not be under
+
+00:01:20.240 --> 00:01:24.479
+the translator’s eyes.
+
+01:24.479 --> 00:01:26.720
+How do we deal with this situation?
+
+01:26.720 --> 00:01:27.680
+For code files, we have
+
+00:01:27.680 --> 00:01:29.360
+the gettext utility that converts
+
+00:01:29.360 --> 00:01:30.640
+all the translatable strings
+
+00:01:30.640 --> 00:01:32.079
+into a translatable format,
+
+00:01:32.079 --> 00:01:33.840
+which is the .po format.
+
+01:33.840 --> 00:01:35.520
+And that .po format is ubiquitous,
+
+00:01:35.520 --> 00:01:36.400
+even in the non-free
+
+00:01:36.400 --> 00:01:38.720
+software translation industry.
+
+01:38.720 --> 00:01:39.520
+For documentation,
+
+00:01:39.520 --> 00:01:40.720
+we have something different.
+
+00:01:40.720 --> 00:01:42.000
+It’s called po4a,
+
+00:01:42.000 --> 00:01:45.119
+which is short for ‘po for all’.
+
+01:45.119 --> 00:01:46.399
+When we use po4a
+
+00:01:46.399 --> 00:01:49.200
+on those 182 .texi and .org files,
+
+00:01:49.200 --> 00:01:50.479
+what do we get?
+
+01:50.479 --> 00:01:52.640
+We get something that’s much better.
+
+01:52.640 --> 00:01:54.799
+Now we have three segments.
+
+01:54.799 --> 00:01:55.759
+It’s not perfect because,
+
+00:01:55.759 --> 00:01:56.399
+as you can see,
+
+00:01:56.399 --> 00:01:57.280
+the two first segments
+
+00:01:57.280 --> 00:01:58.880
+should not be translated.
+
+01:58.880 --> 00:01:59.520
+So there’s still
+
+00:01:59.520 --> 00:02:02.479
+room for improvement.
+
+02:02.479 --> 00:02:04.960
+Now, when we put that file set
+
+00:02:04.960 --> 00:02:07.119
+into OmegaT, we considerably reduce
+
+00:02:07.119 --> 00:02:08.800
+the words total.
+
+02:08.800 --> 00:02:11.360
+We now have 50% fewer words
+
+00:02:11.360 --> 00:02:14.239
+and 23% fewer characters to type,
+
+02:14.239 --> 00:02:15.680
+but that’s still a lot of work.
+
+00:02:15.680 --> 00:02:17.599
+So let’s talk about OmegaT now
+
+00:02:17.599 --> 00:02:22.239
+and see where it can help.
+
+02:22.239 --> 00:02:25.440
+OmegaT is a GPL3+ Java8+
+
+02:25.440 --> 00:02:27.599
+Computer Aided Translation tool.
+
+02:27.599 --> 00:02:29.440
+We call them CATs.
+
+02:29.440 --> 00:02:30.720
+CATs are to translators
+
+00:02:30.720 --> 00:02:33.280
+what IDEs are to programmers.
+
+02:33.280 --> 00:02:35.040
+They leverage the power of computers
+
+00:02:35.040 --> 00:02:36.480
+to automate our work,
+
+00:02:36.480 --> 00:02:38.400
+which is, reference searches,
+
+00:02:38.400 --> 00:02:40.800
+fuzzy matching, automatic insertions,
+
+00:02:40.800 --> 00:02:44.080
+and things like that.
+
+02:44.080 --> 00:02:46.319
+OmegaT is not really recent.
+
+02:46.319 --> 00:02:48.319
+It will turn 20 next year,
+
+02:48.319 --> 00:02:48.959
+and at this point,
+
+00:02:48.959 --> 00:02:51.440
+we have about 1.5 million downloads
+
+00:02:51.440 --> 00:02:53.200
+from the SourceForge site,
+
+00:02:53.200 --> 00:02:54.080
+which doesn’t mean much
+
+00:02:54.080 --> 00:02:55.040
+because that includes
+
+00:02:55.040 --> 00:02:56.480
+files used for localization
+
+00:02:56.480 --> 00:02:57.920
+and manuals, but still
+
+00:02:57.920 --> 00:02:59.599
+it’s a pretty big number.
+
+02:59.599 --> 00:03:00.720
+OmegaT is included in
+
+00:03:00.720 --> 00:03:02.400
+a lot of Linux distributions,
+
+00:03:02.400 --> 00:03:03.680
+but as you can see here,
+
+03:03.680 --> 00:03:05.920
+it’s mostly downloaded on Windows systems
+
+00:03:05.920 --> 00:03:06.800
+because translators
+
+00:03:06.800 --> 00:03:09.680
+mostly work on Windows.
+
+03:09.680 --> 00:03:11.120
+OmegaT comes with a cool logo
+
+00:03:11.120 --> 00:03:12.080
+and a cool site too,
+
+00:03:12.080 --> 00:03:13.920
+and I really invite you to visit it.
+
+00:03:13.920 --> 00:03:16.159
+It’s omegat.org, and you’ll see
+
+03:16.159 --> 00:03:17.280
+all the information you need,
+
+00:03:17.280 --> 00:03:19.040
+plus downloads to Linux versions,
+
+00:03:19.040 --> 00:03:22.080
+with or without Java included.
+
+03:22.080 --> 00:03:24.799
+So what does OmegaT bring to the game?
+
+03:24.799 --> 00:03:26.560
+Professional translators have to deliver
+
+03:26.560 --> 00:03:27.680
+fast, consistent,
+
+00:03:27.680 --> 00:03:29.519
+and quality translations,
+
+03:29.519 --> 00:03:30.720
+and we need to have proper tools
+
+00:03:30.720 --> 00:03:32.159
+to achieve that.
+
+00:03:32.159 --> 00:03:34.239
+I wish po-mode was part of the toolbox,
+
+00:03:34.239 --> 00:03:35.120
+but that’s not the case,
+
+03:35.120 --> 00:03:36.560
+and it’s a pity.
+
+03:36.560 --> 00:03:39.760
+So we have to use those CAT tools.
+
+03:39.760 --> 00:03:41.440
+Let me show you what OmegaT looks like
+
+03:41.440 --> 00:03:43.120
+when I open this project that I created
+
+03:43.120 --> 00:03:45.200
+for this demonstration.
+
+03:45.200 --> 00:03:46.640
+The display is quite a mouthful,
+
+00:03:46.640 --> 00:03:47.760
+but you can actually modify
+
+00:03:47.760 --> 00:03:49.519
+all windows as needed.
+
+03:49.519 --> 00:03:50.400
+I just want to show you
+
+00:03:50.400 --> 00:03:51.120
+everything at once
+
+00:03:51.120 --> 00:03:53.680
+to give you a quick idea of the thing.
+
+03:53.680 --> 00:03:55.200
+You have various colors, windows,
+
+00:03:55.200 --> 00:03:55.920
+and all those spaces
+
+00:03:55.920 --> 00:03:57.120
+have different functions
+
+03:57.120 --> 00:03:58.560
+that help the translator,
+
+00:03:58.560 --> 00:03:59.360
+and that you’re probably
+
+00:03:59.360 --> 00:04:02.879
+not familiar with.
+
+04:02.879 --> 00:04:04.080
+I’m going to introduce you
+
+00:04:04.080 --> 00:04:05.680
+to the interface now.
+
+04:05.680 --> 00:04:07.519
+So first, we have the editor.
+
+04:07.519 --> 00:04:09.439
+The editor comes in two parts:
+
+04:09.439 --> 00:04:10.480
+the current segment,
+
+00:04:10.480 --> 00:04:12.319
+which is associated to a number,
+
+00:04:12.319 --> 00:04:13.519
+and all the other segments,
+
+00:04:13.519 --> 00:04:15.840
+above or below.
+
+04:15.840 --> 00:04:16.720
+At the top of the window,
+
+00:04:16.720 --> 00:04:18.720
+you can see the first three segments
+
+00:04:18.720 --> 00:04:20.799
+that were in the .po file.
+
+04:20.799 --> 00:04:22.880
+The last one here, the fourth one, comes
+
+00:04:22.880 --> 00:04:28.720
+with an automatic fuzzy match insertion.
+
+04:28.720 --> 00:04:30.880
+Such legacy translations are what we
+
+04:30.880 --> 00:04:32.720
+call ‘translation memories’.
+
+04:32.720 --> 00:04:35.280
+OmegaT has inserted this one automatically
+
+00:04:35.280 --> 00:04:37.120
+because I told it to do so,
+
+04:37.120 --> 00:04:38.560
+and for my security, it comes with
+
+00:04:38.560 --> 00:04:40.639
+the predefined fuzzy prefix
+
+00:04:40.639 --> 00:04:41.919
+that I will have to remove
+
+00:04:41.919 --> 00:04:44.880
+to validate the translation.
+
+04:44.880 --> 00:04:47.919
+Our next feature is the glossary feature.
+
+04:47.919 --> 00:04:48.479
+In this project,
+
+00:04:48.479 --> 00:04:50.160
+we have a lot of glossary data.
+
+00:04:50.160 --> 00:04:52.560
+Some is relevant and some is not.
+
+04:52.560 --> 00:04:53.919
+In the segment that I’m translating
+
+00:04:53.919 --> 00:04:55.199
+at the moment, you can see
+
+00:04:55.199 --> 00:04:57.520
+underlined items.
+
+04:57.520 --> 00:04:59.040
+This pop-up menu on the right
+
+00:04:59.040 --> 00:05:02.240
+allows me to enter the terms as I type.
+
+05:02.240 --> 00:05:04.639
+It’s kind of an auto insertion system
+
+00:05:04.639 --> 00:05:07.039
+that also supports history predictions,
+
+00:05:07.039 --> 00:05:14.479
+predefined strings, and things like that.
+
+05:14.479 --> 00:05:15.440
+In the part on the right,
+
+00:05:15.440 --> 00:05:17.120
+we have reference information
+
+00:05:17.120 --> 00:05:18.240
+that comes directly from
+
+00:05:18.240 --> 00:05:21.440
+the .po and .texi files.
+
+05:21.440 --> 00:05:23.440
+We also have notes that I can share
+
+00:05:23.440 --> 00:05:25.759
+with fellow translators,
+
+05:25.759 --> 00:05:28.080
+and we have numbers that tell me
+
+00:05:28.080 --> 00:05:31.199
+that I still have 143 000 segments more to go
+
+00:05:31.199 --> 00:05:35.280
+before I complete this translation.
+
+05:35.280 --> 00:05:37.120
+As we see, there are plenty of strings
+
+05:37.120 --> 00:05:40.000
+that we really don’t want to have to type.
+
+05:40.000 --> 00:05:42.160
+For example, those strings
+
+00:05:42.160 --> 00:05:43.840
+are typical .texi strings
+
+00:05:43.840 --> 00:05:45.039
+that the translator
+
+00:05:45.039 --> 00:05:46.479
+should really not have to type.
+
+00:05:46.479 --> 00:05:47.360
+So we’re going to have to
+
+00:05:47.360 --> 00:05:50.400
+do something about that.
+
+05:50.400 --> 00:05:51.600
+we’re going to have to create
+
+00:05:51.600 --> 00:05:52.479
+protected strings
+
+00:05:52.479 --> 00:05:54.400
+with regular expressions,
+
+05:54.400 --> 00:05:56.800
+so that the strings can be visualized
+
+00:05:56.800 --> 00:05:59.120
+right away in the source segment,
+
+05:59.120 --> 00:06:00.479
+entered semi-automatically
+
+00:06:00.479 --> 00:06:01.680
+in the target segment,
+
+00:06:01.680 --> 00:06:04.479
+and checked for integrity.
+
+06:04.479 --> 00:06:06.479
+The regular expression I came up with
+
+06:06.479 --> 00:06:08.160
+for defining most of the strings
+
+00:06:08.160 --> 00:06:09.600
+is this one,
+
+06:09.600 --> 00:06:11.120
+and I’m not a regular expression pro
+
+00:06:11.120 --> 00:06:13.360
+so I’m sure some of you will correct me.
+
+00:06:13.360 --> 00:06:14.560
+But this expression gives me
+
+00:06:14.560 --> 00:06:15.919
+a good enough definition
+
+00:06:15.919 --> 00:06:17.919
+even though it does not yet include
+
+00:06:17.919 --> 00:06:20.960
+Org mode syntax.
+
+06:20.960 --> 00:06:22.344
+So now we have all those
+
+00:06:22.344 --> 00:06:23.440
+.texi specific things
+
+00:06:23.440 --> 00:06:24.960
+that we don’t want to touch
+
+06:24.960 --> 00:06:26.100
+displayed in gray.
+
+00:06:26.100 --> 00:06:27.680
+Actually, you may have noticed
+
+00:06:27.680 --> 00:06:28.479
+that I cheated a bit,
+
+06:28.479 --> 00:06:30.319
+because here I added the years
+
+00:06:30.319 --> 00:06:32.000
+and the Free Software Foundation name
+
+00:06:32.000 --> 00:06:34.000
+to the previous regular expression
+
+00:06:34.000 --> 00:06:35.520
+to show you that you can protect
+
+00:06:35.520 --> 00:06:38.560
+any kind of string, really.
+
+06:38.560 --> 00:06:39.520
+So what we have now
+
+00:06:39.520 --> 00:06:41.360
+is a way to visualize the strings
+
+00:06:41.360 --> 00:06:43.440
+that we do not want to touch,
+
+06:43.440 --> 00:06:45.440
+but we still have to enter all of them
+
+00:06:45.440 --> 00:06:46.880
+in the translation.
+
+06:46.880 --> 00:06:48.319
+For that, we have the pop-up menu
+
+00:06:48.319 --> 00:06:50.400
+that I used earlier with the glossary,
+
+00:06:50.400 --> 00:06:51.520
+and we also have items
+
+00:06:51.520 --> 00:06:52.400
+in the edit menu
+
+00:06:52.400 --> 00:06:53.919
+that come with shortcuts
+
+00:06:53.919 --> 00:06:57.199
+for easy insertion of missing tags.
+
+06:57.199 --> 00:06:58.800
+Last, but certainly not least,
+
+00:06:58.800 --> 00:07:00.800
+we can now validate our input.
+
+00:07:00.800 --> 00:07:02.479
+Here, OmegaT properly tells me
+
+00:07:02.479 --> 00:07:05.759
+that I missed 7 protected strings,
+
+07:05.759 --> 00:07:07.599
+I entered only 1998,
+
+00:07:07.599 --> 00:07:09.280
+but there were five different years,
+
+00:07:09.280 --> 00:07:10.479
+the copyright string,
+
+00:07:10.479 --> 00:07:14.240
+and the FSF name string.
+
+07:14.240 --> 00:07:15.970
+With all this almost native
+
+00:07:15.970 --> 00:07:16.960
+Texinfo support,
+
+00:07:16.960 --> 00:07:18.880
+we have much less things to type,
+
+07:18.880 --> 00:07:19.919
+and there is a much lower
+
+00:07:19.919 --> 00:07:21.120
+potential for errors.
+
+00:07:21.120 --> 00:07:25.199
+But we agree, it’s still a lot of work.
+
+07:25.199 --> 00:07:26.319
+What we’d like now
+
+00:07:26.319 --> 00:07:27.840
+is to work with fellow translators,
+
+00:07:27.840 --> 00:07:28.720
+and here we need to know
+
+00:07:28.720 --> 00:07:29.840
+that OmegaT is actually
+
+00:07:29.840 --> 00:07:32.080
+a hidden svn/git client,
+
+00:07:32.080 --> 00:07:34.240
+and team projects can be hosted
+
+07:34.240 --> 00:07:36.319
+on svn/git platforms.
+
+07:36.319 --> 00:07:37.199
+Translators don’t need to
+
+00:07:37.199 --> 00:07:38.880
+know anything about VCS.
+
+00:07:38.880 --> 00:07:40.720
+They just need access credentials,
+
+00:07:40.720 --> 00:07:42.400
+and OmegaT commits for them.
+
+00:07:42.400 --> 00:07:44.080
+This way we do not have to use
+
+00:07:44.080 --> 00:07:45.759
+ugly and clumsy web-based
+
+00:07:45.759 --> 00:07:47.199
+translation interfaces,
+
+00:07:47.199 --> 00:07:48.800
+and we can use a powerful
+
+00:07:48.800 --> 00:07:51.440
+offline professional tool.
+
+07:51.440 --> 00:07:52.479
+So this is how it looks
+
+00:07:52.479 --> 00:07:54.160
+when you look at the platform
+
+00:07:54.160 --> 00:07:55.919
+where I hosted this project.
+
+07:55.919 --> 00:07:57.199
+The last updates are from
+
+00:07:57.199 --> 00:07:58.639
+20 days and 30 seconds ago
+
+00:07:58.639 --> 00:08:00.720
+when I created this slide,
+
+08:00.720 --> 00:08:02.479
+and you can see that I had a partner
+
+00:08:02.479 --> 00:08:04.639
+who worked with me on the same file set.
+
+08:04.639 --> 00:08:05.520
+Although it looks like
+
+00:08:05.520 --> 00:08:06.879
+we actually committed the translation
+
+00:08:06.879 --> 00:08:07.680
+to the platform,
+
+00:08:07.680 --> 00:08:11.039
+it was not us, but OmegaT.
+
+00:08:11.039 --> 00:08:13.599
+OmegaT does all the heavy-duty work.
+
+08:13.599 --> 00:08:15.039
+It regularly saves to
+
+00:08:15.039 --> 00:08:16.879
+and syncs from the servers.
+
+08:16.879 --> 00:08:18.720
+Translators are regularly kept updated
+
+08:18.720 --> 00:08:20.479
+with work from fellow translators,
+
+00:08:20.479 --> 00:08:21.680
+and when necessary,
+
+00:08:21.680 --> 00:08:23.360
+OmegaT offers a simple
+
+00:08:23.360 --> 00:08:25.440
+conflict-resolution dialogue.
+
+08:25.440 --> 00:08:27.039
+Translators never have to do anything
+
+08:27.039 --> 00:08:29.360
+with svn or git ever.
+
+08:29.360 --> 00:08:30.800
+And now we can envision a future
+
+00:08:30.800 --> 00:08:31.599
+not so far away
+
+00:08:31.599 --> 00:08:33.120
+where the manuals will be translated
+
+00:08:33.120 --> 00:08:34.159
+and eventually included
+
+00:08:34.159 --> 00:08:35.279
+in the distribution,
+
+00:08:35.279 --> 00:08:36.080
+but that’s a topic
+
+00:08:36.080 --> 00:08:39.760
+for a different presentation.
+
+08:39.760 --> 00:08:42.080
+So we’ve reached the end of this session.
+
+08:42.080 --> 00:08:44.240
+Thank you very much again for joining it.
+
+08:44.240 --> 00:08:45.600
+There are plenty of topics
+
+00:08:45.600 --> 00:08:46.880
+I promised I would not address,
+
+00:08:46.880 --> 00:08:50.000
+and I think I kept my promise.
+
+08:50.000 --> 00:08:51.600
+There will be a Q&A now,
+
+00:08:51.600 --> 00:08:52.517
+and I also started
+
+00:08:52.517 --> 00:08:53.600
+a thread about this talk
+
+00:08:53.600 --> 00:08:55.519
+on Reddit last Saturday.
+
+08:55.519 --> 00:08:57.279
+You can find me on the emacs-help
+
+00:08:57.279 --> 00:08:59.200
+and emacs-devel lists as well,
+
+00:08:59.200 --> 00:09:00.480
+so don’t hesitate to send me
+
+00:09:00.480 --> 00:09:02.080
+questions and remarks.
+
+09:02.080 --> 09:06.760
+Thank you again, and see you around.
diff --git a/2021/captions/emacsconf-2021-omegat--emacs-manuals-translation-and-omegat--jean-christophe-helary--main_fr.vtt b/2021/captions/emacsconf-2021-omegat--emacs-manuals-translation-and-omegat--jean-christophe-helary--main_fr.vtt new file mode 100644 index 00000000..69369c4e --- /dev/null +++ b/2021/captions/emacsconf-2021-omegat--emacs-manuals-translation-and-omegat--jean-christophe-helary--main_fr.vtt @@ -0,0 +1,892 @@ +WEBVTT
+
+00:01.280 --> 00:00:02.560
+Bonjour tout le monde.
+
+00:02.560 --> 00:00:04.400
+Je m’appelle Jean-Christophe Helary,
+
+00:00:04.400 --> 00:00:05.680
+et aujourd’hui je vais vous parler
+
+00:00:05.680 --> 00:00:08.320
+de la traduction des manuels Emacs avec OmegaT.
+
+00:00:08.320 --> 00:00:10.960
+Merci de vous joindre à moi aujourd’hui.
+
+00:10.960 --> 00:00:12.880
+La traduction dans le monde du logiciel libre
+
+00:12.880 --> 00:00:15.040
+est un phénomène très important. Vous savez déjà
+
+00:15.040 --> 00:00:17.119
+que la plupart des distributions Linux,
+
+00:17.119 --> 00:00:18.720
+la plupart des logiciels,
+
+00:00:18.720 --> 00:00:19.920
+la plupart des sites web
+
+00:00:19.920 --> 00:00:22.320
+sont traduits par des dizaines de communautés
+
+00:00:22.320 --> 00:00:23.439
+à l’aide de processus
+
+00:23.439 --> 00:00:24.880
+et de formats de fichiers tous différents.
+
+00:24.880 --> 00:00:27.359
+La traduction et la localisation
+
+00:27.359 --> 00:00:29.599
+sont des choses que nous connaissons bien.
+
+00:29.599 --> 00:00:30.400
+C’est un peu différent
+
+00:00:30.400 --> 00:00:32.160
+pour la communauté Emacs.
+
+00:32.160 --> 00:00:34.079
+Nous n’avons pas de processus de localisation
+
+00:34.079 --> 00:00:35.200
+parce que c’est encore trop complexe
+
+00:00:35.200 --> 00:00:35.920
+et parce que nous n’avons pas
+
+00:00:35.920 --> 00:00:37.600
+encore les ressources nécessaires.
+
+00:37.600 --> 00:00:39.920
+Néanmoins, nous pourrions traduire les manuels,
+
+00:00:39.920 --> 00:00:41.200
+et traduire les manuels
+
+00:00:41.200 --> 00:00:42.399
+apporterait probablement beaucoup
+
+00:00:42.399 --> 00:00:45.600
+à la communauté Emacs dans son ensemble.
+
+00:45.600 --> 00:00:47.920
+Quel est donc l’état des manuels ?
+
+00:47.920 --> 00:00:51.199
+À ce jour, nous avons 182 fichiers
+
+00:51.199 --> 00:00:54.160
+aux formats .texi et .org.
+
+00:54.160 --> 00:00:56.559
+Nous avons plus de 2 millions de mots.
+
+00:56.559 --> 00:00:57.360
+Nous avons plus de
+
+00:00:57.360 --> 00:00:59.039
+50 millions de caractères.
+
+00:00:59.039 --> 00:01:00.559
+C’est donc beaucoup de travail,
+
+01:00.559 --> 00:01:04.559
+et il est clair qu’une personne ne suffira pas.
+
+01:04.559 --> 00:01:06.159
+Quand on ouvre un fichier .texi
+
+00:01:06.159 --> 00:01:07.760
+qu’est-ce qu’on y trouve ?
+
+01:07.760 --> 00:01:09.439
+Eh bien, beaucoup de choses en fait
+
+01:09.439 --> 00:01:10.560
+que les traducteurs
+
+00:01:10.560 --> 00:01:12.400
+ne devraient pas avoir à traduire.
+
+01:12.400 --> 00:01:13.680
+Ici, on peut voir que seul
+
+00:01:13.680 --> 00:01:15.040
+le tout dernier segment,
+
+00:01:15.040 --> 00:01:16.400
+la toute dernière phrase
+
+00:01:16.400 --> 00:01:18.080
+doit être traduite.
+
+01:18.080 --> 00:01:19.360
+Toutes ces choses « méta »
+
+00:01:19.360 --> 00:01:20.240
+ne devraient pas être sous
+
+00:01:20.240 --> 00:01:24.479
+les yeux du traducteur.
+
+01:24.479 --> 00:01:26.720
+Comment faire face à cette situation ?
+
+01:26.720 --> 00:01:27.680
+Pour les fichiers de code, nous avons
+
+00:01:27.680 --> 00:01:29.360
+l’utilitaire gettext qui convertit
+
+00:01:29.360 --> 00:01:30.640
+toutes les chaînes de traduisibles
+
+00:01:30.640 --> 00:01:32.079
+dans un format traduisible,
+
+00:01:32.079 --> 00:01:33.840
+qui est le format .po.
+
+01:33.840 --> 00:01:35.520
+Ce format .po est omniprésent,
+
+00:01:35.520 --> 00:01:36.400
+même dans l’industrie de la traduction
+
+00:01:36.400 --> 00:01:38.720
+des logiciels non-libres.
+
+01:38.720 --> 00:01:39.520
+Pour la documentation,
+
+00:01:39.520 --> 00:01:40.720
+nous avons quelque chose de différent
+
+00:01:40.720 --> 00:01:42.000
+qui s’appelle po4a,
+
+00:01:42.000 --> 00:01:45.119
+l’abréviation de « po for all » (po pour tous).
+
+01:45.119 --> 00:01:46.399
+Quand on utilise po4a
+
+00:01:46.399 --> 00:01:49.200
+sur ces 182 fichiers .texi et .org,
+
+00:01:49.200 --> 00:01:50.479
+qu’est-ce qu’on obtient ?
+
+01:50.479 --> 00:01:52.640
+On obtient quelque chose de bien mieux.
+
+01:52.640 --> 00:01:54.799
+Maintenant on a trois segments.
+
+01:54.799 --> 00:01:55.759
+Ce n’est pas parfait, car,
+
+00:01:55.759 --> 00:01:56.399
+comme vous pouvez le voir,
+
+00:01:56.399 --> 00:01:57.280
+les deux premiers segments
+
+00:01:57.280 --> 00:01:58.880
+ne sont pas à traduire.
+
+01:58.880 --> 00:01:59.520
+Donc on peut encore
+
+00:01:59.520 --> 00:02:02.479
+améliorer les choses.
+
+02:02.479 --> 00:02:04.960
+Quand on met ces fichiers
+
+00:02:04.960 --> 00:02:07.119
+dans OmegaT, on réduit considérablement
+
+00:02:07.119 --> 00:02:08.800
+le nombre total de mots.
+
+02:08.800 --> 00:02:11.360
+On a maintenant 50 % de mots en moins
+
+00:02:11.360 --> 00:02:14.239
+et 23 % de caractères en moins à taper,
+
+02:14.239 --> 00:02:15.680
+mais c’est toujours encore beaucoup de travail.
+
+00:02:15.680 --> 00:02:17.599
+Je vais donc vous parler d’OmegaT maintenant
+
+00:02:17.599 --> 00:02:22.239
+pour voir où il peut nous être utile.
+
+02:22.239 --> 00:02:25.440
+OmegaT est un logiciel GPL3+, Java8+.
+
+02:25.440 --> 00:02:27.599
+C’est un outil de Traduction Assistée par Ordinateur.
+
+02:27.599 --> 00:02:29.440
+On abrège ça TAO.
+
+02:29.440 --> 00:02:30.720
+La TAO est aux traducteurs
+
+00:02:30.720 --> 00:02:33.280
+ce que les EDI sont aux programmeurs.
+
+02:33.280 --> 00:02:35.040
+Elle exploite la puissance de l’ordinateur
+
+00:02:35.040 --> 00:02:36.480
+pour automatiser notre travail,
+
+00:02:36.480 --> 00:02:38.400
+qui consiste en recherche de références,
+
+00:02:38.400 --> 00:02:40.800
+de correspondances, insertions automatiques,
+
+00:02:40.800 --> 00:02:44.080
+et d’autres choses comme ça.
+
+02:44.080 --> 00:02:46.319
+OmegaT n’est plus si jeune.
+
+02:46.319 --> 00:02:48.319
+Il aura 20 ans l’année prochaine,
+
+02:48.319 --> 00:02:48.959
+et à ce stade
+
+00:02:48.959 --> 00:02:51.440
+nous avons environ 1,5 million de téléchargements
+
+00:02:51.440 --> 00:02:53.200
+sur le site SourceForge
+
+00:02:53.200 --> 00:02:54.080
+ce qui ne veut pas dire grand-chose
+
+00:02:54.080 --> 00:02:55.040
+parce que cela inclut
+
+00:02:55.040 --> 00:02:56.480
+les fichiers utilisés pour la localisation
+
+00:02:56.480 --> 00:02:57.920
+les manuels, mais quand même
+
+00:02:57.920 --> 00:02:59.599
+c’est un chiffre quand même important.
+
+02:59.599 --> 00:03:00.720
+OmegaT est inclus dans
+
+00:03:00.720 --> 00:03:02.400
+beaucoup de distributions Linux,
+
+00:03:02.400 --> 00:03:03.680
+mais comme vous pouvez le voir ici,
+
+03:03.680 --> 00:03:05.920
+il est surtout téléchargé sur Windows
+
+00:03:05.920 --> 00:03:06.800
+car les traducteurs
+
+00:03:06.800 --> 00:03:09.680
+travaillent principalement sous Windows.
+
+03:09.680 --> 00:03:11.120
+OmegaT a un logo sympa
+
+00:03:11.120 --> 00:03:12.080
+et un site sympa aussi,
+
+00:03:12.080 --> 00:03:13.920
+et je vous invite vraiment à le visiter.
+
+00:03:13.920 --> 00:03:16.159
+L’URL est omegat.org et vous y trouverez
+
+03:16.159 --> 00:03:17.280
+toutes les informations dont vous avez besoin
+
+00:03:17.280 --> 00:03:19.040
+ainsi que les téléchargements des versions Linux,
+
+00:03:19.040 --> 00:03:22.080
+avec ou sans Java inclus.
+
+03:22.080 --> 00:03:24.799
+Alors, qu’est-ce qu’OmegaT nous apporte ?
+
+03:24.799 --> 00:03:26.560
+Les traducteurs professionnels doivent fournir
+
+03:26.560 --> 00:03:27.680
+des traductions rapides, cohérentes,
+
+00:03:27.680 --> 00:03:29.519
+et de qualité,
+
+03:29.519 --> 00:03:30.720
+et nous devons disposer d’outils appropriés
+
+00:03:30.720 --> 00:03:32.159
+pour y parvenir.
+
+00:03:32.159 --> 00:03:34.239
+J’aimerais que po-mode fasse partie de nos outils,
+
+00:03:34.239 --> 00:03:35.120
+mais ce n’est pas le cas,
+
+03:35.120 --> 00:03:36.560
+et c’est bien dommage.
+
+03:36.560 --> 00:03:39.760
+Nous devons donc utiliser ces outils de TAO.
+
+03:39.760 --> 00:03:41.440
+Laissez-moi vous montrer à quoi ressemble OmegaT
+
+03:41.440 --> 00:03:43.120
+quand j’ouvre ce projet que j’ai créé
+
+03:43.120 --> 00:03:45.200
+pour cette présentation.
+
+03:45.200 --> 00:03:46.640
+La fenêtre est assez impressionnante,
+
+00:03:46.640 --> 00:03:47.760
+mais vous pouvez en fait modifier
+
+00:03:47.760 --> 00:03:49.519
+toutes les parties selon vos besoins.
+
+03:49.519 --> 00:03:50.400
+Je veux juste vous montrer
+
+00:03:50.400 --> 00:03:51.120
+tout en même temps
+
+00:03:51.120 --> 00:03:53.680
+pour vous donner une idée rapide de l’ensemble.
+
+03:53.680 --> 00:03:55.200
+Vous avez différentes couleurs, fenêtres,
+
+00:03:55.200 --> 00:03:55.920
+et tous ces espaces
+
+00:03:55.920 --> 00:03:57.120
+ont des fonctions différentes
+
+03:57.120 --> 00:03:58.560
+qui aident le traducteur,
+
+00:03:58.560 --> 00:03:59.360
+et qui probablement ne vous sont
+
+00:03:59.360 --> 00:04:02.879
+pas familières.
+
+04:02.879 --> 00:04:04.080
+Je vais vous présenter
+
+00:04:04.080 --> 00:04:05.680
+l’interface maintenant.
+
+04:05.680 --> 00:04:07.519
+Tout d’abord, nous avons l’éditeur.
+
+04:07.519 --> 00:04:09.439
+L’éditeur est composé de deux parties :
+
+04:09.439 --> 00:04:10.480
+le segment courant,
+
+00:04:10.480 --> 00:04:12.319
+qui est associé à un numéro,
+
+00:04:12.319 --> 00:04:13.519
+et tous les autres segments,
+
+00:04:13.519 --> 00:04:15.840
+au-dessus ou en dessous.
+
+04:15.840 --> 00:04:16.720
+En haut de la fenêtre,
+
+00:04:16.720 --> 00:04:18.720
+vous pouvez voir les trois premiers segments
+
+00:04:18.720 --> 00:04:20.799
+qui étaient dans le fichier .po.
+
+04:20.799 --> 00:04:22.880
+Le dernier ici, le quatrième, inclut
+
+00:04:22.880 --> 00:04:28.720
+une insertion automatique de correspondance.
+
+04:28.720 --> 00:04:30.880
+On appelle ce type de traductions
+
+04:30.880 --> 00:04:32.720
+des « mémoires de traduction ».
+
+04:32.720 --> 00:04:35.280
+OmegaT a inséré celle-ci automatiquement
+
+00:04:35.280 --> 00:04:37.120
+parce que j’ai paramétré comme ça,
+
+04:37.120 --> 00:04:38.560
+et pour ma sécurité, elle est insérée avec
+
+00:04:38.560 --> 00:04:40.639
+le préfixe prédéfini « fuzzy »
+
+00:04:40.639 --> 00:04:41.919
+que je devrai retirer
+
+00:04:41.919 --> 00:04:44.880
+pour valider la traduction.
+
+04:44.880 --> 00:04:47.919
+La fonctionnalité suivante est le glossaire.
+
+04:47.919 --> 00:04:48.479
+Dans ce projet,
+
+00:04:48.479 --> 00:04:50.160
+on a beaucoup de glossaires.
+
+00:04:50.160 --> 00:04:52.560
+Certains sont pertinents, d’autres non.
+
+04:52.560 --> 00:04:53.919
+Dans le segment que je suis en train de traduire
+
+00:04:53.919 --> 00:04:55.199
+en ce moment, vous pouvez voir
+
+00:04:55.199 --> 00:04:57.520
+des éléments soulignés.
+
+04:57.520 --> 00:04:59.040
+Ce menu contextuel à droite
+
+00:04:59.040 --> 00:05:02.240
+me permet d’entrer les termes au fur et à mesure que j’écris.
+
+05:02.240 --> 00:05:04.639
+C’est une sorte de système d’insertion automatique
+
+00:05:04.639 --> 00:05:07.039
+qui propose aussi des prédictions de l’historique,
+
+00:05:07.039 --> 00:05:14.479
+des chaînes prédéfinies et d’autres choses comme ça.
+
+05:14.479 --> 00:05:15.440
+Dans la partie à droite,
+
+00:05:15.440 --> 00:05:17.120
+on a des informations de référence
+
+00:05:17.120 --> 00:05:18.240
+qui viennent directement
+
+00:05:18.240 --> 00:05:21.440
+des fichiers .po et .texi.
+
+05:21.440 --> 00:05:23.440
+On a également des notes à partager
+
+00:05:23.440 --> 00:05:25.759
+avec des collègues traducteurs,
+
+05:25.759 --> 00:05:28.080
+et nous avons des chiffres qui me disent
+
+00:05:28.080 --> 00:05:31.199
+qu’il me reste encore 143 000 segments à traduire
+
+00:05:31.199 --> 00:05:35.280
+avant de terminer cette traduction.
+
+05:35.280 --> 00:05:37.120
+Comme on le voit, il y a beaucoup de chaînes
+
+05:37.120 --> 00:05:40.000
+que nous ne voulons vraiment pas avoir à saisir.
+
+05:40.000 --> 00:05:42.160
+Par exemple, ces chaînes
+
+00:05:42.160 --> 00:05:43.840
+sont des chaînes .texi typiques
+
+00:05:43.840 --> 00:05:45.039
+que le traducteur
+
+00:05:45.039 --> 00:05:46.479
+ne devrait vraiment pas avoir à saisir.
+
+00:05:46.479 --> 00:05:47.360
+Nous allons donc devoir
+
+00:05:47.360 --> 00:05:50.400
+faire quelque chose pour gérer ça.
+
+05:50.400 --> 00:05:51.600
+On va devoir créer des
+
+00:05:51.600 --> 00:05:52.479
+chaînes protégées
+
+00:05:52.479 --> 00:05:54.400
+à l’aide d’expressions régulières,
+
+05:54.400 --> 00:05:56.800
+afin que les chaînes puissent être visualisées
+
+00:05:56.800 --> 00:05:59.120
+immédiatement dans le segment source,
+
+05:59.120 --> 00:06:00.479
+saisies de manière semi-automatique
+
+00:06:00.479 --> 00:06:01.680
+dans le segment cible,
+
+00:06:01.680 --> 00:06:04.479
+et validables.
+
+06:04.479 --> 00:06:06.479
+L’expression régulière que j’ai trouvée
+
+06:06.479 --> 00:06:08.160
+pour définir la plupart des chaînes
+
+00:06:08.160 --> 00:06:09.600
+est celle-ci,
+
+06:09.600 --> 00:06:11.120
+et je ne suis pas un pro des regex
+
+00:06:11.120 --> 00:06:13.360
+donc certains d’entre vous pourront me corriger.
+
+00:06:13.360 --> 00:06:14.560
+Mais cette expression me donne
+
+00:06:14.560 --> 00:06:15.919
+une définition suffisante
+
+00:06:15.919 --> 00:06:17.919
+même si elle n’inclut pas encore
+
+00:06:17.919 --> 00:06:20.960
+la syntaxe org-mode.
+
+06:20.960 --> 00:06:22.344
+Donc maintenant on a toutes ces
+
+00:06:22.344 --> 00:06:23.440
+chaînes spécifiques à .texi
+
+00:06:23.440 --> 00:06:24.960
+que nous ne voulons pas toucher
+
+06:24.960 --> 00:06:26.100
+affichées en gris.
+
+00:06:26.100 --> 00:06:27.680
+En fait, vous avez peut-être remarqué
+
+00:06:27.680 --> 00:06:28.479
+que j’ai un peu triché,
+
+06:28.479 --> 00:06:30.319
+car ici j’ai ajouté les années
+
+00:06:30.319 --> 00:06:32.000
+et le nom de la Free Software Foundation
+
+00:06:32.000 --> 00:06:34.000
+à la regex précédente
+
+00:06:34.000 --> 00:06:35.520
+pour vous montrer que vous pouvez protéger
+
+00:06:35.520 --> 00:06:38.560
+vraiment n’importe quel type de chaîne.
+
+06:38.560 --> 00:06:39.520
+On obtient maintenant
+
+00:06:39.520 --> 00:06:41.360
+une visualisation des chaînes de caractères
+
+00:06:41.360 --> 00:06:43.440
+que nous ne voulons pas toucher,
+
+06:43.440 --> 00:06:45.440
+mais on doit encore les saisir toutes
+
+00:06:45.440 --> 00:06:46.880
+dans la traduction.
+
+06:46.880 --> 00:06:48.319
+Pour ça, on a le menu contextuel
+
+00:06:48.319 --> 00:06:50.400
+que j’ai utilisé plus tôt avec le glossaire,
+
+00:06:50.400 --> 00:06:51.520
+et on a également des rubriques
+
+00:06:51.520 --> 00:06:52.400
+dans le menu d’édition
+
+00:06:52.400 --> 00:06:53.919
+qui sont accompagnés de raccourcis
+
+00:06:53.919 --> 00:06:57.199
+pour faciliter l’insertion des balises manquantes.
+
+06:57.199 --> 00:06:58.800
+Enfin, et ce n’est pas le moins important,
+
+00:06:58.800 --> 00:07:00.800
+nous pouvons maintenant valider nos entrées.
+
+00:07:00.800 --> 00:07:02.479
+Ici, OmegaT me dit correctement
+
+00:07:02.479 --> 00:07:05.759
+que j’ai raté 7 chaînes protégées.
+
+07:05.759 --> 00:07:07.599
+Je n’ai entré que 1998,
+
+00:07:07.599 --> 00:07:09.280
+mais il y avait cinq autres années,
+
+00:07:09.280 --> 00:07:10.479
+la chaîne de copyright,
+
+00:07:10.479 --> 00:07:14.240
+et le nom de la FSF.
+
+07:14.240 --> 00:07:15.970
+Avec ce support presque natif
+
+00:07:15.970 --> 00:07:16.960
+du format Texinfo,
+
+00:07:16.960 --> 00:07:18.880
+on a beaucoup moins de choses à saisir,
+
+07:18.880 --> 00:07:19.919
+et il y a beaucoup moins
+
+00:07:19.919 --> 00:07:21.120
+d’erreurs potentielles.
+
+00:07:21.120 --> 00:07:25.199
+Mais on est d’accord, c’est encore beaucoup de travail.
+
+07:25.199 --> 00:07:26.319
+Ce qu’on aimerait maintenant
+
+00:07:26.319 --> 00:07:27.840
+c’est de collaborer avec des collègues traducteurs,
+
+00:07:27.840 --> 00:07:28.720
+et là, on doit savoir
+
+00:07:28.720 --> 00:07:29.840
+qu’OmegaT est en fait
+
+00:07:29.840 --> 00:07:32.080
+un client svn/git dissimulé,
+
+00:07:32.080 --> 00:07:34.240
+et que les projets en équipe peuvent être hébergés
+
+07:34.240 --> 00:07:36.319
+sur des plates-formes svn/git.
+
+07:36.319 --> 00:07:37.199
+Les traducteurs n’ont pas besoin
+
+00:07:37.199 --> 00:07:38.880
+de connaître le contrôle de version.
+
+00:07:38.880 --> 00:07:40.720
+Ils ont juste besoin d’identifiants d’accès,
+
+00:07:40.720 --> 00:07:42.400
+et OmegaT va commiter pour eux.
+
+00:07:42.400 --> 00:07:44.080
+De cette façon, nous n’avons pas besoin d’utiliser
+
+00:07:44.080 --> 00:07:45.759
+d’interfaces de traduction web laides
+
+00:07:45.759 --> 00:07:47.199
+et peu ergonomiques
+
+00:07:47.199 --> 00:07:48.800
+puisqu’on peut utiliser un outil
+
+00:07:48.800 --> 00:07:51.440
+hors ligne professionnel.
+
+07:51.440 --> 00:07:52.479
+Voici donc à quoi ressemble
+
+00:07:52.479 --> 00:07:54.160
+la plateforme
+
+00:07:54.160 --> 00:07:55.919
+où j’héberge ce projet.
+
+07:55.919 --> 00:07:57.199
+Les dernières mises à jour datent d’il y a
+
+00:07:57.199 --> 00:07:58.639
+20 jours et 30 secondes
+
+00:07:58.639 --> 00:08:00.720
+quand j’ai créé cette présentation,
+
+08:00.720 --> 00:08:02.479
+et vous pouvez voir que j’ai un partenaire
+
+00:08:02.479 --> 00:08:04.639
+qui a travaillé avec moi sur le même ensemble de fichiers.
+
+08:04.639 --> 00:08:05.520
+Bien qu’il semble que
+
+00:08:05.520 --> 00:08:06.879
+que nous avons effectivement commité la traduction
+
+00:08:06.879 --> 00:08:07.680
+sur la plateforme,
+
+00:08:07.680 --> 00:08:11.039
+ce n’était pas nous, mais OmegaT.
+
+00:08:11.039 --> 00:08:13.599
+OmegaT fait le gros du travail.
+
+08:13.599 --> 00:08:15.039
+Il effectue régulièrement des sauvegardes et
+
+00:08:15.039 --> 00:08:16.879
+se synchronise avec les serveurs.
+
+08:16.879 --> 00:08:18.720
+Les traducteurs reçoivent régulièrement
+
+08:18.720 --> 00:08:20.479
+les mises à jour de leurs collègues,
+
+00:08:20.479 --> 00:08:21.680
+et quand il le faut,
+
+00:08:21.680 --> 00:08:23.360
+OmegaT affiche un simple
+
+00:08:23.360 --> 00:08:25.440
+dialogue de résolution des conflits.
+
+08:25.440 --> 00:08:27.039
+Les traducteurs n’ont jamais à manipuler
+
+08:27.039 --> 00:08:29.360
+svn ou git, jamais.
+
+08:29.360 --> 00:08:30.800
+Et maintenant, nous pouvons envisager un avenir
+
+00:08:30.800 --> 00:08:31.599
+pas si lointain
+
+00:08:31.599 --> 00:08:33.120
+où les manuels seraient traduits
+
+00:08:33.120 --> 00:08:34.159
+et éventuellement inclus
+
+00:08:34.159 --> 00:08:35.279
+dans la distribution,
+
+00:08:35.279 --> 00:08:36.080
+mais c’est un sujet
+
+00:08:36.080 --> 00:08:39.760
+pour une autre présentation.
+
+08:39.760 --> 00:08:42.080
+J’ai atteint la fin de cette session.
+
+08:42.080 --> 00:08:44.240
+Merci encore d’y avoir participé.
+
+08:44.240 --> 00:08:45.600
+Il y a beaucoup de sujets
+
+00:08:45.600 --> 00:08:46.880
+que j’avais promis de ne pas aborder,
+
+00:08:46.880 --> 00:08:50.000
+et je pense avoir tenu ma promesse.
+
+08:50.000 --> 00:08:51.600
+Il va y avoir des questions-réponses maintenant
+
+00:08:51.600 --> 00:08:52.517
+et j’ai aussi commencé
+
+00:08:52.517 --> 00:08:53.600
+un fil de discussion sur cette session
+
+00:08:53.600 --> 00:08:55.519
+samedi dernier, sur Reddit.
+
+08:55.519 --> 00:08:57.279
+Vous pouvez me trouver sur les listes emacs-help
+
+00:08:57.279 --> 00:08:59.200
+et emacs-devel,
+
+00:08:59.200 --> 00:09:00.480
+alors n’hésitez pas à m’envoyer
+
+00:09:00.480 --> 00:09:02.080
+vos questions et remarques.
+
+09:02.080 --> 09:06.760
+Merci encore, et à bientôt !
diff --git a/2021/captions/emacsconf-2021-omegat--emacs-manuals-translation-and-omegat--jean-christophe-helary--main_ja.vtt b/2021/captions/emacsconf-2021-omegat--emacs-manuals-translation-and-omegat--jean-christophe-helary--main_ja.vtt new file mode 100644 index 00000000..8d159336 --- /dev/null +++ b/2021/captions/emacsconf-2021-omegat--emacs-manuals-translation-and-omegat--jean-christophe-helary--main_ja.vtt @@ -0,0 +1,892 @@ +WEBVTT + +00:01.280 --> 00:00:02.560 +皆さん、こんにちは。 + +00:02.560 --> 00:00:04.400 +エラリー ジャンクリストフといいます。 + +00:00:04.400 --> 00:00:05.680 +今日はEmacsのマニュアルの翻訳と + +00:00:05.680 --> 00:00:08.320 +OmegaTについてお話しします。 + +00:00:08.320 --> 00:00:10.960 +セッションに参加いただき、ありがとうございます。 + +00:10.960 --> 00:00:12.880 +自由ソフトウェアの世界では + +00:12.880 --> 00:00:15.040 +翻訳は本当に大きな意味を持ちます。 + +00:15.040 --> 00:00:17.119 +ほとんどのLinuxディストリビューション、 + +00:17.119 --> 00:00:18.720 +ソフトウェアパッケージ + +00:00:18.720 --> 00:00:19.920 +ウェブサイトが + +00:00:19.920 --> 00:00:22.320 +異なるプロセスやファイル形式を使い、 + +00:00:22.320 --> 00:00:23.439 +多くのコミュニティによって + +00:23.439 --> 00:00:24.880 +翻訳されていることをすでにご存知でしょう。 + +00:24.880 --> 00:00:27.359 +翻訳とローカライゼーションについては + +00:27.359 --> 00:00:29.599 +ノウハウと経験がかなり蓄積されています。 + +00:29.599 --> 00:00:30.400 +しかし、Emacsコミュニティについては + +00:00:30.400 --> 00:00:32.160 +必ずしもそうではありません。 + +00:32.160 --> 00:00:34.079 +色々と複雑で、 + +00:34.079 --> 00:00:35.200 +またリソースがないため、 + +00:00:35.200 --> 00:00:35.920 +ローカライゼーションプロセスが + +00:00:35.920 --> 00:00:37.600 +まだ確立していません。 + +00:37.600 --> 00:00:39.920 +しかし、マニュアルの翻訳は可能ですし、 + +00:00:39.920 --> 00:00:41.200 +マニュアルの翻訳によって、 + +00:00:41.200 --> 00:00:42.399 +Emacsコミュニティ全体に + +00:00:42.399 --> 00:00:45.600 +多くの利益がもたらされるでしょう。 + +00:45.600 --> 00:00:47.920 +では、マニュアルはどうなっているのでしょうか? + +00:47.920 --> 00:00:51.199 +今日現在、182のファイルが + +00:51.199 --> 00:00:54.160 +.texi や.org 形式で作成されています。 + +00:54.160 --> 00:00:56.559 +単語数は200万以上です。 + +00:56.559 --> 00:00:57.360 +文字数は、 + +00:00:57.360 --> 00:00:59.039 +5000万以上です。 + +00:00:59.039 --> 00:01:00.559 +これはかなりの量ですし、 + +01:00.559 --> 00:01:04.559 +当然ながら、一人でできる仕事ではありません。 + +01:04.559 --> 00:01:06.159 +.texi ファイルを開くと、 + +00:01:06.159 --> 00:01:07.760 +何が出てくるのでしょうか? + +01:07.760 --> 00:01:09.439 +実は、翻訳者が翻訳する必要が + +01:09.439 --> 00:01:10.560 +ないものが + +00:01:10.560 --> 00:01:12.400 +たくさんあるのです。 + +01:12.400 --> 00:01:13.680 +ここでは、一番最後の + +00:01:13.680 --> 00:01:15.040 +セグメント、一番最後の + +00:01:15.040 --> 00:01:16.400 +文だけが翻訳する + +00:01:16.400 --> 00:01:18.080 +必要があります。 + +01:18.080 --> 00:01:19.360 +このようなメタ的なものは + +00:01:19.360 --> 00:01:20.240 +すべて翻訳者の目に + +00:01:20.240 --> 00:01:24.479 +触れる必要はありません。 + +01:24.479 --> 00:01:26.720 +このような場合はどう対処すればいいのでしょうか? + +01:26.720 --> 00:01:27.680 +ソースファイルの場合、 + +00:01:27.680 --> 00:01:29.360 +gettext というユーティリティーがあり、 + +00:01:29.360 --> 00:01:30.640 +翻訳可能な文字列を + +00:01:30.640 --> 00:01:32.079 +翻訳可能な形式に変換します。 + +00:01:32.079 --> 00:01:33.840 +それが .po 形式になります。 + +01:33.840 --> 00:01:35.520 +この .po 形式はどこにでもあり、 + +00:01:35.520 --> 00:01:36.400 +自由ではないソフトウェア + +00:01:36.400 --> 00:01:38.720 +翻訳業界でも広く使われています。 + +01:38.720 --> 00:01:39.520 +ドキュメントについては + +00:01:39.520 --> 00:01:40.720 +別のツールがあります。 + +00:01:40.720 --> 00:01:42.000 +po4a と呼ばれるもので、 + +00:01:42.000 --> 00:01:45.119 +これは「po for all」の略です。 + +01:45.119 --> 00:01:46.399 +po4aを182.texiと + +00:01:46.399 --> 00:01:49.200 +.org ファイルに用いると + +00:01:49.200 --> 00:01:50.479 +どうなるでしょうか? + +01:50.479 --> 00:01:52.640 +先ほどよりずっといいものができました。 + +01:52.640 --> 00:01:54.799 +これで分節が3つができました。 + +01:54.799 --> 00:01:55.759 +ご覧の通り、 + +00:01:55.759 --> 00:01:56.399 +最初の2つの分節は + +00:01:56.399 --> 00:01:57.280 +翻訳の必要がないので、 + +00:01:57.280 --> 00:01:58.880 +完璧ではありません。 + +01:58.880 --> 00:01:59.520 +ですから、まだ + +00:01:59.520 --> 00:02:02.479 +改善の余地があります。 + +02:02.479 --> 00:02:04.960 +さて、このファイルセットを + +00:02:04.960 --> 00:02:07.119 +OmegaTに入れると翻訳対象単語数が + +00:02:07.119 --> 00:02:08.800 +かなり減ります。 + +02:08.800 --> 00:02:11.360 +単語数が50%、 + +00:02:11.360 --> 00:02:14.239 +文字数が23%減りましたが、 + +02:14.239 --> 00:02:15.680 +まだかなりの仕事量です。 + +00:02:15.680 --> 00:02:17.599 +では、ここでOmegaTについて、 + +00:02:17.599 --> 00:02:22.239 +そして、OmegaTがどこに役立つかを見てみましょう。 + +02:22.239 --> 00:02:25.440 +OmegaTは、GPL3+ Java8+ のソフトで + +02:25.440 --> 00:02:27.599 +コンピューター支援翻訳ツールです。 + +02:27.599 --> 00:02:29.440 +Computer Aided Translationと呼ばれます。 + +02:29.440 --> 00:02:30.720 +CATは翻訳者にとって、 + +00:02:30.720 --> 00:02:33.280 +プログラマーにとってのIDEのようなものです。 + +02:33.280 --> 00:02:35.040 +CATは、コンピュータの力を利用して + +00:02:35.040 --> 00:02:36.480 +翻訳者の仕事を自動化します。 + +00:02:36.480 --> 00:02:38.400 +例えば、参考翻訳の検索や + +00:02:38.400 --> 00:02:40.800 +ファジーマッチ、自動入力 + +00:02:40.800 --> 00:02:44.080 +などのようなものです。 + +02:44.080 --> 00:02:46.319 +OmegaTは最近のものありません。 + +02:46.319 --> 00:02:48.319 +来年で20年になり、 + +02:48.319 --> 00:02:48.959 +現時点では + +00:02:48.959 --> 00:02:51.440 +SourceForgeのサイトから + +00:02:51.440 --> 00:02:53.200 +150万件前後のダウンロードがあります。 + +00:02:53.200 --> 00:02:54.080 +これにはローカライズや + +00:02:54.080 --> 00:02:55.040 +マニュアルに使用されるファイルが + +00:02:55.040 --> 00:02:56.480 +多少含まれるので、 + +00:02:56.480 --> 00:02:57.920 +それほど意味はありませんが、 + +00:02:57.920 --> 00:02:59.599 +それでもかなり大きな数字です。 + +02:59.599 --> 00:03:00.720 +OmegaTは、多くのLinux + +00:03:00.720 --> 00:03:02.400 +ディストリビューションに含まれますが、 + +00:03:02.400 --> 00:03:03.680 +ここで見られるように + +03:03.680 --> 00:03:05.920 +ほとんどがWindowsでダウンロードされています。 + +00:03:05.920 --> 00:03:06.800 +なぜなら、翻訳者は + +00:03:06.800 --> 00:03:09.680 +ほとんどWindows上で作業しているからです。 + +03:09.680 --> 00:03:11.120 +OmegaTにもかっこいいロゴと + +00:03:11.120 --> 00:03:12.080 +かっこいいサイトがあります。 + +00:03:12.080 --> 00:03:13.920 +ぜひ一度ご覧ください。 + +00:03:13.920 --> 00:03:16.159 +サイトはomegat.orgで、 + +03:16.159 --> 00:03:17.280 +すべての必要な情報が見られます。 + +00:03:17.280 --> 00:03:19.040 +また、Javaの有無の関わらず、 + +00:03:19.040 --> 00:03:22.080 +Linuxバージョンもダウンロードできます。 + +03:22.080 --> 00:03:24.799 +では、OmegaTによって何が変わるのでしょうか? + +03:24.799 --> 00:03:26.560 +プロの翻訳者が提供しなければいけないのは、 + +03:26.560 --> 00:03:27.680 +速く、一貫性があり + +00:03:27.680 --> 00:03:29.519 +品質の高い翻訳です。 + +03:29.519 --> 00:03:30.720 +それを実現するためには、 + +00:03:30.720 --> 00:03:32.159 +適切なツールが必要です。 + +00:03:32.159 --> 00:03:34.239 +po-modeがツールボックスの一部であればいいのですが、 + +00:03:34.239 --> 00:03:35.120 +そうはなっていません。 + +03:35.120 --> 00:03:36.560 +残念ながら。 + +03:36.560 --> 00:03:39.760 +ですから、そのようなCATツールを使わなければなりません。 + +03:39.760 --> 00:03:41.440 +このデモのために作成したプロジェクトを + +03:41.440 --> 00:03:43.120 +開くと、OmegaTがどのように表示されるか + +03:43.120 --> 00:03:45.200 +お見せしましょう。 + +03:45.200 --> 00:03:46.640 +表示はかなりややこしいですが、 + +00:03:46.640 --> 00:03:47.760 +実際には、必要に応じてすべての + +00:03:47.760 --> 00:03:49.519 +ウィンドウを変更できます。 + +03:49.519 --> 00:03:50.400 +OmegaTがどんなものなのか + +00:03:50.400 --> 00:03:51.120 +理解していただくために + +00:03:51.120 --> 00:03:53.680 +一度にすべてをお見せしたいと思います。 + +03:53.680 --> 00:03:55.200 +さまざまな色やウィンドウがあり、 + +00:03:55.200 --> 00:03:55.920 +それらスペースには + +00:03:55.920 --> 00:03:57.120 +翻訳者を支援する + +03:57.120 --> 00:03:58.560 +さまざまな機能がありますが、 + +00:03:58.560 --> 00:03:59.360 +皆さんにはあまり + +00:03:59.360 --> 00:04:02.879 +馴染みがないかもしれません。 + +04:02.879 --> 00:04:04.080 +今からそのインターフェースを + +00:04:04.080 --> 00:04:05.680 +ご紹介します。 + +04:05.680 --> 00:04:07.519 +まずは、エディターですね。 + +04:07.519 --> 00:04:09.439 +エディターは2つの部分から成ります。 + +04:09.439 --> 00:04:10.480 +番号に関連づけられた + +00:04:10.480 --> 00:04:12.319 +現在の分節と、 + +00:04:12.319 --> 00:04:13.519 +もうひとつは上下にあるすべての + +00:04:13.519 --> 00:04:15.840 +分節です。 + +04:15.840 --> 00:04:16.720 +ウィンドウの一番上には + +00:04:16.720 --> 00:04:18.720 +.poファイルにあった最初の3つの分節が + +00:04:18.720 --> 00:04:20.799 +表示されています。 + +04:20.799 --> 00:04:22.880 +ここの最後の4つ目の分節には + +00:04:22.880 --> 00:04:28.720 +ファジーマッチが自動挿入されています。 + +04:28.720 --> 00:04:30.880 +このようなレガシー翻訳は + +04:30.880 --> 00:04:32.720 +「翻訳メモリ」と呼ばれます。 + +04:32.720 --> 00:04:35.280 +OmegaTがこれを自動挿入したのは、 + +00:04:35.280 --> 00:04:37.120 +私がそうするように設定したからです。 + +04:37.120 --> 00:04:38.560 +また、私自身のセキュリティのために、 + +00:04:38.560 --> 00:04:40.639 +翻訳の検証のために + +00:04:40.639 --> 00:04:41.919 +削除しなければならない規定の + +00:04:41.919 --> 00:04:44.880 +[fuzzy] がついています。 + +04:44.880 --> 00:04:47.919 +次の機能は、用語集機能です。 + +04:47.919 --> 00:04:48.479 +今回のプロジェクトには + +00:04:48.479 --> 00:04:50.160 +たくさんの用語集データがあります。 + +00:04:50.160 --> 00:04:52.560 +関連のあるものもあれば、そうでないものもあります。 + +04:52.560 --> 00:04:53.919 +今翻訳している分節では + +00:04:53.919 --> 00:04:55.199 +下線が引かれた項目が + +00:04:55.199 --> 00:04:57.520 +あります。 + +04:57.520 --> 00:04:59.040 +右側のポップアップメニューでは + +00:04:59.040 --> 00:05:02.240 +入力中に用語を入れることができます。 + +05:02.240 --> 00:05:04.639 +これは自動挿入システムのようなもので、 + +00:05:04.639 --> 00:05:07.039 +履歴予測や定型文などと + +00:05:07.039 --> 00:05:14.479 +いったような入力補完に対応しています。 + +05:14.479 --> 00:05:15.440 +右側の部分には、 + +00:05:15.440 --> 00:05:17.120 +.poと.texiのファイルから + +00:05:17.120 --> 00:05:18.240 +直接得られた + +00:05:18.240 --> 00:05:21.440 +参照情報があります。 + +05:21.440 --> 00:05:23.440 +また、パートナーの翻訳者と + +00:05:23.440 --> 00:05:25.759 +共有できるメモもあり、 + +05:25.759 --> 00:05:28.080 +翻訳完了までに + +00:05:28.080 --> 00:05:31.199 +あと143,000分節あることを示す + +00:05:31.199 --> 00:05:35.280 +数字も表示されています。 + +05:35.280 --> 00:05:37.120 +しかし、どうしても + +05:37.120 --> 00:05:40.000 +入力したくない文字列がたくさんあります。 + +05:40.000 --> 00:05:42.160 +例えば、これらの文字列は + +00:05:42.160 --> 00:05:43.840 +典型的な .texi の文字列で、 + +00:05:43.840 --> 00:05:45.039 +翻訳者が入力する + +00:05:45.039 --> 00:05:46.479 +必要はありません。 + +00:05:46.479 --> 00:05:47.360 +これについて + +00:05:47.360 --> 00:05:50.400 +どうにかしなければなりません。 + +05:50.400 --> 00:05:51.600 +そのためには、正規表現を使い + +00:05:51.600 --> 00:05:52.479 +保護された文字列を作成し、 + +00:05:52.479 --> 00:05:54.400 +ソース分節では + +05:54.400 --> 00:05:56.800 +文字列をすぐに視覚化し、 + +00:05:56.800 --> 00:05:59.120 +ターゲット分節で + +05:59.120 --> 00:06:00.479 +半自動的に入力し、 + +00:06:00.479 --> 00:06:01.680 +整合性を + +00:06:01.680 --> 00:06:04.479 +チェックできるようにしましょう。 + +06:04.479 --> 00:06:06.479 +処理したい文字列を定義するのに + +06:06.479 --> 00:06:08.160 +考えた正規表現は + +00:06:08.160 --> 00:06:09.600 +このようなものです。 + +06:09.600 --> 00:06:11.120 +正規表現のプロではないので、 + +00:06:11.120 --> 00:06:13.360 +皆さんからのご指摘もあると思います。 + +00:06:13.360 --> 00:06:14.560 +しかし、この表現は + +00:06:14.560 --> 00:06:15.919 +Orgモードの構文を + +00:06:15.919 --> 00:06:17.919 +まだ含んでいないにもかかわらず + +00:06:17.919 --> 00:06:20.960 +十分な定義になっています。 + +06:20.960 --> 00:06:22.344 +これで、触ってはいけない + +00:06:22.344 --> 00:06:23.440 +.texi 特有のものが + +00:06:23.440 --> 00:06:24.960 +すべてグレーで + +06:24.960 --> 00:06:26.100 +表示されるようになりました。 + +00:06:26.100 --> 00:06:27.680 +実は、お気づきかもしれませんが + +00:06:27.680 --> 00:06:28.479 +少しズルをしました。 + +06:28.479 --> 00:06:30.319 +先ほどの正規表現に「年」と + +00:06:30.319 --> 00:06:32.000 +「Free Software Foundation」の名前を追加しました。 + +00:06:32.000 --> 00:06:34.000 +なぜなら、どんな種類の文字列でも + +00:06:34.000 --> 00:06:35.520 +保護できることを + +00:06:35.520 --> 00:06:38.560 +示したかったからです。 + +06:38.560 --> 00:06:39.520 +これで、 + +00:06:39.520 --> 00:06:41.360 +触れたくない文字列を + +00:06:41.360 --> 00:06:43.440 +可視化することができましたが、 + +06:43.440 --> 00:06:45.440 +それでもすべての文字列を翻訳に + +00:06:45.440 --> 00:06:46.880 +入力しなければなりません。 + +06:46.880 --> 00:06:48.319 +そのために、先ほどの用語集で使った + +00:06:48.319 --> 00:06:50.400 +ポップアップメニューがあれば、 + +00:06:50.400 --> 00:06:51.520 +編集メニューの中にも + +00:06:51.520 --> 00:06:52.400 +不足しているタグを + +00:06:52.400 --> 00:06:53.919 +簡単に挿入するための + +00:06:53.919 --> 00:06:57.199 +ショートカットも用意されています。 + +06:57.199 --> 00:06:58.800 +最後に忘れてはならないのが + +00:06:58.800 --> 00:07:00.800 +入力の検証が可能なことです。 + +00:07:00.800 --> 00:07:02.479 +ここで、OmegaTは7つの保護された文字列を + +00:07:02.479 --> 00:07:05.759 +見逃したことをきちんと見せてくれます。 + +07:05.759 --> 00:07:07.599 +私は1998年だけを入力しましたが、 + +00:07:07.599 --> 00:07:09.280 +5つの異なる年があり、 + +00:07:09.280 --> 00:07:10.479 +著作権の文字列と + +00:07:10.479 --> 00:07:14.240 +FSF名の文字列がありました。 + +07:14.240 --> 00:07:15.970 +この極めてネイティブに近い + +00:07:15.970 --> 00:07:16.960 +Texinfo対応により、 + +00:07:16.960 --> 00:07:18.880 +入力するものがずっと少なくなり、 + +07:18.880 --> 00:07:19.919 +エラーの可能性も + +00:07:19.919 --> 00:07:21.120 +ずっと低くなりました。 + +00:07:21.120 --> 00:07:25.199 +とはいえ、まだまだ大変な作業であることは間違いありません。 + +07:25.199 --> 00:07:26.319 +今、私たちが望んでいるのは、 + +00:07:26.319 --> 00:07:27.840 +仲間の翻訳者と一緒に仕事をすることです。 + +00:07:27.840 --> 00:07:28.720 +ここでわからないければならないのは、 + +00:07:28.720 --> 00:07:29.840 +OmegaTが実際に隠れ + +00:07:29.840 --> 00:07:32.080 +svn/gitクライアントであり、 + +00:07:32.080 --> 00:07:34.240 +チームプロジェクトがsvn/gitプラットフォームで + +07:34.240 --> 00:07:36.319 +ホスト可能であることです。 + +07:36.319 --> 00:07:37.199 +翻訳者は、VCSについて + +00:07:37.199 --> 00:07:38.880 +何も知る必要はありません。 + +00:07:38.880 --> 00:07:40.720 +ただ、アクセス認証を必要とし、 + +00:07:40.720 --> 00:07:42.400 +OmegaTは翻訳者の代わりにコミットします。 + +00:07:42.400 --> 00:07:44.080 +このようにして、 + +00:07:44.080 --> 00:07:45.759 +醜くて不十分なウェブベースの + +00:07:45.759 --> 00:07:47.199 +翻訳システムを使う必要なく、 + +00:07:47.199 --> 00:07:48.800 +強力なオフラインのプロフェッショナルツールを + +00:07:48.800 --> 00:07:51.440 +使うことができるのです。 + +07:51.440 --> 00:07:52.479 +この翻訳プロジェクトを + +00:07:52.479 --> 00:07:54.160 +ホストしているプラットフォームを見ると、 + +00:07:54.160 --> 00:07:55.919 +このように見えます。 + +07:55.919 --> 00:07:57.199 +最後の更新は、このスライドを作成した + +00:07:57.199 --> 00:07:58.639 +20日と30秒前のもので、 + +00:07:58.639 --> 00:08:00.720 +同じファイルセットで + +08:00.720 --> 00:08:02.479 +一緒に作業したパートナーが + +00:08:02.479 --> 00:08:04.639 +いたことがわかります。 + +08:04.639 --> 00:08:05.520 +私たちは翻訳をプラットフォームに + +00:08:05.520 --> 00:08:06.879 +コミットしたように見えますが、 + +00:08:06.879 --> 00:08:07.680 +それは私たちでなく、 + +00:08:07.680 --> 00:08:11.039 +OmegaTでした。 + +00:08:11.039 --> 00:08:13.599 +すべての面倒臭い仕事はOmegaTが行います。 + +08:13.599 --> 00:08:15.039 +定期的にサーバーに保存し、 + +00:08:15.039 --> 00:08:16.879 +サーバーから同期します。 + +08:16.879 --> 00:08:18.720 +翻訳者は、仲間の翻訳した内容を + +08:18.720 --> 00:08:20.479 +定期的に得られます。 + +00:08:20.479 --> 00:08:21.680 +そして必要に応じて + +00:08:21.680 --> 00:08:23.360 +OmegaTは、簡単な + +00:08:23.360 --> 00:08:25.440 +コンフリクト解決のためのウインドーを表示します。 + +08:25.440 --> 00:08:27.039 +翻訳者は、svnやgitを使って + +08:27.039 --> 00:08:29.360 +何かをする必要はありません。 + +08:29.360 --> 00:08:30.800 +そして今、私たちは、 + +00:08:30.800 --> 00:08:31.599 +マニュアルが翻訳され、 + +00:08:31.599 --> 00:08:33.120 +最終的にはEmacsに含まれるという + +00:08:33.120 --> 00:08:34.159 +そう遠くはない未来を + +00:08:34.159 --> 00:08:35.279 +思い描くことができますが、 + +00:08:35.279 --> 00:08:36.080 +それはこのプレゼンテーションとは + +00:08:36.080 --> 00:08:39.760 +別の話になります。 + +08:39.760 --> 00:08:42.080 +というわけで、セッションの終わりになりました。 + +08:42.080 --> 00:08:44.240 +ご参加いただいた皆様、本当にありがとうございました。 + +08:44.240 --> 00:08:45.600 +たくさんのトピックについて + +00:08:45.600 --> 00:08:46.880 +触れないと約束しましたが、 + +00:08:46.880 --> 00:08:50.000 +約束は守れたのではないでしょうか。 + +08:50.000 --> 00:08:51.600 +Q&Aもありますが、 + +00:08:51.600 --> 00:08:52.517 +実は、先週の土曜日に + +00:08:52.517 --> 00:08:53.600 +Redditでこのセッションに関するスレッドも + +00:08:53.600 --> 00:08:55.519 +立ち上げました。 + +08:55.519 --> 00:08:57.279 +emacs-helpやemacs-develのメーリングリストでも + +00:08:57.279 --> 00:08:59.200 +私の名前を見つけることができますので、 + +00:08:59.200 --> 00:09:00.480 +ご質問やご意見がありましたら、 + +00:09:00.480 --> 00:09:02.080 +遠慮なくお寄せください。 + +09:02.080 --> 09:06.760 +それでは、またお会いしましょう。 |