NAME

CLDR::Number::Format::Percent - Localized percent formatter using the Unicode CLDR

VERSION

This document describes CLDR::Number::Format::Percent v0.12, built with Unicode CLDR v27.0.1.

SYNOPSIS

# either
use CLDR::Number::Format::Percent;
$perf = CLDR::Number::Format::Percent->new(locale => 'tr');

# or
use CLDR::Number;
$cldr = CLDR::Number->new(locale => 'tr');
$perf = $cldr->percent_formatter;

# when locale is 'tr' (Turkish)
say $perf->format(0.05);  # '%5'

# when locale is 'ar' (Arabic)
say $perf->format(0.05);  # '٥٪'

# when locale is 'fr' (French)
say $perf->format(0.05);  # '5 %'

$perf->permil(1);         # per mil
say $perf->format(0.05);  # '50 ‰'

DEPRECATION

Using the locale method as a setter is deprecated. In the future the object’s locale will become immutable. Please see issue #38 for details and to submit comments or concerns.

DESCRIPTION

Localized percent formatter using the Unicode Common Locale Data Repository (CLDR).

Methods

format

Accepts a number and returns a formatted percent as a character string, localized for the current locale. If the permil attribute is true, formats as per mil instead of percent.

Attributes

The common attributes locale, default_locale, numbering_system, decimal_sign, group_sign, plus_sign, minus_sign, and cldr_version are described under common attributes in CLDR::Number. All attributes described here other than permil have defaults that change depending on the current locale. All string attributes are expected to be character strings, not byte strings.

permil

Default: false (0)

percent_sign

Examples: % (percent sign) for all locales

permil_sign

Examples: (per mille sign) for root and almost all locales

pattern

Examples: #,##0% for root, en; #,##0 % for de, fr; #,##,##0% for hi, bn, en-IN, and other locales of the Indian subcontinent

minimum_integer_digits

Examples: 1 for all locales

minimum_fraction_digits

Examples: 0 for all locales

maximum_fraction_digits

Examples: 0 for all locales

primary_grouping_size

Examples: 3 for root and almost all locales

Not used when value is 0.

secondary_grouping_size

Examples: 0 for root, en, and most locales; 2 for hi, bn, en-IN, and other locales of the Indian subcontinent

Not used when value is 0.

rounding_increment

Examples: 0 for all locales

0 and 1 are treated the same.

SEE ALSO

CLDR::Number

AUTHOR

Nova Patch <patch@cpan.org>

This project is brought to you by Shutterstock. Additional open source projects from Shutterstock can be found at code.shutterstock.com.

COPYRIGHT AND LICENSE

© 2013–2015 Shutterstock, Inc.

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.