先日の勉強会議事録の「Railsの国際化セッション」[1]について、GetTextのむとうさんから御意見[2]を頂いた。
えーと、早く言えばむとうさんのおっしゃる通り。
文言だけ翻訳してもらう、というスタイル……多くのGUIアプリはこれで十分なはずです[2]
テンプレートの差し替えは「分離した各テンプレート間で修正を同期する問題」[1]、「本当に骨の折れる作業」[2]が発生するので、しなくても済むならやめましょう。ロケール別のテンプレートはDRYじゃない。DRYじゃないものを同期するのは厄介。DRYでいきましょう。
セッションでも議事録でも「修正を同期する問題」と一言述べたただけで、ちょっとデメリットの説明が足りなかったかなと思うので、改めて強調する次第。
それでも、ここまで言っても、どうしてもテンプレートの差し替えをしたいケースがあるかもしれない。というか、うちの会社がそうだ。でも、むとうさんに言われてみて落ち着いて考えてみると次のような背景があった。
うーみゅ。とても一般化はできないね。どうもこの辺に無自覚で、デメリットの見積もりが甘かったかも。
だから、選択肢を増やす意味で
次のRuby-GetText-Packageではこの機能を導入しちゃおうかしら。ライブラリとしてはどちらの機能も提供する、というのはアリだよね。[2]
には賛成するものの、一般論としては私もテンプレート差し替えはお薦めしない。あとはケースバイケースの判断ということで。
なるほど。実際にそういった開発をされているんですね。
企業での開発なら今後もそういう開発(言語によってHTML自体を変更する)可能性は増えるでしょうね。
Yuguiさんのvendor/localize_templates/init.rb、ちょうだいいたしますm(__)m。