Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Re^4: App::Cmd::Command and abstract encoding (=encoding utf8)

by McA (Priest)
on Mar 04, 2013 at 14:00 UTC ( #1021647=note: print w/ replies, xml ) Need Help??

in reply to Re^3: App::Cmd::Command and abstract encoding (=encoding utf8)
in thread App::Cmd::Command and abstract encoding

I'm not really happy with that "solution", because if a perl source is not declared beeing utf8-encoded it is latin1-encoded by default. A German umlaut in an ABSTRACT would be decoded wrong.

My proposal from above:

--- App/Cmd/ 2013-01-31 01:37:50.000000000 +0100 +++ App/Cmd/ 2013-03-04 14:57:08.398638804 +0100 @@ -11,6 +11,7 @@ # ABSTRACT: a base class for App::Cmd commands use Carp (); +use Encode (); sub prepare { @@ -115,6 +116,7 @@ local $/ = "\n"; my $inpod; + my $enc_seen; while (local $_ = <$fh>) { # =cut toggles, it doesn't end :-/ @@ -127,10 +129,10 @@ next unless $inpod; chomp; - + $enc_seen = $1 if(/^=encoding\s+(\S+)/); next unless /^(?:$class\s-\s)(.*)/; - $result = $1; + $result = $enc_seen ? Encode::decode($enc_seen, $1) : $1; last; }

Best regards

Comment on Re^4: App::Cmd::Command and abstract encoding (=encoding utf8)
Download Code

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1021647]
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (6)
As of 2015-11-26 07:13 GMT
Find Nodes?
    Voting Booth?

    What would be the most significant thing to happen if a rope (or wire) tied the Earth and the Moon together?

    Results (696 votes), past polls