--- /dev/null
+package Encode::Webdings;
+
+use 5.014;
+use warnings;
+use utf8;
+
+our $VERSION = '1.00';
+
+use parent 'Encode::Wingdings';
+__PACKAGE__->Define('webdings');
+
+our @MAP = (qw[
+ 🕷 🕸 🕲 🕶 🏆 🎖 🖇 🗨 🗩 🗰 🗱 🌶 🎗 ▞ 🙼 🗕 🗖 🗗 ⏴ ⏵ ⏶ ⏷ ⏪ ⏩ ⏮ ⏭ ⏸ ⏹ ⏺ 🗚 🗳
+ 🛠 🏗 🏘 🏙 🏚 🏜 🏭 🏛 🏠 🏖 🏝 🛣 🔍 🏔 👁 👂 🏞 🏕 🛤 🏟 🛳 🕬 🕫 🕨 🔈 🎔 🎕 🗬 🙽 🗭 🗪 🗫
+ ⮔ ✔ 🚲 □ 🛡 📦 🛱 ■ 🚑 🛈 🛩 🛰 🟈 🕴 ⚫ 🛥 🚔 🗘 🗙 ❓ 🛲 🚇 🚍 ⛳ 🛇 ⊖ 🚭 🗮 | 🗯 🗲 \7f
+ 🚹 🚺 🛉 🛊 🚼 👽 🏋 ⛷ 🏂 🏌 🏊 🏄 🏍 🏎 🚘 🗠 🛢 💰 🏷 💳 👪 🗡 🗢 🗣 ✯ 🖄 🖅 🖃 🖆 🖹 🖺 🖻
+ 🕵 🕰 🖽 🖾 📋 🗒 🗓 📖 📚 🗞 🗟 🗃 🗂 🖼 🎭 🎜 🎘 🎙 🎧 💿 🎞 📷 🎟 🎬 📽 📹 📾 📻 🎚 🎛 📺 💻
+ 🖥 🖦 🖧 🕹 🎮 🕻 🕼 📟 🖁 🖀 🖨 🖩 🖿 🖪 🗜 🔒 🔓 🗝 📥 📤 🕳 🌣 🌤 🌥 🌦 ☁ 🌧 🌨 🌩 🌪 🌬 🌫
+ 🌜 🌡 🛋 🛏 🍽 🍸 🛎 🛍 Ⓟ ♿ 🛆 🖈 🎓 🗤 🗥 🗦 🗧 🛪 🐿 🐦 🐟 🐕 🐈 🙬 🙮 🙭 🙯 🗺 🌍 🌏 🌎 🕊
+]);
+
+1;
package Encode::Wingdings;
use 5.014;
+no strict 'refs';
use warnings;
use utf8;
my ($self, $input, $check) = @_;
my $output = '';
for (unpack 'C*', $input) {
- $output .= $_ < 33 ? chr : $MAP[$_ - 33];
+ $output .= $_ < 33 ? chr : ${ref($self).'::MAP'}[$_ - 33];
}
return $output;
}
hebrew => [qw( iso-8859-8 cp1255 MacHebrew cp862 U59-5F )],
thai => [qw( iso-8859-11 cp874 MacThai )],
vietnamese => [qw( viscii cp1258 MacVietnamese )],
- symbols => [qw( symbol dingbats MacDingbats wingdings )],
+ symbols => [qw( symbol dingbats MacDingbats wingdings webdings )],
# iso-code shorthand
1 => 'westeur',
'symbol' => ['' => '32-127+160'],
'AdobeSymbol' => ['symbol' => '32-127+160', '' => '32-127+160'], # minor differences, irrelevant except for different '€'
'wingdings' => ['' => '32'],
+ 'webdings' => ['' => '32'],
'iso-8859-2' => ['iso-8859-1' => '160'],
'iso-8859-3' => ['iso-8859-1' => '160'], #TODO: also apply to iso-8859-9
}
}
- if (lc $input eq 'wingdings') {
- require Encode::Wingdings;
+ if ($input =~ m{ \A (?:wing|web)dings \z }ix) {
+ require "Encode/\u$input.pm";
}
if ($input =~ m{ \A u ([0-9a-f]+) (?:-([0-9a-f]+))? \z }ix) {