mirror of
https://github.com/mjl-/mox.git
synced 2024-12-29 01:43:48 +03:00
c57aeac7f0
an é (e with accent) can also be written as e+\u0301. the first form is NFC, the second NFD. when logging in, we transform usernames (email addresses) to NFC. so both forms will be accepted. if a client is using NFD, they can log in too. for passwords, we apply the PRECIS "opaquestring", which (despite the name) transforms the value too: unicode spaces are replaced with ascii spaces. the string is also normalized to NFC. PRECIS may reject confusing passwords when you set a password.
30 lines
698 B
Go
30 lines
698 B
Go
// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
|
|
|
|
package width
|
|
|
|
// elem is an entry of the width trie. The high byte is used to encode the type
|
|
// of the rune. The low byte is used to store the index to a mapping entry in
|
|
// the inverseData array.
|
|
type elem uint16
|
|
|
|
const (
|
|
tagNeutral elem = iota << typeShift
|
|
tagAmbiguous
|
|
tagWide
|
|
tagNarrow
|
|
tagFullwidth
|
|
tagHalfwidth
|
|
)
|
|
|
|
const (
|
|
numTypeBits = 3
|
|
typeShift = 16 - numTypeBits
|
|
|
|
// tagNeedsFold is true for all fullwidth and halfwidth runes except for
|
|
// the Won sign U+20A9.
|
|
tagNeedsFold = 0x1000
|
|
|
|
// The Korean Won sign is halfwidth, but SHOULD NOT be mapped to a wide
|
|
// variant.
|
|
wonSign rune = 0x20A9
|
|
)
|