lib/sup/util.rb in sup-0.6 vs lib/sup/util.rb in sup-0.7
- old
+ new
@@ -615,5 +615,22 @@
def winner?
@m.synchronize { !@over && @over = true }
end
end
+
+class Iconv
+ def self.easy_decode target, charset, text
+ return text if charset =~ /^(x-unknown|unknown[-_]?8bit|ascii[-_]?7[-_]?bit)$/i
+ charset = case charset
+ when /UTF[-_]?8/i: "utf-8"
+ when /(iso[-_])?latin[-_]?1$/i: "ISO-8859-1"
+ when /unicode[-_]1[-_]1[-_]utf[-_]7/i: "utf-7"
+ else charset
+ end
+
+ # Convert:
+ #
+ # Remember - Iconv.open(to, from)!
+ Iconv.iconv(target + "//IGNORE", charset, text + " ").join[0 .. -2]
+ end
+end