From: Paul L. <pa...@sq...> - 2006-09-10 18:14:28
|
On 9/10/06, Alexandros Vellis <av...@no...> wrote: > On Sat, 2006-09-09 at 14:39 -0500, Steve Brown wrote: > > > The i18n is a kicker, and I would *love* to have a good solution for > > this. If you pull it back into the core, you don't reduce the amount > > of PHP code in the templates. In fact, I would say it might be worse > > becasue rather than saying <?php echo _("Hello world"); ?> an author > > would have to say <?php echo $hello_world_str; ?>, which isn't nearly > > as clear. > > I agree. In fact, I personally like it as it is now, and I find any > other solution would be worse than the current situation. I mean, how > more terse than <?= _("Hello world") ?> can one get? Terse? So then are you agreeing or disagreeing? Please note that the two main reasons that I can think of that make this necessary are that we have supposedly designed the template engine in a plug-and-play fashion (I still plan to review said code) such that a NON-PHP-ENABLED template engine can be used. So translations would simply not work at all in such a scenario. Futhermore, as Fredrick more elequantly explained earlier, putting translations in the templates makes it much much harder to keep them under control and will very likely end up with hundreds of different and ultimately very similar strings, such that translators just will not want to translate so much junk. > Plus, it actually allows template designers^Wprogrammers with the option > to do stuff like > > <?= ucfirst(_("Hello world") ); ?> They can do that anyway. > > It would be great if the i18n could be done _after_ the HTML is > > generated. For example, the template object grabs all the output, > > then passes it through some kind of filter object that replaces any > > available strings with translations. I would guess that would add a > > tremendous amont of overhead though. And it doesn't address the RTL > > languages. At least not easily. ;-) > > In this scenario, perhaps the existing templates could be "compiled" > *once* at the start, into PHP with i18n'ed code. Like Smarty does! > > (That said, I don't like this particularly). I dunno, I think it's an interesting idea.... > BTW, may I say how much I like 1.5.1CVS. Very nice stuff! :) 1.5.2. :-) I made the same mistake recently. Cheers, Paul |