fml8 では、メッセージの多国語化のために、 reply_message_nl() [1] メソッドを使い、
$curproc->reply_message_nl('error.already_member', 'already member', { _arg_address => $address });のような呼び出し方をすることにしています。
この関数は /usr/local/share/fml/バージョン/message/言語名/error/already_member というテンプレートを用いてメッセージを構築します。
メッセージ中の $_arg_変数名、例えば、
$_arg_addressは reply_message_nl の引数のハッシュリファレンスとして与えられた値へ展 開されます。上の例でいえば、メッセージテンプレート中の $_arg_address が引数中の _arg_address の値で展開されます。
また config.cf 中で定義されている変数も同様に展開可能です。 例えばテンプレート中の $ml_name はML名に展開されるようになっています。 ちなみに、渡す引数に $_arg_ などという prefix をつけているのは config.cf の変数群とぶつからないようにするためです。
[1] | FML::Process::Kernel を参照 |
author's homepage is www.fml.org/home/fukachan/.
Also, visit nuinui's world :) at www.nuinui.net.
For questions about FML, e-mail <fml-bugs@fml.org>.