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

Re: Reordering and internationalization

This page is part of the web mail archives of SRFI 28 from before July 7th, 2015. The new archives for SRFI 28 contain all messages, not just those from before July 7th, 2015.

Please see the related work on SRFI-29, which addresses this very issue
by extending Basic Format Strings with the notion you describe.


On Wed, Jun 05, 2002 at 10:44:32AM -0700, bear wrote:
> When modifying code to work for users who use another language,
> it is frequently necessary to reorder the "data" parts of the
> output to match the syntax of the language of output.
> For example, if I am talking about some chunk of data as a
> thing being acted upon (linguistically, a direct object) by
> a procedure (linguistically, a verb) in my debugger error
> messages, then the verb should come before the direct object
> in English, but the verb should come after the direct object
> in German.  Since both of these (data and function name) are
> likely to be parameters of the format statement, being unable
> to reorder them by just changing the format string causes a
> problem.
> When finished, I'd like to be able to write something like:
> (let ((language 'en ))
>   (display
>      (format (strings "sorry, can't ~1a the object ~2a" language)
> 	errproc
> 	errdata)))
> Because this would allow all the localization can be done
> by providing additional format strings for different languages,
> without the need to rearrange code.  Specifically, this would
> allow the same code to operate in multiple languages as long
> as a binding for the variable 'language' were in scope and
> the strings function had lookup tables for format strings in
> the specified language.  (I'm assuming use of the same language
> specifiers as used in the HTTP protocol).
> 			Bear
> (considering writing that SRFI for the (strings) function...)


Attachment: pgp1zW4D5O8Cq.pgp
Description: PGP signature