]> Cypherpunks repositories - gostls13.git/commitdiff
exp/locale/collate/tools/colcmp: fixes some discrepancies between
authorMarcel van Lohuizen <mpvl@golang.org>
Wed, 30 Jan 2013 20:19:03 +0000 (21:19 +0100)
committerMarcel van Lohuizen <mpvl@golang.org>
Wed, 30 Jan 2013 20:19:03 +0000 (21:19 +0100)
ICU and collate package: ICU requires strings to be in FCD form.
Not all NFC strings are in this form, leading to incorrect results.
Change to NFD instead.

R=rsc
CC=golang-dev
https://golang.org/cl/7201043

src/pkg/exp/locale/collate/tools/colcmp/colcmp.go
src/pkg/exp/locale/collate/tools/colcmp/gen.go

index 66d12127bdfc33540ff6b1148eda458e8997931c..cd8c94774c4159762cc68598531d5d1f45685252 100644 (file)
@@ -279,7 +279,7 @@ func parseInput(args []string) []Input {
                }
                s = string(rs)
                if *doNorm {
-                       s = norm.NFC.String(s)
+                       s = norm.NFD.String(s)
                }
                input = append(input, makeInputString(s))
        }
index f9e31187de1e92b204c117a31fdd8e75ce3dbfa6..0a14b10d09db39df380f69a8042b218a94d01614 100644 (file)
@@ -139,7 +139,7 @@ func (g *phraseGenerator) generate(doNorm bool) []Input {
                        buf16 = make([]uint16, 0, buf16Size)
                }
                if doNorm {
-                       buf8 = norm.NFC.AppendString(buf8, str)
+                       buf8 = norm.NFD.AppendString(buf8, str)
                } else {
                        buf8 = append(buf8, str...)
                }