On 7 jan, 05:08, Hidetoshi NAGAI <na... / ai.kyutech.ac.jp> wrote: > > When I lauch it, the following error occurs: > > I can't regenerate the error. > > > .../ruby-1.9.1-rc1/lib/ruby/1.9.1/tk.rb:3028:in `find': > > unknown encoding name - ArgumentError) > > ¨Âòﯮ®®¯òõâù±®¹®±ò㱯ìéâ¯òõâù¯±®¹®±¯ôë®ò⺳°²¸ºéî à¼ôï¨òåñõéòå䩾§ > > Probably, the error occurs on Encoding.find(), > but tk.rb:3028 doesn't include the method. > On my archive, tk.rb:3028 is a comment line. > > Please check your '.../ruby-1.9.1-rc1/lib/ruby/1.9.1/tk.rb' file. > tk.rb included ruby-1.9.1-rc1 has the following line (line:5553). > ------------------------------------------------------ > RELEASE_DATE = '2008-12-21'.freeze > ------------------------------------------------------ > Your are right, I had inserted some comments for debugging (without success). So I have the same version as yours (standard ruby-1.9.1-rc1) The problem occurs while calling the require "tk". So the Tk.encoding cannot be used. Here is a minimalist full sample #!/usr/bin/env ruby # encoding: iso8859-1 # because of the puts "ñÍñÑhant" # puts "Encoding.default_external=#{Encoding.default_external}" puts "Encoding.default_internal=#{Encoding.default_internal}" puts "Encoding.__ENCODING__=#{__ENCODING__}" Encoding.default_external="iso-8859-15" Encoding.default_internal="iso-8859-15" puts "Encoding.default_external=#{Encoding.default_external}" puts "Encoding.default_internal=#{Encoding.default_internal}" puts "Encoding.__ENCODING__=#{__ENCODING__}" puts "Bonjour l'ñÍñÑhant !" # Simple crñÂtion d'un bouton avec "quitter" comme action DEFAULT_TK_ENCODING=__ENCODING__ def tktest require 'tk' root = TkRoot.new { title "Test de Tk sous Ruby" } TkLabel.new(root) { text 'Essai de Ruby/Tk !' pack { padx 15 ; pady 15; side 'left' } } TkButton.new(root) { text 'Quitter' pack { padx 15 ; pady 15; side 'bottom' } command 'exit' } Tk.mainloop end tktest And here are the full result: ruby -version ruby 1.9.1 (2008-12-30 patchlevel-0 revision 21203) [powerpc- darwin9.6.0] ./tktest.rb Encoding.default_external=ASCII-8BIT Encoding.default_internal= Encoding.__ENCODING__=ISO-8859-1 Encoding.default_external=ISO-8859-15 Encoding.default_internal=ISO-8859-15 Encoding.__ENCODING__=ISO-8859-1 Bonjour l'ñÍñÑhant ! /home/.../ruby-1.9.1-rc1/lib/ruby/1.9.1/tk.rb:3022:in `find': unknown encoding name - (ArgumentError) from /home/.../ruby-1.9.1-rc1/lib/ruby/1.9.1/tk.rb:3022: in `<top (required)>' from ./tktest.rb:19:in `require' from ./tktest.rb:19:in `tktest' from ./tktest.rb:33:in `<main>' (the standard Tk window appears just before the error) -- Maurice Diamantini at ensta.fr