diff options
| author | Manuel Traut <manut@mecka.net> | 2011-04-29 09:09:27 +0200 |
|---|---|---|
| committer | Manuel Traut <manut@mecka.net> | 2011-04-29 09:09:27 +0200 |
| commit | 5238ad5a0c4a9e1c8cd036f5de4055e39bd71297 (patch) | |
| tree | 4407c087b9fb5432b1dc11e70b52dacfa0b99feb /beagle/debian-rfs/usr/share/perl5/Debconf/Encoding.pm | |
| parent | 60ead65c41afba7e6aa4bbcf507a1d52f7a8fe9f (diff) | |
added debootstrap stuff
Signed-off-by: Manuel Traut <manut@mecka.net>
Diffstat (limited to 'beagle/debian-rfs/usr/share/perl5/Debconf/Encoding.pm')
| -rw-r--r-- | beagle/debian-rfs/usr/share/perl5/Debconf/Encoding.pm | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/beagle/debian-rfs/usr/share/perl5/Debconf/Encoding.pm b/beagle/debian-rfs/usr/share/perl5/Debconf/Encoding.pm new file mode 100644 index 0000000..2837f9a --- /dev/null +++ b/beagle/debian-rfs/usr/share/perl5/Debconf/Encoding.pm @@ -0,0 +1,73 @@ +#!/usr/bin/perl +# This file was preprocessed, do not edit! + + +package Debconf::Encoding; + +use strict; +use warnings; + +our $charmap; +BEGIN { + no warnings; + eval q{ use Text::Iconv }; + use warnings; + if (! $@) { + $charmap = `locale charmap`; + chomp $charmap; + } + + no warnings; + eval q{ use Text::WrapI18N; use Text::CharWidth }; + use warnings; + if (! $@) { + *wrap = *Text::WrapI18N::wrap; + *columns = *Text::WrapI18N::columns; + *width = *Text::CharWidth::mbswidth; + } + else { + require Text::Wrap; + require Text::Tabs; + sub _wrap { return Text::Tabs::expand(Text::Wrap::wrap(@_)) } + *wrap = *_wrap; + *columns = *Text::Wrap::columns; + sub _dumbwidth { length shift } + *width = *_dumbwidth; + } +} + +use base qw(Exporter); +our @EXPORT_OK=qw(wrap $columns width convert $charmap to_Unicode); + +my $converter; +my $old_input_charmap; +sub convert { + my $input_charmap = shift; + my $string = shift; + + return unless defined $charmap; + + if (! defined $old_input_charmap || + $input_charmap ne $old_input_charmap) { + $converter = Text::Iconv->new($input_charmap, $charmap); + $old_input_charmap = $input_charmap; + } + return $converter->convert($string); +} + +my $unicode_conv; +sub to_Unicode { + my $string = shift; + my $result; + + return $string if utf8::is_utf8($string); + if (!defined $unicode_conv) { + $unicode_conv = Text::Iconv->new($charmap, "UTF-8"); + } + $result = $unicode_conv->convert($string); + utf8::decode($result); + return $result; +} + + +1 |
