From: Austin Ziegler Date: 2004-06-03T05:59:47+09:00 Subject: Re: What is the equivalent of Python's "%s" % "MyString"? Hal Fulton [mailto:hal9000@hypermetrics.com]: > Austin: >> GGaramuno: >>> Nobu: >>>> Sam Sungshik Kong wrote in [ruby-talk:102028]: >>>>> s = "My name is %(name)s and my age is %(age)d." % {"name": >>>>> "Sam", "age": 34} >>>>> >>>>> I know that ruby has "#{name}" expression. But that requires a >>>>> variable named "name" in advance. I want to bind the format >>>>> string and data later. >>>> I proposed that feature once in [ruby-dev:16351], though >>>> rejected, but still I think that it would be useful for I18N. >>>> Is it worth for RCR? >>> Do you have an example on how would you use this? I ask because I >>> would also vote strongly against it. >> For I18N, a facility like this is essential, as different languages >> may require words in different orders. > [snip] > > Do you consider it essential to have the items named? Or is it > sufficient to number them and know the original ordering (also a > common scheme)? I believe it is more meaningful to have the items named. I just learned about the numbered scheme today, and while it's useful to a point, it doesn't necessarily help the translators, where meaningfully named tags will be very useful to translators. > OT: Forgive my ignorance, but can you/someone summarize the > differences in I18N, L10N, and M17N? I18N: the process of making code easy to localize. L10N: the process of localizing the code. M17N: both of the above? (I don't know.) Ruwiki is (mostly) I18Ned[1], and it has been L10Ned to two languages so far (German and Spanish). I think that I have had offers of L10N for a variant of Chinese and Russian, but that information is on a different computer. Most of Ruwiki's I18N/L10N effort is in the templates, but the messages are necessary for exception handling, etc. -austin [1] There are a few bits in the RDoc templating library that aren't, and there will be in the new diff library that aren't, but I can't easily dig into those -- I might be able to catch them, though, and deal with them properly. -- austin ziegler * austin.ziegler@evault.com