Requirement: sudo gem install character-encodings --remote
For the module Encoding::Character::UTF8::Methods see the file called utf-8.rb
in the source code of character-encodings.
require('encoding/character/utf-8') class Proc def uStringMethods() umethods = [] Encoding::Character::UTF8.methods.each do |m| umethods.push(%! define_method("u#{m}") do |*args| Encoding::Character::UTF8.#{m}(self, *args) end # unless instance_methods.include?("u#{m}") !) end #puts umethods umethods = umethods.reject { |m| m =~ /taguri/ } String.class_eval(umethods.join) end end Proc.new {}.uStringMethods() # adds methods defined in module Encoding::Character::UTF8::Methods to class String puts "caf\303\251".length #=> 5 puts "caf\303\251".ulength #=> 4 #puts String.public_methods.select { |x| x =~ /^u/ }.sort #puts String.new.public_methods.select { |x| x =~ /^u/ }.sort