[ruby-dev:18422] Re: rubicon on EWS4800
From:
WATANABE Tetsuya <tetsu@...>
Date:
2002-10-01 02:15:08 UTC
List:
ruby-dev #18422
渡辺哲也です。
なかださんパッチの場合、動作としてまだ解消しきれ
ていない部分があるようです。
長いメールですが、確認よろしくお願いします。
In message "[ruby-dev:18421] Re: rubicon on EWS4800"
on 02/10/01, WATANABE Tetsuya さん writes:
|実行結果もちょっとまずいところがあるようです。
確認に使用したスクリプト
------------------------------------------------------------
#! /usr/local/bin/ruby
# /home/tetsu/src/ruby/ck/seek/ck4.rb
# Created: May 23,2002 Thursday 15:10:04
# Author: tetsu(WATANABE Tetsuya)
# $Id$
# usage:
file = 'sample.txt'
str = '0123456789' * 5
w = File.open(file, 'w+')
10.times do
w.puts str
str.concat(str[0])
str[0, 1] = ''
end
w.rewind
while w.gets
print
end
puts '--------------------0'
w.rewind
while w.gets
if ~/^4/
w.pos -= $_.size
w.print 'X'
end
end
w.rewind
while w.gets
print
end
puts '--------------------1'
w.rewind
while w.gets
if ~/^X/
w.print 'Y'
end
end
w.rewind
while w.gets
print
end
puts '--------------------2'
w.rewind
while c = w.getc
if c == 0xa
else
# w.pos += 0
w.print '.'
end
end
w.rewind
while w.gets
print
end
puts '--------------------3'
w.rewind
while c = w.getc
if c == 0xa
else
# w.pos += 0
w.print '+'
end
end
w.rewind
while w.gets
print
end
puts '--------------------4'
w.rewind
while c = w.getc
if c == 0xa
else
w.pos -= 1
w.print '-'
end
end
w.rewind
while w.gets
print
end
puts '--------------------5'
w.rewind
while c = w.getc
if c == 0xa
else
w.pos -= 1
w.print 'jj'
end
end
w.rewind
while w.gets
print
end
puts '--------------------6'
w.close
------------------------------------------------------------
期待した実行結果(Linux や HP-UX 上での渡辺パッチの結果)
------------------------------------------------------------
01234567890123456789012345678901234567890123456789
12345678901234567890123456789012345678901234567890
23456789012345678901234567890123456789012345678901
34567890123456789012345678901234567890123456789012
45678901234567890123456789012345678901234567890123
56789012345678901234567890123456789012345678901234
67890123456789012345678901234567890123456789012345
78901234567890123456789012345678901234567890123456
89012345678901234567890123456789012345678901234567
90123456789012345678901234567890123456789012345678
--------------------0
01234567890123456789012345678901234567890123456789
12345678901234567890123456789012345678901234567890
23456789012345678901234567890123456789012345678901
34567890123456789012345678901234567890123456789012
X5678901234567890123456789012345678901234567890123
56789012345678901234567890123456789012345678901234
67890123456789012345678901234567890123456789012345
78901234567890123456789012345678901234567890123456
89012345678901234567890123456789012345678901234567
90123456789012345678901234567890123456789012345678
--------------------1
01234567890123456789012345678901234567890123456789
12345678901234567890123456789012345678901234567890
23456789012345678901234567890123456789012345678901
34567890123456789012345678901234567890123456789012
X5678901234567890123456789012345678901234567890123
Y6789012345678901234567890123456789012345678901234
67890123456789012345678901234567890123456789012345
78901234567890123456789012345678901234567890123456
89012345678901234567890123456789012345678901234567
90123456789012345678901234567890123456789012345678
--------------------2
0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.
1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.
2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.
3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.
X.6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.2.
Y.7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.3.
6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.
7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.
8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.8.0.2.4.6.
9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.9.1.3.5.7.
--------------------3
0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+
1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+
2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+
3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+
X+6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+2+
Y+7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+3+
6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+
7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+
8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+8+0+2+4+6+
9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+9+1+3+5+7+
--------------------4
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------5
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
--------------------6
------------------------------------------------------------
なかださんパッチ実施の実行結果
------------------------------------------------------------
01234567890123456789012345678901234567890123456789
12345678901234567890123456789012345678901234567890
23456789012345678901234567890123456789012345678901
34567890123456789012345678901234567890123456789012
45678901234567890123456789012345678901234567890123
56789012345678901234567890123456789012345678901234
67890123456789012345678901234567890123456789012345
78901234567890123456789012345678901234567890123456
89012345678901234567890123456789012345678901234567
90123456789012345678901234567890123456789012345678
--------------------0
01234567890123456789012345678901234567890123456789
12345678901234567890123456789012345678901234567890
23456789012345678901234567890123456789012345678901
34567890123456789012345678901234567890123456789012
X5678901234567890123456789012345678901234567890123
56789012345678901234567890123456789012345678901234
67890123456789012345678901234567890123456789012345
78901234567890123456789012345678901234567890123456
89012345678901234567890123456789012345678901234567
90123456789012345678901234567890123456789012345678
--------------------1
01234567890123456789012345678901234567890123456789
12345678901234567890123456789012345678901234567890
23456789012345678901234567890123456789012345678901
34567890123456789012345678901234567890123456789012
X5678901234567890123456789012345678901234567890123
Y6789012345678901234567890123456789012345678901234
67890123456789012345678901234567890123456789012345
78901234567890123456789012345678901234567890123456
89012345678901234567890123456789012345678901234567
90123456789012345678901234567890123456789012345678
--------------------2
01234567890123456789012345678901234567890123456789
12345678901234567890123456789012345678901234567890
23456789012345678901234567890123456789012345678901
34567890123456789012345678901234567890123456789012
X5678901234567890123456789012345678901234567890123
Y6789012345678901234567890123456789012345678901234
67890123456789012345678901234567890123456789012345
78901234567890123456789012345678901234567890123456
89012345678901234567890123456789012345678901234567
90123456789012345678901234567890123456789012345678
0.--------------------3
01234567890123456789012345678901234567890123456789
12345678901234567890123456789012345678901234567890
23456789012345678901234567890123456789012345678901
34567890123456789012345678901234567890123456789012
X5678901234567890123456789012345678901234567890123
Y6789012345678901234567890123456789012345678901234
67890123456789012345678901234567890123456789012345
78901234567890123456789012345678901234567890123456
89012345678901234567890123456789012345678901234567
90123456789012345678901234567890123456789012345678
0.0+--------------------4
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
--------------------------------------------------
------------------------5
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
jjjj--------------------6
------------------------------------------------------------