all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Jean-Christophe Helary <fusion@mx6.tiki.ne.jp>
To: emacs-devel@gnu.org
Subject: Re: A system for localizing documentation strings
Date: Fri, 27 Jul 2007 01:23:09 +0900	[thread overview]
Message-ID: <7705CDFD-B824-4F1D-B472-94B3A594FE8F@mx6.tiki.ne.jp> (raw)
In-Reply-To: <46A8C5CC.4030208@gnu.org>


On 27 juil. 07, at 01:03, Jason Rumney wrote:

> Jean-Christophe Helary wrote:
>> The fact that the code (.el) will only contain the English string
>> defeats one of the purposes of the localization.
>>
>> If I read code and I need to check a separate file all the time to  
>> see
>> what the French says then I loose a huge amount of time.
>
> Conversely, if I am reading the code for a short function, and cannot
> see the documentation at the same time as the code because there  
> are 15
> translations in between causing the small function definition to  
> take up
> more than one screen, then I lose a huge amount of time.
>
> If you are primarily interested in the documention, you will be using
> describe-function anyway. If you are primarily interested in the code,
> you don't want an excessive amount of inline documentation getting in
> the way.

Very good, so why not propose a device that allows emacs to select a  
language based on the user's preferences for the code display too ?

If the system is properly designed, there are absolutely no reason  
not to be able to propose dynamic updating of the code itself based  
on linguistic preferences.

We need to make emacs easier to use not primarily for one language  
and secondarily for other languages, but for all languages in a smart  
emacs way.

>> I think (but I may be wrong) that you consider anything that is not
>> English as "translations" and English as a gold standard.
>
> That is the way it must be for any globally used software. Perhaps  
> as a
> Frenchman living in Japan you feel that is unfair, but the fact is  
> that
> English is the most widely understood language there is.

I don't care about what is fair or unfair. I am talking about  
technology. Technology can't afford to have linguistic preferences.  
And you can't argue that "defun" is English. It is not.

Globally used software is localized. And there are no "default"  
English strings in the Spanish localization of Word... But that  
localized version serves also as a based for further documentation  
authoring that does _not_ use the original English.

>> It is important to _not_ think that way to be able to offer the most
>> flexible framework possible.
>
> I think flexibility in this regard is important for translators,  
> but not
> for end users. So rather than a primative system where translators  
> look
> at the code, and write their translations from there, we should  
> come up
> with either a special mode to make it easy for translators to enter
> translations while looking at the documentation strings in a  
> particular
> language (which need not be English), or a set of export and import
> functions for interacting with existing tools for translation.

Flexibility is important for coders (who need the documentation to  
code) and for translators.
Coders and translators have equivalent functions in the case at hand:  
they write documentation that the user will access.
The system should put the coders and the translators on an equivalent  
level, hence the system should be language agnostic.
Users will indirectly benefit from that flexibility.

Translators don't have to look at the code. There can be a special  
mode that parses the code according to the translator's preference  
and handles the translated strings for final inclusion in the code.

I wrote earlier:

> (transfun function-name
> 	source-language
> 	target-language
> 	reference-function-name ; should be a list
> 	reference-file ; should be a list)
>
> The function-name declares which function has to be translated
> The source-language declares from which language string the source  
> should be displayed
> The target-language declares to which language the translator is  
> working
> the reference-function-name declares which functions should be  
> taken as reference for the current translation.
> the reference-file declares which files should be taken as  
> reference (ideally, PO compendia, TMX files, CSV files etc)
>
> transfun would be a whole different business since it would  
> actually provide a real dynamic fuzzy matching engine between the  
> source-language strings and the source reference strings. _NOT_  
> something like the "fuzzy" thing gettext provides.
>
> In the case of Template 1 (a function that has already been  
> translated to a number of languages), transfun would just add a  
> line to the documentation function.
>
> In the case of Template 2 (a function that exists in only one  
> language), transfun would also transform Template 2 into Template 1  
> to add the documentation at the proper location. If the doclang  
> function is not documented, transfun asks what argument should  
> doclang have and proceeds.
>
> Now, it would of course be possible to have translation tools  
> support the defun template so that they output the target strings  
> to the correct position.

