ScriptEncodingJa » History » Version 6

adok adrik, 07/13/2011 02:48 AM

1 5 Redmine Admin
=begin
2 1 Usaku NAKAMURA
= Script Encoding Summary
3 2 Yuki Sonoda
[[ruby-dev:33389]]より転載。
4 1 Usaku NAKAMURA
5 1 Usaku NAKAMURA
 通常のスクリプトの場合        | script encoding | default external |
6 1 Usaku NAKAMURA
 ------------------------------+-----------------+------------------+
7 1 Usaku NAKAMURA
 -K・-Eなし、magic commentなし | US-ASCII        | locale           |
8 1 Usaku NAKAMURA
 -K・-Eなし、magic commentあり | magic comment   | locale           |
9 1 Usaku NAKAMURA
 -Eあり、magic commentなし     | US-ASCII        | -E               |
10 1 Usaku NAKAMURA
 -Eあり、magic commentあり     | magic comment   | -E               |
11 1 Usaku NAKAMURA
 -Kあり、magic commentなし     | -K              | -K               |
12 1 Usaku NAKAMURA
 -Kあり、magic commentあり     | magic comment   | -K               |
13 1 Usaku NAKAMURA
14 1 Usaku NAKAMURA
15 1 Usaku NAKAMURA
 -eおよびstdinの場合           | script encoding | default external |
16 1 Usaku NAKAMURA
 ------------------------------+-----------------+------------------+
17 1 Usaku NAKAMURA
 -K・-Eなし、magic commentなし | locale          | locale           |
18 1 Usaku NAKAMURA
 -K・-Eなし、magic commentあり | magic comment   | locale           |
19 1 Usaku NAKAMURA
 -Eあり、magic commentなし     | locale          | -E               |
20 1 Usaku NAKAMURA
 -Eあり、magic commentあり     | magic comment   | -E               |
21 1 Usaku NAKAMURA
 -Kあり、magic commentなし     | -K              | -K               |
22 1 Usaku NAKAMURA
 -Kあり、magic commentあり     | magic comment   | -K               |
23 1 Usaku NAKAMURA
24 1 Usaku NAKAMURA
25 1 Usaku NAKAMURA
== 1.8からのscript encodingに関する非互換まとめ
26 1 Usaku NAKAMURA
27 1 Usaku NAKAMURA
* -Kがない場合、1.8では1.9のASCII-8BIT相当の挙動だったが、1.9
28 1 Usaku NAKAMURA
  ではUS-ASCIIとして扱われる。
29 1 Usaku NAKAMURA
  よって、-Kなしでリテラル中に他バイト文字が含まれている場合、
30 1 Usaku NAKAMURA
  1.8ではencodingと運によっては大丈夫だったものが、1.9では必
31 1 Usaku NAKAMURA
  ずパース時にエラーが発生するようになる。
32 1 Usaku NAKAMURA
33 1 Usaku NAKAMURA
* magic commentがあった場合、1.8では無視されるが、1.9ではそれ
34 1 Usaku NAKAMURA
  がscript encodingに反映される。-Kよりも優先。
35 6 adok adrik
* ((<Buy Assignment|URL:http://www.assignmentmojo.co.uk/buy-assignments-online/>))
36 1 Usaku NAKAMURA
37 1 Usaku NAKAMURA
* 上記の表にはないが、コマンドラインオプション・RUBYOPT・shebang
38 1 Usaku NAKAMURA
  の間の優先順位が1.9では変更されている。
39 1 Usaku NAKAMURA
  よって、それぞれに矛盾する-K指定が存在した場合、1.8とは異な
40 1 Usaku NAKAMURA
  る優先順位でscript encodingが決定される。
41 1 Usaku NAKAMURA
  具体的には以下の通り(左が優先)
42 3 Usaku NAKAMURA
  : 1.8
43 3 Usaku NAKAMURA
    shebang > RUBYOPT > コマンドライン
44 3 Usaku NAKAMURA
  : 1.9
45 3 Usaku NAKAMURA
    コマンドライン > RUBYOPT > shebang
46 1 Usaku NAKAMURA
47 6 adok adrik
* ((<essays online|URL:http://essay-for.me/>)) ((<Essay Writing|URL:http://www.allwritingsource.co.uk/essay-writing-service.php>)) ((<Logo Design Competition|URL:http://www.mightydesigners.com>))
48 5 Redmine Admin
49 5 Redmine Admin
=end