Project

General

Profile

Bug #983

tool/file2lastrev.rb の文字コードの問題

Added by duerst (Martin Dürst) over 11 years ago. Updated about 9 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Target version:
ruby -v:
Backport:
[ruby-dev:37702]

Description

=begin
tool/file2lastrev.rb が cygwin でエラーを起こしている。
svn info の出力に US-ASCII でないバイトが入っているため、
エラーがでます。

file2lastrev.rb の先頭にある
ENV['LANG'] = ENV['LC_ALL'] = ENV['LC_MESSAGES'] = 'C'
は効果がないみたいです (このためにあるかどうかも分かりません)。

添付した patch で問題が納まったが、これは一般的な解決かどうか
分かりません。

よろしくお願いします。 Martin.
=end


Files

file2lastrev.patch (360 Bytes) file2lastrev.patch duerst (Martin Dürst), 01/05/2009 05:06 PM
ruby-file2lastrev-svn-info.diff (671 Bytes) ruby-file2lastrev-svn-info.diff kou (Kouhei Sutou), 01/06/2009 08:33 PM
#1

Updated by naruse (Yui NARUSE) over 11 years ago

=begin
LANG=C しているのは、svn info の出力を英語で固定するためだと思います。
基本的には force_encoding するのではなく、svn info の方を何とかするべきだと思うのですが、
出力が US-ASCII のみになるようにできますかね?
=end

#2

Updated by duerst (Martin Dürst) over 11 years ago

=begin
成瀬さんと同意ですが、一部の cygwin の場合はなぜか LANG=C の設定でも
曜日だけが日本語 (Shift_JIS) ででてしまう。subversion のレポを
調べたところ、そこの部分だけは APR (subversion が使っている Apache
Portable Runtime) に任せている。

自分の PC ではその問題はおこなないが、複数の学生のところでは起こります。
現在考えられるのは学生のところは cygwin の subversion (/usr/bin/svn) ではなく、
Windows の subversion (例えば /cygdrive/c/Program Files/svn とか) を使っている
ということです。その場合 ARP の挙動が違う可能性があります。subversion そのもの
はどの場合でも LANG 環境変数を考慮します。
=end

#3

Updated by kou (Kouhei Sutou) over 11 years ago

=begin
こういうときはsvn info --xmlを使った方がよいと思います。
=end

#4

Updated by duerst (Martin Dürst) over 11 years ago

=begin
svn info --xml で確かめたところ、US-ASCII 文字以外はでません。
=end

#5

Updated by yugui (Yuki Sonoda) over 11 years ago

  • Target version set to 1.9.1 RC2

=begin

=end

#6

Updated by yugui (Yuki Sonoda) over 11 years ago

  • Status changed from Open to Closed
  • % Done changed from 0 to 100

=begin
Applied in changeset r21486.
=end

Also available in: Atom PDF