Log::Report::Win32Locale(3pm)

Log::Report::Win32Locale3pm

Unix/windows locales

Inheritance

 Log::Report::Win32Locale
   is a Exporter

Overview

Windows uses different locales to represent languages: codepages. Programs which are written with Log::Report however, will contain ISO encoded language names; this module translates between them.

The algorithms in this module are based on Win32::Locale and Win32::Codepage.

Functions

charset_encoding()

Returns the encoding name (usable with module Encode) based on the current codepage. For example, "cp1252" for iso-8859-1 (latin-1) or "cp932" for Shift-JIS Japanese. Returns undef if the encoding cannot be identified.

codepage_to_iso($codepage)

Translate windows $codepage into ISO code. The $codepage is numeric or a hex string like '0x0304'.

iso_locale( [$codepage] )

Returns the ISO string for the Microsoft codepage locale. Might return "undef"/false. By default, the actual codepage is used.

iso_to_codepage($iso)

Returns the numeric value of the codepage. The $iso may look like this: "xx_YY". Then, first the "xx_YY" is looked-up. If that does not exist, "xx" is tried.

ms_codepage_id()

Returns the numeric language ID for the current codepage language. For example, the numeric value for 0x0409 for "en-US", and 0x0411 for "ja". Returns false if the codepage cannot be identified.

ms_install_codepage_id()

Returns the numeric language ID for the installed codepage language. This is like ms_codepage_id(), but refers to the codepage that was the default when Windows was first installed.

ms_locale()

Returns the locale setting from the control panel.

Synopsys

  # Only usable on Windows
  print codepage_to_iso(0x0413);   # nl-NL
  print iso_to_codepage('nl_NL');  # 1043
  printf "%x", iso_to_codepage('nl_NL');  # 413
  my $iso = iso_locale(ms_codepage_id());
  my $iso = iso_locale;  # same
  print charset_encoding;          # cp1252
  print ms_codepage_id;            # 1043
  print ms_install_codepage_id;    # 1043
  print ms_locale;                 # Dutch (Netherlands)

Releases

2 releases since Debian 7 (Wheezy); the text changed 1 time.

  1. 7
  2. 8

License

Copyrights 2007-2014 by [Mark Overmeer]. For other contributors see ChangeLog.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See http://www.perl.com/perl/misc/Artistic.html

From liblog-report-lexicon-perl 1.03-1 in Debian 8 (Jessie). Parsed by carta from the page's man source.