mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
Added downcased shift-jis declarations. The old, all upper case declarations
are deprecated, but I need some Shift-JIS encoded documents to test against before I remove them. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5145 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
e6636fe890
commit
6c64ca5076
3 changed files with 40 additions and 0 deletions
2
MANIFEST
2
MANIFEST
|
@ -276,6 +276,8 @@ lib/rexml/encoding.rb
|
|||
lib/rexml/encodings/EUC-JP.rb
|
||||
lib/rexml/encodings/ICONV.rb
|
||||
lib/rexml/encodings/ISO-8859-1.rb
|
||||
lib/rexml/encodings/Shift-JIS.rb
|
||||
lib/rexml/encodings/Shift_JIS.rb
|
||||
lib/rexml/encodings/SHIFT-JIS.rb
|
||||
lib/rexml/encodings/SHIFT_JIS.rb
|
||||
lib/rexml/encodings/UNILE.rb
|
||||
|
|
37
lib/rexml/encodings/Shift-JIS.rb
Normal file
37
lib/rexml/encodings/Shift-JIS.rb
Normal file
|
@ -0,0 +1,37 @@
|
|||
begin
|
||||
require 'iconv'
|
||||
|
||||
module REXML
|
||||
module Encoding
|
||||
@@__REXML_encoding =<<-EOL
|
||||
def decode(str)
|
||||
return Iconv::iconv("utf-8", "shift-jis", str)[0]
|
||||
end
|
||||
|
||||
def encode content
|
||||
return Iconv::iconv("shift-jis", "utf-8", content)[0]
|
||||
end
|
||||
EOL
|
||||
end
|
||||
end
|
||||
rescue LoadError
|
||||
begin
|
||||
require 'uconv'
|
||||
|
||||
module REXML
|
||||
module Encoding
|
||||
@@__REXML_encoding_methods =<<-EOL
|
||||
def to_shift_jis content
|
||||
Uconv::u8tosjis(content)
|
||||
end
|
||||
|
||||
def from_shift_jis(str)
|
||||
Uconv::sjistou8(str)
|
||||
end
|
||||
EOL
|
||||
end
|
||||
end
|
||||
rescue LoadError
|
||||
raise "uconv or iconv is required for Japanese encoding support."
|
||||
end
|
||||
end
|
1
lib/rexml/encodings/Shift_JIS.rb
Normal file
1
lib/rexml/encodings/Shift_JIS.rb
Normal file
|
@ -0,0 +1 @@
|
|||
require 'rexml/encodings/Shift-JIS'
|
Loading…
Add table
Reference in a new issue