[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

翻訳パッチ投稿に関するアドバイス (was: Re: Bugs/Developer.wml (1.55 -> 1.67))



小林です。

From: SUGIYAMA Tomoaki <tomos@xxxxxxxxxxxxxxxx>
Subject: Re: Bugs/Developer.wml (1.55 -> 1.67)
Date: Thu, 16 Nov 2006 20:00:25 +0900

> 杉山です。
> 
> debian-www: 10420 のパッチをうまく手元で当てられなかったので,
> 手パッチを当てました。確認していただくと助かります。

お疲れ様です。

あまりきちんとチェックしていませんが、さらっと見たところ、パッチの空行
の 1 カラム目 (1 文字目) にスペースがなく、パッチとして壊れたものになっ
ているような気がします。このパッチは、ターミナルに表示された unified
diff を X 上でマウスで copy and paste してメールに入れた、と見ているの
ですが如何でしょうか?

以下、冗長な説明とアドバイスです。

== 問題

問題は次の例を見るとわかりやすいでしょう。

nori1[1:10]%  cat hoge.orig                                     saba:~/tmp/po4a
hoge
fuga

eof
nori1[1:10]%  cat hoge                                          saba:~/tmp/po4a
hoge
fuge

eof
nori1[1:10]%  diff -u hoge.orig hoge                            saba:~/tmp/po4a
--- hoge.orig   Fri Nov 17 01:10:28 2006
+++ hoge        Fri Nov 17 01:10:36 2006
@@ -1,4 +1,4 @@
 hoge
-fuga
+fuge
 
 eof

unified diff の 1 文字目は、「追加された行 (+)」・「削除された行 (-)」
と、その周りの「変更がない行 ( )」を表示するのは御覧のとおりです。これ
は、上の例の「hoge」や「eof」のように「変更がない行」が空行でなければ、
頭にスペースが入るのでわかりやすいでしょう。しかし「変更がない行」が空
行だと、そこは「スペースが 1 文字だけある行」になります。「空行」のよ
うに見えますが、そうではありません。

ターミナルの出力をマウスで copy and paste すると、通常、行末の無駄なス
ペースは取り除かれます。したがって、このような「スペースが 1 文字だけ
ある行」は「空行」としてペーストされてしまいます。これは、パッチとして
は壊れたものになります。

# 言葉で説明するのは大変なので実験してみてくださいね。:-)

== アドバイス

unified diff (diff -u の出力) をマウスで copy and paste するのは危険で
す。パッチをメールに含めたければ、diff -u hoge.orig hoge > patch のよ
うにしてパッチファイル patch を作成した上で以下の方法をとるとよいでしょ
う。

* patch をメールに挿入。Mew などの Emacs を使った MUA ではテキストファ
  イルの中身を挿入するのは簡単 (C-x i) ですが、Thunderbird ではどうか
  わかりません。この方法では、本文の他のテキストと同様に読めるのでパッ
  チを査読するのが楽になります。

* patch をテキストとして添付。日本語のメールのテキストは ISO-2022-JP
  (JIS) としてエンコードされるので、(MUA の添付ファイルの扱いによるで
  しょうが) テキストファイルとして添付する場合はエンコーディングが変換
  される可能性があり、受信側でエンコーディングを変換する必要が出る可能
  性があることに注意をしましょう。テキストファイルとして添付しても本文
  と同様に MUA で読めるので査読は楽です。

* patch を gzip して添付。圧縮されたバイナリは通常 MUA から直接読めな
  いので査読は面倒になりますが、メールサイズが小さくなり、送信時にエン
  コーディングが変わることもないという利点があります。日本語のエンコー
  ディングの問題を調整できない外国の方に送るものとか、査読の必要がない
  最終的に仕上げたパッチとか、サイズの大きなパッチとかはこの方法を使う
  とよいでしょう。

-- 
|:  Noritada KOBAYASHI
|:  Dept. of General Systems Studies,
|:  Graduate School of Arts and Sciences, Univ. of Tokyo
|:  E-mail: nori1@xxxxxxxxxxxxxxxxxxxxxxx (preferable)
|:          nori@xxxxxxxxxxxxxxxxxxx
|:  Key fingerprint = AB26 9533 81DA 997B 3C06  4380 19BB ADA0 695C 9F53