From e96b2a21a2bcec6f3bac274c7ab5463b8476ac8d Mon Sep 17 00:00:00 2001 From: Chris Pyle <118906070+chpy04@users.noreply.github.com> Date: Thu, 11 Jul 2024 19:08:55 -0400 Subject: [PATCH] CLDR-17566 converting number currency formats (#3832) --- .../information-pane-example.PNG | Bin 0 -> 56669 bytes .../number-currency-formats/number-symbol.JPG | Bin 0 -> 37407 bytes .../translation/number-currency-formats.md | 11 ++ .../number-and-currency-patterns.md | 131 ++++++++++++++++++ .../number-currency-formats/number-symbols.md | 34 +++++ .../number-currency-formats/other-patterns.md | 13 ++ 6 files changed, 189 insertions(+) create mode 100644 docs/site/images/number-currency-formats/information-pane-example.PNG create mode 100644 docs/site/images/number-currency-formats/number-symbol.JPG create mode 100644 docs/site/translation/number-currency-formats.md create mode 100644 docs/site/translation/number-currency-formats/number-and-currency-patterns.md create mode 100644 docs/site/translation/number-currency-formats/number-symbols.md create mode 100644 docs/site/translation/number-currency-formats/other-patterns.md diff --git a/docs/site/images/number-currency-formats/information-pane-example.PNG b/docs/site/images/number-currency-formats/information-pane-example.PNG new file mode 100644 index 0000000000000000000000000000000000000000..cbaa687cb0096dd746bc42e1ed91cbfa3e239dc7 GIT binary patch literal 56669 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 literal 0 HcmV?d00001 diff --git a/docs/site/images/number-currency-formats/number-symbol.JPG b/docs/site/images/number-currency-formats/number-symbol.JPG new file mode 100644 index 0000000000000000000000000000000000000000..c90abb090fa31f0ac86a3d0eda70cc642cf9dafe GIT binary patch literal 37407 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 literal 0 HcmV?d00001 diff --git a/docs/site/translation/number-currency-formats.md b/docs/site/translation/number-currency-formats.md new file mode 100644 index 00000000000..c8260b1c9a5 --- /dev/null +++ b/docs/site/translation/number-currency-formats.md @@ -0,0 +1,11 @@ +--- +title: Number & Currency formats +--- + +# Number & Currency formats + +- [Number & currency patterns](https://cldr.unicode.org/translation/number-currency-formats/number-and-currency-patterns) +- [Number symbols](https://cldr.unicode.org/translation/number-currency-formats/number-symbols) +- [Other patterns](https://cldr.unicode.org/translation/number-currency-formats/other-patterns) + +![Unicode copyright](https://www.unicode.org/img/hb_notice.gif) \ No newline at end of file diff --git a/docs/site/translation/number-currency-formats/number-and-currency-patterns.md b/docs/site/translation/number-currency-formats/number-and-currency-patterns.md new file mode 100644 index 00000000000..05ca3e241e4 --- /dev/null +++ b/docs/site/translation/number-currency-formats/number-and-currency-patterns.md @@ -0,0 +1,131 @@ +--- +title: Number and currency patterns +--- + +# Number and currency patterns + +## Number formats introduction + +Pre-requisite topics to read: + +- [Number Symbols](https://cldr.unicode.org/translation/number-currency-formats/number-symbols) + +Numbers are formatted using patterns, like "#,###.00". For example, the pattern "#,###.00" when used to format the number 12345.678 could result in "12'345,67" if the grouping separator for your locale use an apostrophe ('), and the decimal separator is a comma (,). + +Whenever any of these symbols are in the English pattern, they **must be retained** in the pattern for your locale. The positions of some of them (%, ¤) may be changed, or spaces added or removed. The symbols will be replaced by the local equivalents, using the [Number Symbols](https://cldr.unicode.org/translation/number-currency-formats/number-symbols) for your language. (See 💡 Helpful Tips below the table) + +| Type | Example pattern | Meaning | +|---|:---:|---| +| . | #,##0 **.** 00 | The decimal separator placeholder. In a computer program, this gets replaced automatically by the actual symbol used for the decimal point in your locale. **Not a real period ; must be retained!** | +| , | # **,** ##0 . 00 | The grouping (thousand) separator placeholder. In a computer program, this gets automatically replaced by the actual grouping separator in your language. **Not a real comma ; must be retained!** | +| 0 | #,## **0** .### | The placeholder for the start of a whole number. In a computer program, this gets replaced by an actual digit (or a zero if there aren't enough digits). **Not a real zero(digit) ; must be retained!** | +| # | **#** , **##** 0. **###** | The # symbols are place holders for placements of digits based on positions of digit separator. In a computer program, these would be replaced by actual digits. The main use of # is to show the placement of the "," (grouping separator). | +| ¤ | **¤** #,## 0 .00 #,##0.00 **¤** | The currency symbol placeholder. This placeholder indicates the position of the currency symbol (or currency code) and the beginning of the number #. In a computer program, this will be replaced by a currency symbol (e.g $) or code (e.g. USD). By C LDR default, a space gets added automatically depending on rules as defined in the [spec TR35 Currency](https://unicode.org/reports/tr35/tr35-numbers.html#Currencies) This space handling would be seen in a computer program ONLY w hen applicable as per the spec.
See 💡 **Translation Tips** below on when to add spacing **¤ #** ,##0.### and not **¤#** ,##0.### | +| % | #,## 0 **%** | This marks a percent format. The position of the % symbol would be locale specific and may appear in the front, back, with or without spacing. **Not a real % ; must be retained!** | +| E | # **E** 0 | This marks a scientific format. The E symbol may change position. **Must be retained.** | +| ' | See German example:
[0 Mio'.' ¤](https://st.unicode.org/cldr-apps/v#/de/Compact_Decimal_Formatting/6ececfcb96e2cda8) | If any of the above characters are used as literal characters, they must be quoted with ASCII single quotes. This is mostly used in Compact Number formatting with abbreviations.
For example, in a Short Numbers if a period needs to be used to mark an abbreviation, it would appear as:
0.0 tis'.'
*not*
0.0 tis. | +| ...;... | #,##0.###;#,##0.###-

#,##0.00¤ **; (** #,##0.00¤ **)**

#,##0 % **;** #,##0 - % . | If your language expresses negative numbers in a format other than adding "-" at the front, you can put in two patterns, separated by a semicolon with no space.

- The first format before the ";" will be used to indicate the formatting for zero and positive values.
- The second format after the ";" will be used to indicate the formatting for negative values.
- For accounting-currency, a " - " is not required to indicate the negative pattern.

Also see 💡 **Translation Tips** below | + +💡 **Translation Tips** + +- If your locale grouping separation is not by thousands, then move the comma separator in the format to the correct placement. +- For example, if your language expects to see the separator in the first group of 3 and then 2s thereafter: 1,00,00,000.00, the pattern should reflect that: #,##,##0.###. +- *DO NOT "translate" the placeholder characters #,###.00. For example:* + - *Do not change '.' to ',' even though in your language the decimal point is written with a comma.* + - *Do not* change the zero (0) or hash marks (#) after a decimal point (for example, #,##0.###); those will be reset by computer programs. + - Even if your currency doesn't use any decimal points, do not remove the decimal indicators (for example, ¤#,##0.00). + - Negative patterns can be handled two ways: + - If the negative pattern is the same as the positive pattern with a minus sign in front (e.g. -1,234,00), then that negative pattern will be automatically generated. + - You don't need to supply a negative pattern in that case, and if you do supply one it will be automatically removed. + - If your locale uses a different way to express the negative number (other than a negative sign in front), then use the ";" to provide two patterns. The semicolon after the positive pattern indicates a separate format for the negative pattern. + - For example, in an Accounting currency format, if your locale uses ( )  to express the negative number, specify the negative number with ";", such as #,##0.00¤;(#,##0.00¤). This example format indicates that the negative currencies appear like "(1'234,56£)" instead of "-1'234,56£". + - For example, if the position of the negative sign is before the % symbol, you'd specify:  #,##0%;#,##0-%. +- Move the the currency symbol (¤) or percent sign (%), if it is used in a different position. + - To deal with CLDR's default automatic space handling in place for currency symbol when using a currency code(e.g. USD): + - Do NOT add a space ¤#,##0.### for result: $12 and USD 12. + - ADD a manual space ¤ #,##0.### for result: $ 12 and USD 12. + - Always verify with examples in the right information pane and see how the data from number symbols are used in formatting numbers. The final results of the number formatting will show the correct symbols for decimal, grouping, etc... from [Number Symbols](https://st.unicode.org/cldr-apps/v#/USER/Symbols/) in your locale. +- For bidi scripts (e.g. Arabic and Hebrew) you may need to add directionality markers (U+200E (\ LEFT-TO-RIGHT MARK, U+200F \ RIGHT-TO-LEFT MARK, U+061C \ ARABIC LETTER MARK) + - For number formats in bidi scripts, the Survey Tool shows examples in both a right-to-left context and a neutral context (with both positive and negative numeric values). In the future it may show examples in a left-to-right contex as well. + - The hightest priority is to make the formats look correct in a right-to-left context; the next most important is to make them look correct in a a neutral cotext. If possible it is also a good idea to make them work in a left-to-right context. + - To make them work in different contexts, you can add the directionality markers specified above. As a last resort you can also use the bidi isolate markers U+2066 \ LEFT-TO-RIGHT ISOLATE, U+2067 \ RIGHT-TO-LEFT ISOLATE, and U+2068 \ FIRST STRONG ISOLATE, each of which must be paired with a terminating U+2069 \ POP DIRECTIONAL ISOLATE. However, these bidi isolate markers can result in copy-paste issues if the PDI is not copied along with the other paired mark. + - When adding directionaliry markers to formats, keep in mind that the minus and plus signs may also have directionality markers that affect layout of patterns with those signs. + +![image](../../images/number-currency-formats/information-pane-example.PNG) + +## Types of Number Patterns + +There are four general-purpose number patterns supported in CLDR: decimal, currency, percent, and scientific. + +Remember that the "." and "," are placeholders and do not mean the literal characters: computer programs that use CLDR will change them to the right number symbols for your language as explained in the section above. + +*The currency formats have two types (standard and accounting); each of these may have up to two additional alternate forms (-alphaNextToNumber, -noCurrency) as descibed in the table below.* + +| Type | English Example | Meaning | +|---|---|---| +| currency (standard) | ¤#,##0.00 | Used for currency values. The currency symbol (¤) will be replaced by the appropriate currency symbol for whatever currency is being formatted. The choice of whether to use the international currency symbols (USD, EUR, JAY, RUB,…) or localized symbols ($, €, ¥, руб.,…) is up to the application program that uses CLDR. Note: the number of decimals will be set by programs that use CLDR to whatever is appropriate for the currency, so do not change them; Keep exactly 2 decimals in place. | +| currency-alphaNextToNumber | ¤ #,##0.00 | Alternate currency format to be used when the currency symbol has alphabetic characters adjacent to the numeric part. Typically this just adds a non-breaking space between symbol and number if the the standard currency format does not already have a space. It is used to produc result such as “US$ 23.45” versus “$23.45”. | +| currency-noCurrency | #,##0.00 | Alternate currency format to be used for currency-style formats without the currency symbol. This format may be used, for example, in a table of values all for the same currency (in which repeating the symbol for each value is unnecessary). | +| currency-accounting | ¤#,##0.00;(¤#,##0.00) | Used for currency formats in accounting contexts. | +| currency-accounting-alphaNextToNumber | ¤ #,##0.00;(¤ #,##0.00) | The -alphaNextToNumber variant of the accounting currency format. | +| currency-accounting-noCurrency | #,##0.00;(#,##0.00) | The -noCurrency variant of the accounting currency format. | +| Decimal | #,##0.### | Used for formatting general decimal numbers. The number of decimals will be set by programs that use CLDR, so don't alter them. Typically the only change needed for this format is to the position of the thousands separator (see above 💡 **Translation Tips** ). | +| Percent | #,##0% | Used for percent values, such as 12%. The number of decimals will be set by programs that use CLDR, so don't alter them. | +| Scientific | #E0 | Used for scientific notation. Typically not translated. | + +## Miscellaneous Number Patterns + +| Code | example | Meaning | +|---|---|---| +| approximately | ~{0} | Used to indicate a number that is not exact represented by the placeholder {0}. This is used when an exact number is not required, like for example, to indicate the number of people who have commented on an article. | +| At least | {0}+ | Used to indicate a number that falls within a range with a known **minimum** , represented by the placeholder {0}. This is used when an exact number is not required, like for example, to indicate the number of people who have commented on an article. | +| At most | ≤{0} | Used to indicate a number that falls within a range with a known **maxium** , represented by the placeholder {0}. This is used when an exact number is not required, like for example, to indicate the number of people who have commented on an article. | +| Range | {0}–{1} | Used to indicate a range of numbers | + +## Compact decimal formatting + +There are also patterns for compact forms of numbers, such as the such as "1M" and "1 million". These patterns may be substantially different across languages, as shown by comparing the English patterns to the Japanese patterns in the table below. These patterns also have plural categories. + +*The compact currency formats can have  an -alphaNextToNumber variant, as with the regular currency formats. Ther eis usually no need to provide a -noCurrency variant, since if that is not present the compact decimal formats will be used. However if those are not equivalent to what the noCurrency variant would be, then a separate -noCurrency variant of the ompact currency formats may be provided.* + +| Code | Meaning | English Pattern | English Formatted Example | Japanese Pattern | Japanese Formatted Example | +|:---:|---:|:---:|:---:|:---:|:---:| +| 4-digit-short-one (1000) | **1 thousand = 1,000** | 0K | 1K | 0 (see translation tip below) | 1 | +| 5-digit-short-one (10000) | **10,000** | 00K | 12K | 0万 | 1万 | +| 6-digit-short-one (100000) | **100,000** | 000K | 123K | 00万 | 12万 | +| 7-digit-short-one (1000000) | **1,000,000** | 0.0M | 1.2M | 000万 | 123万 | +| 8-digit-short-one (10000000) | **10,000,000** | 00M | 12M | 0000万 | 1234万 | +| 9-digit-short-one (100000000) | **100,000,000** | 000M | 123M | 0億 | 1 億 | +| 10-digit-short-one (1000000000) | **1,000,000,000** | 0B | 1B | 00億 | 12億 | +| 11-digit-short-one (10000000000) | **10,000,000,000** | 00B | 12B | 000億 | 123億 | +| 12-digit-short-one (100000000000) | **100,000,000,000** | 000B | 123B | 0000億 | 1234億 | +| 13-digit-short-one (1000000000000) | **1,000,000,000,000** | 0T | 1T | 0兆 | 1兆 | +| 14-digit-short-one (10000000000000) | **10,000,000,000,000** | 00T | 12T | 00兆 | 12兆 | +| 15-digit-short-one (100000000000000) | **100,000,000,000,000** | 000T | 123T | 000兆 | 123兆 | + + +When computer programs use CLDR, the number of decimals can be changed by computer programs according to the task its designed for. For example, the pattern for 10,000 in the table below (00K for English, 0万 for Japanese) may be modified to have more or fewer decimals — it could be changed to have 3 digits of accuracy: 00.0K for English, 0.00万 for Japanese. + +💡 **Translation Tips** + +- If it is impossible to abbreviate numbers in that way (e.g. 1M) in your language, then use a single 0 (zero digit). In Compact number formatting, "0" is special character indicating to use the standard decimal formatting/currency formatting. "0" should be used for decimal and currency when there's NO compact/abbreviated way to express the number. For example, in Basque, compact number expression starts with 1M; therefore, all compact numbers up to 1M are expressed as "0". + - For example, the Japanese pattern for 1000 uses a zero digit because 1,000 is expressed with the character 千. This should be avoided wherever possible, however, since it may cause display issues on devices with small screens, such as mobile phones. + - In some languages the text will inflect according to the number. For example, languages that write "1 million" but "2 millions". + - The patterns do not allow for gender or case inflection, so use the most neutral form. + - Remember that these are number patterns, so literal characters like a period (".") must occur within quotation marks if they are not the placeholder standing for the decimal period. See [Pattern Characters](https://cldr.unicode.org/translation/number-currency-formats/number-and-currency-patterns). +- Compact decimal patterns do not require a "0" when there is a single word or a symbol that is unique. For example, in Hebrew and Somali, 4-digit-short-one gets formatted to a single word or symbol, without an extra digit. In a Somali example,1000 would be formatted to "Kun" and not "0 Kun" (in Somali, you would express 1000 as "Kun" not "1 Kun"). + - However, this can **only** be done where the number is unique. For example, in French 4-digit-short-one (1000) is used to format not only 1K, but also 1.1K. If you supply a pattern with no digits, the user can't tell what the number is suppose to be. An error will occur if you try to do this. + - There is a mechanism for special cases of exact matches. A special row can be added for your language for specific numbers, such as exactly 1, where the digits must be omitted. You would see a Code value of 4-digit-short-one, for example. If your language has such cases, please file a ticket to request adding them. +- Different patterns are required for currency and non-currency. Please add both. + +## Plural Forms of Numbers + +Some languages have multiple plural forms for numbers, and will have multiple plural categories for each number. See [Plural Rules and Tool](https://cldr.unicode.org/translation/plurals#TOC-Rules-and-Tool) for numbers mapped to the various plural categories.  + +X digit-one + +X digit-two + +Xdigit-other + +![Unicode copyright](https://www.unicode.org/img/hb_notice.gif) \ No newline at end of file diff --git a/docs/site/translation/number-currency-formats/number-symbols.md b/docs/site/translation/number-currency-formats/number-symbols.md new file mode 100644 index 00000000000..136dcdbe155 --- /dev/null +++ b/docs/site/translation/number-currency-formats/number-symbols.md @@ -0,0 +1,34 @@ +--- +title: Number Symbols +--- + +# Number Symbols + +The following symbols are used to format numbers. The Approved symbols for the locale will be substituted for the placeholders described in [Number Patterns](https://cldr.unicode.org/translation/number-currency-formats/number-and-currency-patterns).  + +For English regional locales (e.g. en\_DE) where English is not the primary language of the country/region (e.g. en\_DE; English as used in Germany), the number formats and date formats should follow the **English formatting usage** in that country/region. Often, the formatting usage in English tend to follow the British or American formatting rather than the formatting of the primary language. Consult with the English versions of prominent magazines or newspapers for guidance on date and number format usage. + +| Name | English Example | | Meaning | +|---|---|---|---| +| decimal | 2,345 **.** 67 | | decimal separator | +| group | 2 **,** 345 . 67 | | grouping separator, typically for thousands | +| plusSign | **+** 23 | * | the plus sign used with numbers

**See description of minusSign for information on usage and directionality markers.** | +| minusSign | **-** 23 | * | the minus sign used with numbers

The + and - symbols are intended for unary usage, and not for binary usage; therefore, the + and - symbols are used to represent either a positive number or a negative number. For example, in an operation 3 -(-2), the defined symbol would be used for the second minus sign, but not for the subtraction operator. Any directionality markers to keep with the number (e.g. <LRM>) should be included. | +| approximatelySign | **~** 23 | * | the sign to indicate that a number is approximate or inexact. May be used with measurement units; for example, "~10 meters" | +| percentSign | 23.4 **%** | * | the percent sign (out of 100) | +| perMille | 234 **‰** | * | the [permille](https://en.wikipedia.org/wiki/Per_mille) sign (out of 1000) | +| exponential | 1.2 **E** 3 | * | used in computers for 1.2×10³. | +| superscriptingExponent | 1.2 **×** 10 3 | * | human-readable format of exponential | +| infinity | **∞** | * | used in +∞ and -∞. | +| nan | **NaN** | * | "not a number". | +| timeSeparator | 2 **:** 33 PM | | This symbol is currently ***not used*** for anything (and is only visible in SurveyTool at comprehensive level) but may be retrieved by CLDR data consumers. It should match the time separator symbol actually used in Date/Time Patterns . | + +💡 **Helpful Tips** + +- The symbols marked with \* (in the 3rd column) in the above table typically do not need to be changed for other languages. +- Review the examples in the Survey Tool on the right-side pane to ensure that all pattern and symbols are as expected. (Shown in the screenshot below) +- The winning symbols in your locale are used in the Number Format examples. Please complete the [Number Symbols](https://st.unicode.org/cldr-apps/v#/ja/Symbols/) before working on [Number Formatting Patterns](https://st.unicode.org/cldr-apps/v#/ja/Number_Formatting_Patterns/). + +![image](../../images/number-currency-formats/number-symbol.JPG) + +![Unicode copyright](https://www.unicode.org/img/hb_notice.gif) \ No newline at end of file diff --git a/docs/site/translation/number-currency-formats/other-patterns.md b/docs/site/translation/number-currency-formats/other-patterns.md new file mode 100644 index 00000000000..4dedb160ac8 --- /dev/null +++ b/docs/site/translation/number-currency-formats/other-patterns.md @@ -0,0 +1,13 @@ +--- +title: Other Patterns +--- + +# Other Patterns + +Following are two types of patterns you will also encounter in Numbers + +The atLeast pattern is used to indicate a number that falls within a range with a known minimum, which is represented by the placeholder {0}. It is used when an exact number is not required, for example to indicate the number of people who have commented on an article. + +The **range** pattern is used to indicate a range of numbers. + +![Unicode copyright](https://www.unicode.org/img/hb_notice.gif) \ No newline at end of file