[JM:00326] Re: [POST:DP] gnumaniak sdiff.1

Back to archive index

長南洋一 cyoic****@maple*****
2011年 8月 13日 (土) 09:37:59 JST


長南です。

これもよい機会ですので、重箱の隅つつきをやっておきます。
必要ないかもしれないなあ、とも思うのですけれど。

この翻訳もよくできています。ただ、わたしにはいまいち納得できない
ところがいくつかあるので、それを指摘しておきます。

> .SH 説明
> .\"O .B sdiff
> .\"O merges two files and interactively outputs the
> .\"O results, to
> .\"O .I OUTFILE
> .\"O if \fB\-o\fR is specified, or producing a side-by-side difference if it's
> .\"O not.
> .B sdiff
> は 2 つのファイルを対話的にマージする。
> .B \-o
> で指定されていれば結果は
> .I OUTFILE
> に出力される。それ以外の場合は side-by-side 形式で違いを生成する。

この訳文はちょっとつじつまが合わない気がします。だって、「対話的に
マージする」のは、-o が指定されているときだけでしょう。
また、「side-by-side 形式で違いを生成する」のは、それ以外の場合
(つまり、-o で出力先が指定されていない場合) だけではありません。

もっとも、訳文がこうなった理由は、原文がかなりこんがらかって
いるからだと思います。たとえば、interactively が merges にではなく、
outputs the results に付いているので、意味が取りにくいとか、
producing がどこにつながっているのかわからないとか。 

できるだけ原文にそって訳すと、こうなるでしょうか。

  sdiff は 2 つのファイルをマージする。-o が指定されている場合は、
  対話的にマージした結果を OUTFILE に出力する。それ以外の場合は、
  side-by-side 形式で相違を端末に表示するだけである。

文句を付けておいて何ですが、現在の訳文でほとんど問題がないと
いうことになります (いろいろ考えて、工夫なさった結果だとわかりました)。
ただし、「-o で指定されて」は「-o が指定されて」の方がよいと思います。
それから、一番最後の「違いを生成する」は、「違いを生成するだけである」
と補足した方がよさそうです。

なお、producing は「生成する」とも取れますが、「提示する、表示する」
と解することもできます。どちらでもよいでしょう。

> .SH マージ
> .\"O Groups of common lines, with a blank gutter, are copied from the
> .\"O first file to the output.  After each group of differing lines, \fBsdiff\fP
> .\"O prompts with 
> .\"O .RB ` % '
> .\"O and pauses, waiting for one of the following commands.
> 共通行のブロック (と空白の溝) は、
> 1 番目のファイルから出力にコピーされる。
> 異なっている行ブロックのあとには、
> .B sdiff
>> .RB ` % '
> でプロンプトを出して一時停止し、
> 以下のコマンドのどれか 1 つが入力されるのを待つ。

「空白の溝」というのは、何なんでしょうか。印刷関係の術語では
左右のページの間にある空白 (つまり折り目になる部分の余白) を
gutter (のど) というようですが、そう取ってもピンときませんし……、
何なんでしょう。 

「異なっている行ブロックのあとには」も、何を言っているのか、よく
わかりません。「差異のある行のブロックのあとには」だと、すこしは
わかりやすくなるでしょうか。

Group を「グループ」ではなく、「ブロック」と訳したのが、問題なのかも
しれません。でも、一理あるとも思います。

「sdiff は `%' でプロンプトを出して一時停止し」も、ちょっと舌足らずな
気がします。「'%' プロンプトを出して、'%' をプロンプトとして出して」
でしょうか。

こういう訳し方もあると思います。

  差異のある行のグループに出会うと、sdiff はそのつど '%' 記号を
  プロンプトとして出して停止し、以下のコマンドのどれか 1 つが
  入力されるのを待つ。

> .\"O \fBsdiff\fR was successful, no differences found.
> .B sdiff
> は成功し、変更は存在しなかった。
> .TP
> .B 1
> .\"O Some differences were found.
> 変更が見付かった。

differences は「変更」というより、「差異」ではないでしょうか。
つまり、時間を意識するか、しないかということ。(s)diff は
「差異」を捜す。それは、たいていの場合「変更箇所」でしょうから、
結局は同じことになりますけれど。

-- 
長南洋一




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