emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Internationalize Emacs's messages (swahili)


From: Daniel Brooks
Subject: Re: Internationalize Emacs's messages (swahili)
Date: Sat, 26 Dec 2020 02:48:36 -0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

Richard Stallman <rms@gnu.org> writes:

>   > My personal opinion is that gettext is too limited. It works for simple
>   > things, but provides no help at all for complex things.
>
> That is true.
>
>   > I think that the most productive way to think about translation is that
>   > each coherent message that we present to a user (whether it's via the
>   > message function or not) should explicitly be the result of calling a
>   > function written by the translator.
>
> That could be acceptable if it is designed such that the functions
> are so limited that there are no insecurities.

That's a good point. The Fluent "language" does only string
substitution, switch statements that choose amongst a set of strings,
and calling functions pre-defined by the program being translated. That
makes it easy to compile into safe code, or to produce a database that
can interpreted quickly.

> For GNU to use it, we would want it to fit into the framework
> of gettext.  We could have a new function that programs should call,
> which would look for a function encoded in the translation string.

I haven't considered that possibility, but my first impression is that
mashing them together might not be a good idea.

> Would you please email me the most important parts of the description
> of Project Fluent?  So I don't have to hunt for them?

Sure. The blurb on the FLuent website says this:

* Asymmetric Localization
  Natural-sounding translations with genders[1] and grammatical cases
  only when necessary. Expressiveness is not limited by the grammar of
  the source language.

* Progressive Enhancement
  Translations are isolated; locale-specific logic doesn't leak to other
  locales. Authors can iteratively improve translations without impact
  on other languages.

* Fully-Featured
  Date, time, and number formatting. Plural categories. Bidirectionality
  support. Custom formatters. Easy-to-read syntax. Runtime translation
  and re-translation. Robust error handling.

* Open Source
  Fluent Syntax 1.0 was released in April 2019. Client- and server-side
  implementations in JS, Python, and Rust. React bindings. Licensed
  under the Apache 2.0 License[2].

[1]: This includes both the genders of people and the genders of random
nouns in the translation. It also handles other sources of variation
such as plurals, declensions, inflections, and so on.

[2]: Aka, it's Free Software too.

db48x



reply via email to

[Prev in Thread] Current Thread [Next in Thread]