mirror of https://github.com/OpenTTD/OpenTTD
Change: Separate number and currency formats
parent
c41c2d5ee4
commit
226729a743
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0436
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 1
|
||||
##textdir rtl
|
||||
##numberformat 00٬000٬000٬000٬000٬000٬000
|
||||
##currencyformat 00٬000٬000٬000٬000٬000٬000
|
||||
##currencyabbreviations 3=00٬000٬000٬000٬000٬000{NBSP}k|6=00٬000٬000٬000٬000{NBSP}m|9=00٬000٬000٬000{NBSP}bn|12=00٬000٬000{NBSP}tn|15=00٬000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ٫
|
||||
##winlangid 0x0c01
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x042d
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 6
|
||||
##textdir ltr
|
||||
##numberformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyabbreviations 3=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}k|6=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}m|9=00{NBSP}000{NBSP}000{NBSP}000{NBSP}bn|12=00{NBSP}000{NBSP}000{NBSP}tn|15=00{NBSP}000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0423
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 2
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0416
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0402
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}M|9=00.000.000.000{NBSP}G|12=00.000.000{NBSP}T|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0403
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyabbreviations 3=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}k|6=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}m|9=00{NBSP}000{NBSP}000{NBSP}000{NBSP}bn|12=00{NBSP}000{NBSP}000{NBSP}tn|15=00{NBSP}000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0419
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 6
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x041a
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 10
|
||||
##textdir ltr
|
||||
##numberformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyabbreviations 3=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}tis.|6=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}mil.|9=00{NBSP}000{NBSP}000{NBSP}000{NBSP}mld.|12=00{NBSP}000{NBSP}000{NBSP}bil.|15=00{NBSP}000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0405
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0406
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}mj|9=00.000.000.000{NBSP}md|12=00.000.000{NBSP}bn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0413
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x0809
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x0c09
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}K|6=00,000,000,000,000{NBSP}M|9=00,000,000,000{NBSP}B|12=00,000,000{NBSP}T|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x0409
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0000
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0425
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0438
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyabbreviations 6=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}milj.|9=00{NBSP}000{NBSP}000{NBSP}000{NBSP}mrd.|12=00{NBSP}000{NBSP}000{NBSP} t|15=00{NBSP}000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x040b
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 2
|
||||
##textdir ltr
|
||||
##numberformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyabbreviations 3=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}k|6=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}Mio|9=00{NBSP}000{NBSP}000{NBSP}000{NBSP}Mrd|12=00{NBSP}000{NBSP}000{NBSP}kMrd|15=00{NBSP}000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x040c
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0462
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 13
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x083c
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}M|9=00.000.000.000{NBSP}MM|12=00.000.000{NBSP}bn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0456
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}Tsd.|6=00.000.000.000.000{NBSP}Mio.|9=00.000.000.000{NBSP}Mrd.|12=00.000.000{NBSP}Bio.|15=00.000{NBSP}Brd.|18=00{NBSP}Trill.
|
||||
##decimalsep ,
|
||||
##winlangid 0x0407
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 2
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0408
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir rtl
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x040d
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x0439
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 2
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}e|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}mrd|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x040e
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x040f
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0000
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 1
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0421
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 4
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x083c
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0410
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 1
|
||||
##textdir ltr
|
||||
##numberformat 0000京0000兆0000億0000万0000
|
||||
##currencyformat 0000京0000兆0000億0000万0000
|
||||
##currencyabbreviations 4=0000京0000兆0000億0000万|8=0000京0000兆0000億|12=0000京0000兆|16=0000京
|
||||
##decimalsep .
|
||||
##winlangid 0x0411
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 11
|
||||
##textdir ltr
|
||||
##numberformat 0000경0000조0000억0000만0000
|
||||
##currencyformat 0000경0000조0000억0000만0000
|
||||
##currencyabbreviations 4=0000경0000조0000억0000만|8=0000경0000조0000억|12=0000경0000조|16=0000경
|
||||
##decimalsep .
|
||||
##winlangid 0x0412
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyabbreviations 3=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}k|6=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}m|9=00{NBSP}000{NBSP}000{NBSP}000{NBSP}bn|12=00{NBSP}000{NBSP}000{NBSP}tn|15=00{NBSP}000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x0476
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 3
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}tk.|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}mljrd.|12=00.000.000{NBSP}tonna|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0426
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 5
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0427
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}d|6=00.000.000.000.000{NBSP}Mio|9=00.000.000.000{NBSP}Mrd|12=00.000.000{NBSP}Bio|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x046e
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x042f
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x043a
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 12
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x043a
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x044e
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyabbreviations 3=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}k|6=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}m|9=00{NBSP}000{NBSP}000{NBSP}000{NBSP}bn|12=00{NBSP}000{NBSP}000{NBSP}tn|15=00{NBSP}000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0414
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyabbreviations 3=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}k|6=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}m|9=00{NBSP}000{NBSP}000{NBSP}000{NBSP}bn|12=00{NBSP}000{NBSP}000{NBSP}tn|15=00{NBSP}000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0814
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir rtl
|
||||
##numberformat 00٬000٬000٬000٬000٬000٬000
|
||||
##currencyformat 00٬000٬000٬000٬000٬000٬000
|
||||
##currencyabbreviations 3=00٬000٬000٬000٬000٬000{NBSP}k|6=00٬000٬000٬000٬000{NBSP}m|9=00٬000٬000٬000{NBSP}bn|12=00٬000٬000{NBSP}tn|15=00٬000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ٫
|
||||
##winlangid 0x0429
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 7
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}M|9=00.000.000.000{NBSP}G|12=00.000.000{NBSP}T|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0415
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0816
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 14
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}mii|6=00.000.000.000.000{NBSP}mil.|9=00.000.000.000{NBSP}mld.|12=00.000.000{NBSP}bil.|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0418
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 6
|
||||
##textdir ltr
|
||||
##numberformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyabbreviations 3=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}тыс.|6=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}млн|9=00{NBSP}000{NBSP}000{NBSP}000{NBSP}млрд.|12=00{NBSP}000{NBSP}000{NBSP}трлн.|15=00{NBSP}000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0419
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 6
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x7c1a
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
##isocode zh_CN
|
||||
##plural 1
|
||||
##textdir ltr
|
||||
##numberformat 0000京0000兆0000亿0000万0000
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 0000京0000兆0000亿0000万0000
|
||||
##currencyabbreviations 4=0000京0000兆0000亿0000万|8=0000京0000兆0000亿|12=0000京0000兆|16=0000京
|
||||
##decimalsep .
|
||||
##winlangid 0x0804
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 10
|
||||
##textdir ltr
|
||||
##numberformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyformat 00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000
|
||||
##currencyabbreviations 3=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}k|6=00{NBSP}000{NBSP}000{NBSP}000{NBSP}000{NBSP}m|9=00{NBSP}000{NBSP}000{NBSP}000{NBSP}bn|12=00{NBSP}000{NBSP}000{NBSP}tn|15=00{NBSP}000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x041b
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 8
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0424
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}M|9=00.000.000.000{NBSP}kM|12=00.000.000{NBSP}MM|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0c0a
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x080a
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}t|6=00.000.000.000.000{NBSP}mn|9=00.000.000.000{NBSP}md|12=00.000.000{NBSP}bn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x081d
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x0449
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 1
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x041e
|
||||
|
|
|
@ -3,7 +3,8 @@
|
|||
##isocode zh_TW
|
||||
##plural 1
|
||||
##textdir ltr
|
||||
##numberformat 0000京0000兆0000億0000万0000
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 0000京0000兆0000億0000万0000
|
||||
##currencyabbreviations 4=0000京0000兆0000億0000万|8=0000京0000兆0000億|12=0000京0000兆|16=0000京
|
||||
##decimalsep .
|
||||
##winlangid 0x0404
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 1
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}mlyn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x041f
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 6
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}тис.|6=00.000.000.000.000{NBSP}млн|9=00.000.000.000{NBSP}млрд|12=00.000.000{NBSP}трлн|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x0422
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir rtl
|
||||
##numberformat 00٬000٬000٬000٬000٬000٬000
|
||||
##currencyformat 00٬000٬000٬000٬000٬000٬000
|
||||
##currencyabbreviations 3=00٬000٬000٬000٬000٬000{NBSP}k|6=00٬000٬000٬000٬000{NBSP}m|9=00٬000٬000٬000{NBSP}bn|12=00٬000٬000{NBSP}tn|15=00٬000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ٫
|
||||
##winlangid 0x0420
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 1
|
||||
##textdir ltr
|
||||
##numberformat 00.000.000.000.000.000.000
|
||||
##currencyformat 00.000.000.000.000.000.000
|
||||
##currencyabbreviations 3=00.000.000.000.000.000{NBSP}k|6=00.000.000.000.000{NBSP}m|9=00.000.000.000{NBSP}bn|12=00.000.000{NBSP}tn|15=00.000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep ,
|
||||
##winlangid 0x042a
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
##plural 0
|
||||
##textdir ltr
|
||||
##numberformat 00,000,000,000,000,000,000
|
||||
##currencyformat 00,000,000,000,000,000,000
|
||||
##currencyabbreviations 3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi
|
||||
##decimalsep .
|
||||
##winlangid 0x0452
|
||||
|
|
|
@ -33,6 +33,8 @@ struct LanguagePackHeader {
|
|||
|
||||
/** The raw formatting string for numbers. */
|
||||
char number_format[64];
|
||||
/** The raw formatting string for currency numbers. */
|
||||
char currency_format[64];
|
||||
/** The raw formatting string for currency abbreviations. */
|
||||
char currency_abbreviations[256];
|
||||
/** Decimal separator */
|
||||
|
|
|
@ -223,6 +223,7 @@ struct GUISettings {
|
|||
bool scale_bevels; ///< bevels are scaled with GUI scale.
|
||||
|
||||
std::string number_format; ///< formatting string for numbers (like "thousands" grouping)
|
||||
std::string currency_format; ///< formatting string for currency numbers (like "thousands" grouping)
|
||||
std::string currency_abbreviations; ///< mapping to currency number formats for different powers of ten/thresholds
|
||||
std::string digit_decimal_separator; ///< decimal separator
|
||||
|
||||
|
|
|
@ -129,6 +129,14 @@ void FileStringReader::HandlePragma(char *str)
|
|||
if (result.has_value()) FatalError("Invalid number format: {}", *result);
|
||||
|
||||
strecpy(_lang.number_format, str, lastof(_lang.number_format));
|
||||
} else if (!memcmp(str, "currencyformat ", 15)) {
|
||||
str += 15;
|
||||
|
||||
NumberFormatSeparators separators;
|
||||
auto result = ParseNumberFormatSeparators(separators, str);
|
||||
if (result.has_value()) FatalError("Invalid currency format: {}", *result);
|
||||
|
||||
strecpy(_lang.currency_format, str, lastof(_lang.currency_format));
|
||||
} else if (!memcmp(str, "currencyabbreviations ", 22)) {
|
||||
str += 22;
|
||||
|
||||
|
|
|
@ -757,6 +757,7 @@ void StringReader::ParseFile()
|
|||
/* For each new file we parse, reset the genders, and language codes. */
|
||||
MemSetT(&_lang, 0);
|
||||
strecpy(_lang.number_format, "00,000,000,000,000,000,000", lastof(_lang.number_format));
|
||||
strecpy(_lang.currency_format, "00,000,000,000,000,000,000", lastof(_lang.currency_format));
|
||||
strecpy(_lang.currency_abbreviations, "3=00,000,000,000,000,000{NBSP}k|6=00,000,000,000,000{NBSP}m|9=00,000,000,000{NBSP}bn|12=00,000,000{NBSP}tn|15=00,000{NBSP}Qa|18=00{NBSP}Qi", lastof(_lang.currency_abbreviations));
|
||||
strecpy(_lang.digit_decimal_separator, ".", lastof(_lang.digit_decimal_separator));
|
||||
|
||||
|
|
|
@ -56,6 +56,7 @@ const LanguageMetadata *_current_language = nullptr; ///< The currently loaded l
|
|||
TextDirection _current_text_dir; ///< Text direction of the currently selected language.
|
||||
|
||||
static NumberFormatSeparators _number_format_separators;
|
||||
static NumberFormatSeparators _currency_format_separators;
|
||||
static NumberAbbreviations _currency_abbreviations;
|
||||
|
||||
#ifdef WITH_ICU_I18N
|
||||
|
@ -397,6 +398,14 @@ void InitializeNumberFormats()
|
|||
}
|
||||
if (!loaded_number_format) ParseNumberFormatSeparators(_number_format_separators, _current_language->number_format);
|
||||
|
||||
bool loaded_currency_format = false;
|
||||
if (!_settings_client.gui.currency_format.empty()) {
|
||||
auto res = ParseNumberFormatSeparators(_currency_format_separators, _settings_client.gui.currency_format);
|
||||
if (res.has_value()) UserError("The setting 'currency_format' under 'gui' is invalid: {}", *res);
|
||||
loaded_currency_format = !res.has_value();
|
||||
}
|
||||
if (!loaded_currency_format) ParseNumberFormatSeparators(_currency_format_separators, _current_language->currency_format);
|
||||
|
||||
bool loaded_currency_abbreviations = false;
|
||||
if (!_settings_client.gui.currency_abbreviations.empty()) {
|
||||
auto res = ParseNumberAbbreviations(_currency_abbreviations, _settings_client.gui.currency_abbreviations);
|
||||
|
@ -404,7 +413,7 @@ void InitializeNumberFormats()
|
|||
loaded_currency_abbreviations = !res.has_value();
|
||||
}
|
||||
if (!loaded_currency_abbreviations) ParseNumberAbbreviations(_currency_abbreviations, _current_language->currency_abbreviations);
|
||||
_currency_abbreviations.emplace_back(1, _number_format_separators);
|
||||
_currency_abbreviations.emplace_back(1, _currency_format_separators);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -532,7 +541,7 @@ static void FormatGenericCurrency(StringBuilder &builder, const CurrencySpec *sp
|
|||
* The only remaining value is 1 (suffix), so everything that is not 1 */
|
||||
if (spec->symbol_pos != 1) builder += spec->prefix;
|
||||
|
||||
NumberFormatSeparators *format = &_number_format_separators;
|
||||
NumberFormatSeparators *format = &_currency_format_separators;
|
||||
|
||||
/* For huge numbers, compact the number. */
|
||||
if (compact) {
|
||||
|
@ -1895,6 +1904,7 @@ bool LanguagePackHeader::IsValid() const
|
|||
StrValid(this->own_name, lastof(this->own_name)) &&
|
||||
StrValid(this->isocode, lastof(this->isocode)) &&
|
||||
StrValid(this->number_format, lastof(this->number_format)) &&
|
||||
StrValid(this->currency_format, lastof(this->currency_format)) &&
|
||||
StrValid(this->currency_abbreviations, lastof(this->currency_abbreviations)) &&
|
||||
StrValid(this->digit_decimal_separator, lastof(this->digit_decimal_separator));
|
||||
}
|
||||
|
|
|
@ -914,6 +914,15 @@ pre_cb = [](auto format) { NumberFormatSeparators separators; return !ParseNum
|
|||
post_cb = [](auto) { InitializeNumberFormats(); MarkWholeScreenDirty(); }
|
||||
startup = true
|
||||
|
||||
[SDTC_SSTR]
|
||||
var = gui.currency_format
|
||||
flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC
|
||||
type = SLE_STRQ
|
||||
def = nullptr
|
||||
pre_cb = [](auto format) { NumberFormatSeparators separators; return !ParseNumberFormatSeparators(separators, format).has_value(); }
|
||||
post_cb = [](auto) { InitializeNumberFormats(); MarkWholeScreenDirty(); }
|
||||
startup = true
|
||||
|
||||
[SDTC_SSTR]
|
||||
var = gui.currency_abbreviations
|
||||
flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC
|
||||
|
|
Loading…
Reference in New Issue