SATOH Fumiyasu
fumiy****@osste*****
2014年 1月 13日 (月) 13:23:14 JST
さとうふみやす @ OSSTech です。 At Mon, 13 Jan 2014 12:38:32 +0900, Masakazu Takahashi wrote: > bash の 4.3(現在 rc1)では、変数に nameref 属性を付けられるようになり > ます。要は変数名による間接参照で、元は ksh にある機能だそうです。 ほう。いいですね。 > この“nameref”という用語の定訳が ksh 方面にありましたら、教えてください。 http://oreilly.com/catalog/korn2/chapter/ch04.html#t4 によると「nameref」は「Indirect Variable References」という 呼び方があるようです。 余談ですが、この文章中に ksh では予め「alias nameref='typeset -n'」 されているようなことが書かれていますが、これは環境依存で、 手元の Debian、AIX では定義されていませんでした。 > ぐぐったところ、AIX のマニュアルでは“名前参照”と訳されているようですが、 > ほかの商用 UNIX のベンダーなどではどうでしょうか。 Solaris 11 の日本語マニュアルでは「nameref」のままですね。 「nameref は、別の変数を参照する変数です。nameref は、 typeset の -n 属性を使用して作成します。」といった文言。 「名前参照」という言葉も一箇所だけ出てきます。引用します: ${!vname} vname で参照される変数の名前に展開されます。vname が 名前参照である場合を除いて、これは vname です。 英文は以下: ${!vname} Expands to the name of the variable referred to by vname. This is vname except when vname is a name reference. 「nameref」=「name reference」でもいいような感じがします。 個人的には、独特な用語は訳さずにそのままにする (「nameref」のまま) か、 翻訳する場合は初出の箇所で「名前参照 (nameref)」のようにしてもらえると 嬉しいです。(翻訳を読んでるときに英語の原文を参照したくなったときに便利) -- -- Name: SATOH Fumiyasu @ OSS Technology Corp. (fumiyas @ osstech co jp) -- Business Home: http://www.OSSTech.co.jp/ -- GitHub Home: https://GitHub.com/fumiyas/ -- PGP Fingerprint: BBE1 A1C9 525A 292E 6729 CDEC ADC2 9DCA 5E1C CBCA