[ruby-dev:50817] [Ruby master Bug#10889] rdocでのスクリプトエンコーディングの挙動が違う
From:
merch-redmine@...
Date:
2019-07-23 15:21:17 UTC
List:
ruby-dev #50817
Issue #10889 has been updated by jeremyevans0 (Jeremy Evans).
Status changed from Open to Closed
This appears to have been fixed between Ruby 2.4 (RDoc 5.0.0) and Ruby 2.5 (RDoc 6.0.1):
```
$ rdoc24 -o renc-rdoc renc.rb
Parsing sources...
100% [ 1/ 1] renc.rb
No newer files.
Files: 1
Classes: 0 (0 undocumented)
Modules: 0 (0 undocumented)
Constants: 0 (0 undocumented)
Attributes: 0 (0 undocumented)
Methods: 0 (0 undocumented)
Total: 0 (0 undocumented)
0.00% documented
Elapsed: 0.0s
$ rdoc25 -o renc-rdoc renc.rb
Parsing sources...
100% [ 1/ 1] renc.rb
Generating Darkfish format into /path/renc-rdoc...
Files: 1
Classes: 0 (0 undocumented)
Modules: 0 (0 undocumented)
Constants: 0 (0 undocumented)
Attributes: 0 (0 undocumented)
Methods: 1 (0 undocumented)
Total: 1 (0 undocumented)
100.00% documented
Elapsed: 0.3s
```
----------------------------------------
Bug #10889: rdocでのスクリプトエンコーディングの挙動が違う
https://bugs.ruby-lang.org/issues/10889#change-79879
* Author: sohey (Sohey Yamamoto)
* Status: Closed
* Priority: Normal
* Assignee:
* Target version:
* ruby -v: ruby 2.0.0p598 (2014-11-13) [i386-mingw32]
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN, 2.2: UNKNOWN
----------------------------------------
以下のような、マジックコメントの前に文字があるスタイルでスクリプトエンコーディングを指定した場合、
rubyスクリプトとしては正常に認識されますが、rdocでは認識されません。
~~~
#========== -*- coding: utf-8 -*-
# test
#================================
p __ENCODING__
# テスト
def test_method
puts 'テスト'
end
test_method
~~~
実行結果
~~~
[d:\tmp] ruby test.rb
#<Encoding:UTF-8>
テスト
[d:\tmp] rdoc -v
4.2.0
[d:\tmp] rdoc test.rb
Parsing sources...
100% [ 1/ 1] test.rb
No newer files.
Files: 1
Classes: 0 (0 undocumented)
Modules: 0 (0 undocumented)
Constants: 0 (0 undocumented)
Attributes: 0 (0 undocumented)
Methods: 0 (0 undocumented)
Total: 0 (0 undocumented)
0.00% documented
Elapsed: 0.0s
[d:\tmp]
~~~
余分な文字を入れない場合は正しく認識されます。
~~~
# -*- coding: utf-8 -*-
~~~
--
https://bugs.ruby-lang.org/