[fxruby-users] [Foxgui-users] Troubles with FXTextField encoding

Lars Kanis lars at greiz-reinsdorf.de
Sat Feb 16 09:03:59 UTC 2013

Hi Damián,

sorry for responding so late. It is a spare time project for me and I
don't know the fox toolkit that good, so I'll have to try things out or
look at the sources. Moreover I'm quite lazy in answering user
questions, generally.

Regarding your string encoding issue: FXRuby uses UTF-8 encoding for all
text strings since version 1.6.0. However the strings were not properly
marked as UTF-8 in Ruby-1.9. That is obviously a bug. You could set the
encoding of a string by hand per String#force_encoding('UTF-8').

Please try out the new fxruby version 1.6.26.pre1 I just released. It
should now properly return UTF-8 strings for all text returning methods.

Some advices for unicode handling in fxruby: You should not use any
encodings but UTF-8 when interacting with fxruby. FXRuby will not check
or convert other encodings but will consider everything as UTF-8. You
moreover should mark all your *.rb files with a header line like this:

# encoding: utf-8

Then even Chinese characters should be no problem. There are also some
test cases in the test suite of fxruby for unicode handling.

Regarding the font encoding: I guess FONTENCODING_UNICODE should be the
suitable encoding for FXFont, but I didn't tried it out.

Hope that helps.


Am 15.02.2013 03:32, schrieb Damián M. González:
> > > Hello Jeroen, people. I'm having troubles with the encoding. First
> of all, I'll tell you that in the app that am developing am using
> ñüáéíóú characters. I've realized that when the user write some of
> those characters and the app take it for work with it, later I come
> with troubles, that's because the string taked from the #FXTextField
> has ascii-8bit encoding, and as you can see here:
> http://www.sciencebuddies.org/science-fair-projects/project_ideas/CompSci_ASCII_Table.shtml
> the characters ñüáéíóú doesn't exist. So I've tried to change the
> encoding of the #FXTextField to UTF-8 but I didn't found the right
> Constant: http://rubydoc.info/gems/fxruby/frames , am I missing it? is
> somewhere hidding? nevermind. This is a little worse: I've tried to
> change the encoding as I said to another one, not UTF-8(because I
> didn't find it) but to CP850, so I did something like this:
> > > #...tf = FXTextField.new(parent, 10)tf.font=(app, FXFont.new(app,
> "Segoe UI,90,normal,5,0,#{FONTENCODING_CP850},0"))#checking the
> encoding..puts tf.encoding#=> 850
> > > Seems to work, but it doesn't. When I enter text in the
> #FXTextField, press enter and ask for the encoding, ascii-8bit
> appears, not cp850...
> > > tf.connect(SEL_COMMAND) do |sender, selector, data| puts
> data.encoding #=> <Encoding:ASCII-8BIT>end
> > > So I really don't know what happen when the user enter any of
> ñüáéíóú,... I'm getting strange errors when I handle those writed
> strings. Do any of you have some advice about this? will be thankfull
> to hear them. Is this a bug? Thanks for your time.
> > > P.D.: By the way I'm using FXRuby 1.6.25, Windows 7 Proffesional
> 64 bits, Ruby 1.9.3p327 (2012-11-10) [i386-mingw32].
> >
> > I can't speak for Ruby, but FOX should support UTF-8.
> >
> > For all this to work, ensure that your FOX library is compiled with
> > otherwise the interface to Win32 won't support unicode.
> >
> >
> >
> >
> >
> >
> > -- JVZ
> >
> >
> >
> >
> +----------------------------------------------------------------------------+
> > | Copyright (C) 09:10 02/14/2013 Jeroen van der Zijp. All Rights
> Reserved. |
> >
> +----------------------------------------------------------------------------+
>  Thank you Jeroen for answer. Sadly seems that there's no maintainer
> of the framework for Ruby, and I don't know how to check if the gem
> we(the users of Ruby) download is compiled with -DUNICODE=1, Ruby is
> my first language and I'm kind of noob related to C++.  I'm in middle
> of a project, hope to get some answer about if FXRuby is compiled with
> that option, if not if it can be fixed, etc. Does anybody knows that?
> _______________________________________________
> fxruby-users mailing list
> fxruby-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/fxruby-users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/fxruby-users/attachments/20130216/d67af5a9/attachment.html>

More information about the fxruby-users mailing list