[JM:00533] Re: bash.1 の翻訳で意見が分かれています

Back to archive index

Masakazu Takahashi emasa****@gmail*****
2011年 12月 27日 (火) 22:17:18 JST


こんにちは。

2011/12/24 OOTANI TAKASHI <tksot****@mail*****>:
> 大谷と申します。
>
> From: 長南洋一 <cyoic****@maple*****>
> Subject: [JM:00526] bash.1 の翻訳で意見が分かれています
> Date: Sat, 10 Dec 2011 20:35:01 +0900 (JST)
>> 要するに、"Bash uses the value of the variable formed from the rest of
>> parameter as the name of the variable" の as の付き方の解釈が、わたしと
>> 高橋さんで違うわけです。
>
> !を除いた残りが変数(名)であることは、the variable formed from the rest of
> parameter で示されているので、
> Bash uses the value (of the variable formed 〜) as the name (of the variable)
> という構造だと思います。
> で、セミコロンの直後の this variable は セミコロン直前の the variable のこと。
> ということは、長南さんと同じと言うことかな?
>
> 私が訳すなら、
>  parameter の最初の文字が感嘆符ならば、変数間接展開が行われます。
>  bash は残りの parameter からなる変数の値を変数の名前と見なします。
>  そしてそこで得られた名前の変数を展開した値を、置換処理の続きで使います。
>  これが間接展開です。
>
> "そこで得られた名前の"は原文に無い追加です(2つの「変数」の区別のため)。
> rather than 節はくどいので省略。
>
> the rest of the substitutionは、% や # や / 等による修正の事でしょう。
>
> 高橋さんの解釈だと、the rest of the substitution は、AAA を展開した続き
> ですよね。そうだとすると、
> $ AAA=BBB/z/x ; BBB=zzz ; echo ${!AAA}
> xzz
> になって欲しいですね。ver4は手元に無いのでver3で試すとなりません。
>
> --
> OOTANI TAKASHI <tksot****@mail*****>

みなさん、ご意見ありがとうございます。
中間まとめです。

現在、3 つの訳案が上がってきていますね。

長南さん訳(1):
    もし parameter の最初の文字が感嘆符 (!) ならば、変数間接参照が
    行われます。bash は parameter の感嘆符を除いた部分からなる変数の
    値を変数名として使用し、さらにその変数を展開して、得られた値を
    置換の残りの過程で使用するのです。parameter そのものの値は、
    置換に使用しません。これは、いわゆる間接展開というものです。

長南さん訳(2):
    parameter の最初の文字が感嘆符 (!) ならば、変数間接参照が行われます。
    この場合、bash は parameter そのものの値を置換に使用しません。
    bash はまず、parameter の感嘆符を除いた部分からなる変数を展開します。
    そして、得られた値を変数名として、それをさらに展開し、その値を
    置換の残りの過程で使用するのです。...

立花さん訳:
    parameter の最初の文字が感嘆符 (!) ならば、変数間接参照が
    行われます。
    この場合、bash は parameter そのものの値
    (訳注:parameter の感嘆符を除いた部分からなる変数の値と思われる)
    を置換に使用しません。
    bash はまず、parameter の感嘆符を除いた部分からなる変数を
    展開します。
    そして、得られた値を変数名として、それをさらに展開し、その値を
    置換の残りの過程で使用するのです。
    これが間接展開 (indirect expansion) と呼ばれるものです。

大谷さん:
    parameter の最初の文字が感嘆符ならば、変数間接展開が行われます。
    bash は残りの parameter からなる変数の値を変数の名前と見なします。
    そしてそこで得られた名前の変数を展開した値を、置換処理の続きで使います。
    これが間接展開です。


そして、それぞれの意見は以下のとおりですね。

・長南さんは立花さんの訳に合意していない([JM:00528])
・立花さんは長南さんの訳をベースとしつつ合意していない([JM:00529])
・長南さんは大谷さんの訳に合意していない([JM:00532])


私の感想では、日本語の説明文としては大谷さんの訳文が素直で
意味を取りやすいように思いました。が、まだ議論が続いている
ようですので、引き続きそれぞれのご意見を拝見します。

-- 
Masakazu Takahashi (emasaka)




linuxjm-discuss メーリングリストの案内
Back to archive index