charset: alias numeric presets to descriptive names
[sheet.git] / charset.plp
index 42d6a14f509972e6b034a504edc0b7ccb9e82ef5..4c673bcb14efbda62107485a06c1489dbaef3375 100644 (file)
@@ -30,16 +30,22 @@ sub tabinput {
        my $input = shift or return;
 
        state $ALIAS = {
-               default => [qw(unicode- utf-8 iso-8859-1 -cp1252- --iso-8859-15- cp437 -cp850)],
-               0 => [qw(cp437 -cp863)],
-               1 => [qw(iso-8859-1 -cp1252 -MacRoman -cp850)],
-               2 => [qw(iso-8859-2 -cp1250 -cp852 -MacCentralEurRoman -MacCroatian -MacRumanian)],
-               5 => [qw(koi8-f -iso-8859-5 -cp1251 -MacCyrillic -cp855 -cp866)],
-               7 => [qw(iso-8859-7 -cp1253 -MacGreek -cp737 -cp869)],
-               8 => [qw(iso-8859-8 -cp1255 -MacHebrew -cp862)],
+               default    => [qw(unicode- utf-8 iso-8859-1 -cp1252- --iso-8859-15- cp437 -cp850)],
+               us         => [qw(cp437 -cp863)],
+               westeur    => [qw(iso-8859-1 -cp1252 -MacRoman -cp850)],
+               centeur    => [qw(iso-8859-2 -cp1250 -cp852 -MacCentralEurRoman -MacCroatian -MacRumanian)],
+               cyrillic   => [qw(koi8-f -iso-8859-5 -cp1251 -MacCyrillic -cp855 -cp866)],
+               greek      => [qw(iso-8859-7 -cp1253 -MacGreek -cp737 -cp869)],
+               hebrew     => [qw(iso-8859-8 -cp1255 -MacHebrew -cp862)],
+               # iso-code shorthand
+               1 => 'westeur',
+               2 => 'centeur',
+               5 => 'cyrillic',
+               7 => 'greek',
+               8 => 'hebrew',
        };
        if (my $follow = $ALIAS->{$input}) {
-               return map { tabinput($_) } @{$follow};
+               return map { tabinput($_) } ref $follow ? @{$follow} : $follow;
        }
 
        my %row = (offset => 0, cols => 16);