4

I have a project dealing with Unicode text manipulation. I am using Perl 5.014 and the Padre debugger v 0.86 (that's the latest Padre version for ActiveState Perl distribution).

In Padre, it's important to be able to view (examine/inspect) the program variables in the "Debugger" pane at the right hand side, especially the Unicode strings. It turns out that the debugger pane does not show the strings in their character glyphs. For scalars, it shows gibberish, and for arrays, it shows them in the "\x{05FF}" notation, which is cryptic and un-intuitive.

Is there a way to make Padre show the strings in the right glyphs? Going: "View -> Language" and changing the language doesn't help. It affects only the menus.
Note that in the Padre editor, Unicode literals are shown right.

I am running Windows 7 x64.
I do have these in the program:

use utf8;
...
binmode(STDOUT, ":unix:utf8");
binmode $DB::OUT, ':unix:utf8' if $DB::OUT;
...
Helen Craigman
  • 1,443
  • 3
  • 16
  • 25
  • 5
    I don't have an answer but created a ticket for the Padre developers: http://padre.perlide.org/trac/ticket/1408 – szabgab Feb 25 '12 at 06:49

1 Answers1

-1

As a side note, you probably don't want the :utf8 layer for binmode. It asserts that your data is UTF-8, but it doesn't actually validate it as such. You want :encoding(UTF-8). In fact, there is a proof of concept security exploit for the :utf8 layer described at http://www.perlmonks.org/?node_id=644786.

Unfortunately, some of the Perl documentation isn't very clear on this issue.

Ovid
  • 11,580
  • 9
  • 46
  • 76
  • There’s nothing at all wrong with using `:utf8` for output: Perl is not about to generate illegal utf8. As for input, you need to be using `use warnings FATAL => "utf8"` to take care of the foibles. – tchrist Mar 05 '12 at 13:38