I see "transfun" (or whatever it would be called) as a real  
translation mode that provides translators with all the modern  
concepts existing in the localization/translation professional tools.  
Not a half-baked "read the code and type the translation" thing.


Jean-Christophe Helary

  reply	other threads:[~2007-07-26 16:23 UTC|newest]

Thread overview: 120+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-26  1:05 A system for localizing documentation strings Jean-Christophe Helary
2007-07-26  3:18 ` Eli Zaretskii
2007-07-26  3:29 ` Fwd: " Jean-Christophe Helary
2007-07-26 11:54   ` Kenichi Handa
2007-07-26 13:28     ` Jean-Christophe Helary
2007-07-27  0:30       ` Kenichi Handa
2007-07-27  1:18         ` Jean-Christophe Helary
2007-07-26 12:13   ` Fwd: " Eli Zaretskii
2007-07-26 13:51     ` Jean-Christophe Helary
2007-07-26 14:50       ` Jason Rumney
2007-07-26 15:27         ` Jean-Christophe Helary
2007-07-26 15:41           ` Jason Rumney
2007-07-26 15:49             ` Jean-Christophe Helary
2007-07-26 16:15               ` Jason Rumney
2007-07-26 16:25                 ` Jean-Christophe Helary
2007-07-26 16:28                 ` Jean-Christophe Helary
2007-07-26 16:44                   ` Jason Rumney
2007-07-27  5:04                     ` Richard Stallman
2007-07-27  7:22                       ` Jean-Christophe Helary
2007-07-27  7:49                         ` David Kastrup
2007-07-27  7:52                           ` David Kastrup
2007-07-27 11:16                         ` Eli Zaretskii
2007-07-27 12:07                           ` Kenichi Handa
2007-07-27 12:26                             ` David Kastrup
2007-07-27 12:53                               ` Kenichi Handa
2007-07-27 14:43                             ` Jean-Christophe Helary
2007-07-28 14:11                               ` Richard Stallman
2007-07-27 16:03                             ` Henrik Enberg
2007-07-27 14:09                           ` Werner LEMBERG
2007-07-27 18:47                             ` Eli Zaretskii
2007-07-27 11:37                         ` David Kastrup
2007-07-28 14:11                         ` Richard Stallman
2007-07-26 15:10       ` Eli Zaretskii
2007-07-26 15:42         ` Jean-Christophe Helary
2007-07-26 16:03           ` Jason Rumney
2007-07-26 16:23             ` Jean-Christophe Helary [this message]
2007-07-27  5:04               ` Richard Stallman
2007-07-26 19:34           ` Eli Zaretskii
2007-07-26 19:54             ` David Kastrup
2007-07-26 15:36     ` Fwd: " Andreas Schwab
2007-07-26 19:09       ` Eli Zaretskii
     [not found]         ` <871weuk228.fsf@uwakimon.sk.tsukuba.ac.jp>
2007-07-27  9:53           ` Andreas Schwab
2007-07-27 11:14             ` Eli Zaretskii
2007-07-27 11:43               ` Andreas Schwab
2007-07-27 11:59                 ` Eli Zaretskii
2007-07-27 12:17                   ` Andreas Schwab
2007-07-27 18:36                     ` Eli Zaretskii
2007-07-27 14:56                   ` Jan Djärv
2007-07-27 15:18                     ` Jason Rumney
2007-07-27 15:28                       ` Jan Djärv
2007-07-27 15:59                         ` Jean-Christophe Helary
2007-07-27 16:09                         ` Fwd: " Jason Rumney
2007-07-27 17:53                           ` Jan Djärv
2007-07-28  3:13                           ` Jean-Christophe Helary
2007-07-27 16:14                         ` Fwd: " David Kastrup
2007-07-27 16:55                           ` Jason Rumney
2007-07-27 12:27             ` Kenichi Handa
2007-07-27 15:00             ` Jan Djärv
2007-07-27 11:12           ` Eli Zaretskii
2007-07-27 11:45             ` Andreas Schwab
2007-07-27 12:18             ` Stephen J. Turnbull
2007-07-27 12:08               ` Eli Zaretskii
2007-07-27 16:24         ` Richard Stallman
2007-07-27  2:16   ` Summary (Re: A system for localizing documentation strings) Jean-Christophe Helary
2007-07-27  5:44     ` Stefan Monnier
2007-07-27  7:24       ` David Reitter
2007-07-27  7:45         ` Stefan Monnier
2007-07-27  8:03     ` Jan Djärv
2007-07-27  8:18       ` Jason Rumney
2007-07-27  9:04         ` Jan Djärv
2007-07-27  9:22           ` David Kastrup
2007-07-27  9:39             ` Jan Djärv
2007-07-27  9:46               ` David Kastrup
2007-07-27 11:49               ` Eli Zaretskii
2007-07-27 15:11                 ` Jan Djärv
2007-07-27 11:20           ` Eli Zaretskii
2007-07-27 14:52             ` Jan Djärv
2007-07-27 12:13           ` Jean-Christophe Helary
2007-07-27 15:16             ` Jan Djärv
2007-07-27 15:55               ` Jean-Christophe Helary
2007-07-27  8:21       ` David Kastrup
2007-07-27  9:08         ` Jan Djärv
2007-07-27  9:33           ` David Kastrup
2007-07-27  9:38             ` Jan Djärv
2007-07-27 11:05           ` Jean-Christophe Helary
2007-07-27 11:19             ` Lennart Borgman (gmail)
2007-07-27 11:23           ` Eli Zaretskii
2007-07-28 14:11         ` Richard Stallman
2007-07-27 11:08       ` Andreas Schwab
2007-07-27 11:15       ` Jean-Christophe Helary
2007-07-27 11:54         ` Eli Zaretskii
2007-07-27 11:59         ` Jason Rumney
2007-07-27 13:13           ` Jean-Christophe Helary
2007-07-27 13:42             ` David Kastrup
2007-07-27 14:12               ` Jean-Christophe Helary
2007-07-28 14:11               ` Richard Stallman
2007-07-28 22:49                 ` David Kastrup
2007-07-27 15:07         ` Jan Djärv
2007-07-27 15:41           ` Jean-Christophe Helary
2007-07-27 16:11             ` Andreas Schwab
2007-07-28  2:57               ` Jean-Christophe Helary
2007-07-28 14:11       ` Richard Stallman
2007-07-27 16:24     ` Richard Stallman
2007-07-28  2:53       ` Jean-Christophe Helary
2007-07-29  2:22         ` Richard Stallman
2007-07-29  4:46           ` Jean-Christophe Helary
2007-07-29 16:55             ` M Jared Finder
2007-07-30  0:57               ` Jean-Christophe Helary
2007-07-30 16:43             ` Richard Stallman
2007-07-30 17:04               ` Jean-Christophe Helary
2007-07-31  3:38                 ` Richard Stallman
2007-07-31  4:16                   ` Jean-Christophe Helary
2007-07-31  6:05                     ` Jan Djärv
2007-08-02  0:32                       ` Jean-Christophe Helary
2007-08-02 23:43                         ` Richard Stallman
2007-08-01 18:11                     ` Davis Herring
2007-08-02  0:25                       ` Jean-Christophe Helary
2007-08-02  5:47                         ` Miles Bader
2007-07-27  5:04   ` Fwd: A system for localizing documentation strings Richard Stallman
2007-07-27  8:29     ` Jean-Christophe Helary

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7705CDFD-B824-4F1D-B472-94B3A594FE8F@mx6.tiki.ne.jp \
    --to=fusion@mx6.tiki.ne.jp \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.