diff options
author | joeybloggs <Dean.Karn@gmail.com> | 2016-08-15 05:59:51 +0300 |
---|---|---|
committer | joeybloggs <Dean.Karn@gmail.com> | 2016-08-15 05:59:51 +0300 |
commit | 7a50918c70b219070868048aa533f5b142880103 (patch) | |
tree | 3399743aeba4da4c909d0bb6766dcd12b6739d21 /cmd | |
parent | 15e8d9841c4e3269faa135537ab14e77ae1a0a81 (diff) |
Modify to store percent prefix & suffix on translator instance ( when available )
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/generate_resources.go | 8 | ||||
-rw-r--r-- | cmd/translator.tmpl | 16 |
2 files changed, 20 insertions, 4 deletions
diff --git a/cmd/generate_resources.go b/cmd/generate_resources.go index ad7cba87..38d732e3 100644 --- a/cmd/generate_resources.go +++ b/cmd/generate_resources.go @@ -548,6 +548,14 @@ func parsePercentNumberFormat(trans *translator) (results string) { } } + if len(trans.FmtPercentPrefix) > 0 { + trans.FmtPercentPrefix = fmt.Sprintf("%#v", []byte(trans.FmtPercentPrefix)) + } + + if len(trans.FmtPercentSuffix) > 0 { + trans.FmtPercentSuffix = fmt.Sprintf("%#v", []byte(trans.FmtPercentSuffix)) + } + // if len(trans.FmtPercentPrefix) == 1 && trans.FmtPercentPrefix[0] == '%' { // trans.FmtPercentPrefix = "" // trans.FmtPercentInPrefix = true diff --git a/cmd/translator.tmpl b/cmd/translator.tmpl index c7c39909..577ab046 100644 --- a/cmd/translator.tmpl +++ b/cmd/translator.tmpl @@ -15,6 +15,8 @@ type {{ .Locale }} struct { group []byte minus []byte percent []byte + percentPrefix []byte + percentSuffix []byte perMille []byte currencies [][]byte // idx = enum of currency code } @@ -31,6 +33,12 @@ func New() locales.Translator { percent: {{ .Percent }}, perMille: {{ .PerMille }}, currencies: {{ .Currencies }}, + {{ if gt (len .FmtPercentPrefix) 0}} + percentPrefix: {{ .FmtPercentPrefix }}, + {{ end -}} + {{ if gt (len .FmtPercentSuffix) 0}} + percentSuffix: {{ .FmtPercentSuffix }}, + {{ end -}} } } @@ -275,10 +283,10 @@ func({{ .BaseLocale }} *{{ .Locale }}) FmtPercent(num float64, v uint64) []byte {{ if gt (len .FmtPercentPrefix) 0}} {{- if eq (len .FmtPercentPrefix) 1 }} - b = append(b, "{{ .FmtPercentPrefix }}"[0]) + b = append(b, {{ .BaseLocale }}.percentPrefix[0]) {{ else }} - for j := {{ len .FmtPercentPrefix }} - 1; j >= 0; j-- { - b = append(b, "{{ .FmtPercentPrefix }}"[j]) + for j := len({{ .BaseLocale }}.percentPrefix) - 1; j >= 0; j-- { + b = append(b, {{ .BaseLocale }}.percentPrefix[j]) } {{ end }} {{ end }} @@ -303,7 +311,7 @@ func({{ .BaseLocale }} *{{ .Locale }}) FmtPercent(num float64, v uint64) []byte {{ end }} {{ if gt (len .FmtPercentSuffix) 0}} - b = append(b, "{{ .FmtPercentSuffix }}"...) + b = append(b, {{ .BaseLocale }}.percentSuffix...) {{ end }} {{ if and (not .FmtPercentInPrefix) (not .FmtPercentLeft) }} |