рдпреВрдирд┐рдХреЛрдб рдХреЗ рд╕рд╛рде рд╣реИрдХрд┐рдВрдЧ (GitHub рдХреЗ рдЙрджрд╛рд╣рд░рдг рдкрд░)

рдпреВрдирд┐рдХреЛрдб рдЕрд╕рд╛рдзрд╛рд░рдг рд░реВрдк рд╕реЗ рдЬрдЯрд┐рд▓ рд╣реИред рдХреБрдЫ рд▓реЛрдЧ рд╕рднреА рдЪрд╛рд▓реЛрдВ рдХреЛ рдЬрд╛рдирддреЗ рд╣реИрдВ: рдЕрджреГрд╢реНрдп рдкрд╛рддреНрд░реЛрдВ рдФрд░ рдирд┐рдпрдВрддреНрд░рдг рдкрд╛рддреНрд░реЛрдВ рд╕реЗ рдЬреЛрдбрд╝реЗ рдФрд░ рд╕рдВрдпреБрдХреНрдд рдЗрдореЛрдЬреАрд╕ (рдЬрдм рдПрдХ рддрд┐рд╣рд╛рдИ рдореЗрдВ рджреЛ рд╡рд░реНрдг рдкрд░рд┐рдгрд╛рдо рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ) рдХреЛ рд╕рд░реЛрдЧреЗрдЯ рдХрд░реЗрдВред рдорд╛рдирдХ рдореЗрдВ 17 рд╡рд┐рдорд╛рдиреЛрдВ рдореЗрдВ 2 16 рдХреЛрдб рд╕реНрдерд╛рди рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпреВрдирд┐рдХреЛрдб рд╕реАрдЦрдиреЗ рдХреА рддреБрд▓рдирд╛ рдПрдХ рдЕрд▓рдЧ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рд╕реАрдЦрдиреЗ рд╕реЗ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред

рдЖрд╢реНрдЪрд░реНрдп рдХреА рдмрд╛рдд рдирд╣реАрдВ, рд╡реЗрдм рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреБрдЫ рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рдирдЬрд░рдЕрдВрджрд╛рдЬ рдХрд░рддреЗ рд╣реИрдВред рджреВрд╕рд░реА рдУрд░, рд╣рдорд▓рд╛рд╡рд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░рдпреЛрдЬрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдпреВрдирд┐рдХреЛрдб рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬреЛ рд╡реЗ рдХрд░рддреЗ рд╣реИрдВред

рд╕реБрд░рдХреНрд╖рд╛ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдЬреЙрди рдЧреНрд░реЗрд╕реА рдиреЗ рднреВрд▓реЗ рд╣реБрдП рдкрд╛рд╕рд╡рд░реНрдб рдХреЛ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП GitHub рдИрдореЗрд▓ рд╕рддреНрдпрд╛рдкрди рдмрдЧ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ ред рдЗрд╕реА рддрд░рд╣ рдХреЗ рдХреАрдбрд╝реЗ рдЕрдиреНрдп рд╕рд╛рдЗрдЯреЛрдВ рдкрд░ рдкрд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдЬреЙрди рдЧреНрд░реЗрд╕реА рдмрддрд╛рддреЗ рд╣реИрдВ рдХрд┐ "рд╕рд╛рдЗрди рдЯреНрд░рд╛рдВрд╕рд▓реЗрд╢рди рдЯрдХреНрдХрд░" рдХреНрдпрд╛ рд╣реИ рдЬрдм рд░реВрдкрд╛рдВрддрд░рдг рдХреЗ рдмрд╛рдж рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд░реНрдгреЛрдВ рдХреЛ рдПрдХ рд╣реА рд╡рд░реНрдг рдореЗрдВ рдЕрдиреБрд╡рд╛рджрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЙрдиреНрд╣реЛрдВрдиреЗ рддреБрд░реНрдХреА рдЪрд░рд┐рддреНрд░ '─▒' ('i' without a dot) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдЬрд┐рд╕рдХрд╛ рдЕрдиреБрд╡рд╛рдж рд▓реИрдЯрд┐рди 'i' рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рддрд╛рдХрд┐ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрд╛рдж рдореЗрд▓ рдПрдбреНрд░реЗрд╕ John@G─▒thub.com рдореЗрдВ рдмрджрд▓ John@Github.com :

 '├Я'.toLowerCase() // 'ss' '├Я'.toLowerCase() === 'SS'.toLowerCase() // true // Note the Turkish dotless i 'John@G─▒thub.com'.toUpperCase() === 'John@Github.com'.toUpperCase() 

рдЗрд╕ рддрд░рд╣ рдХреЗ рдЯрдХрд░рд╛рд╡ рд╕рднреА рдпреВрдирд┐рдХреЛрдб рд╡рд┐рдорд╛рдиреЛрдВ рдкрд░ рдкрд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ: рдпрд╣рд╛рдВ рдкреВрд░реА рд╕реВрдЪреА рд╣реИ ред

рд╣рдо рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЙрди рдкрд╛рддреНрд░реЛрдВ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ рдЬреЛ рд▓реИрдЯрд┐рди рд╡рд░реНрдгреЛрдВ рдореЗрдВ рдЕрдиреБрд╡рд╛рджрд┐рдд рд╣реИрдВред рдХреЗрд╡рд▓ рдЧреНрдпрд╛рд░рд╣ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВред рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рддреАрд╕рд░реЗ рд╕реНрдерд╛рди рдкрд░ рдПрдХ рдмрд┐рдВрджреБ рдХреЗ рдмрд┐рдирд╛ рддреБрд░реНрдХреА рдЪрд┐рд╣реНрди 'i' рд╣реИред

рдорд╛рд░реНрдХрдХреЛрдб рдмрд┐рдВрджреБрдкрд░рд┐рдгрд╛рдо
├Я0x00DFSS
─▒0x0131I
рд░реЛрдВ0x017FS
рдПрдлрдПрдл0xFB00FF
рдлрд╛рдИ0xFB01FI
fl0xFB02FL
ffi0xFB03FFI
FFL0xFB04FFL
рдлреБрдЯ0xFB05ST
рд╕реЗрдВрдЯ0xFB06ST
рдХрд╢реНрдореАрд░0x212Ak

рдЧрд┐рдЯрд╣рдм рдиреЗ рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдХреЛ рдХрд┐рд╕реА рдФрд░ рдХреЗ рдЦрд╛рддреЗ рд╕реЗ рдкрд╛рд╕рд╡рд░реНрдб рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреА, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рднреВрд▓ рдЧрдП рдкрд╛рд╕рд╡рд░реНрдб рдХреЛ рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рдереАред

рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ, рджрд░реНрдЬ рдИрдореЗрд▓ рдкрддреЗ рдХреА рддреБрд▓рдирд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдкрддреЗ рд╕реЗ рдХреА рдЧрдИ рдереАред рд╕рддреНрдпрд╛рдкрди рдПрд▓реНрдЧреЛрд░рд┐рдердо:

  1. рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдкрддрд╛, рд▓реЛрд╡рд░рдХреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рд╣реИред
  2. рджрд░реНрдЬ рдХрд┐рдП рдЧрдП рдкрддреЗ рдХреА рддреБрд▓рдирд╛ рдкрдВрдЬреАрдХреГрдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдкрддреЗ рдХреЗ рд╕рд╛рде рдХреА рдЬрд╛рддреА рд╣реИред
  3. рдпрджрд┐ рдХреЛрдИ рдорд┐рд▓рд╛рди рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдкрд╛рд╕рд╡рд░реНрдб рджрд░реНрдЬ рдкрддреЗ рдкрд░ рднреЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ toLowerCase рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдкрддрд╛ рдЕрдиреБрд╡рд╛рдж рдХреА рдЯрдХреНрдХрд░ рдХреА рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рдереАред

рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рддреНрд░реБрдЯрд┐ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рд╕рд░рд▓ рд╣реИред рдпрд╣ рдкрд╛рд╕рд╡рд░реНрдб рджрд░реНрдЬ рдкрддреЗ рдкрд░ рднреЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИ, рд▓реЗрдХрд┐рди рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реЗ рдкрддреЗ рдкрд░ред

рдмреЗрд╢рдХ, рдпрд╣ рдПрдХ рдкреВрд░реНрдг рдмрдЧ рдлрд┐рдХреНрд╕ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдПрдХ рддреНрд╡рд░рд┐рдд рдкреИрдЪ рд╣реИред рдПрдХ рдФрд░ рдкреВрд░реНрдг рд╕рдорд╛рдзрд╛рди рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП John@G─▒thub.com рдкрд░ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛: John@G─▒thub.com тЖТ xnтАФjohn@gthub-2ub.com ред Punycode рдХреЛ ASCII рд╡рд░реНрдгреЛрдВ рдХреЗ рдЕрдиреБрдХреНрд░рдо рдореЗрдВ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд░реВрдк рд╕реЗ рдбреЛрдореЗрди рдирд╛рдо рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдИрдореЗрд▓ рдкрддреЗ рдХреЛ рдЙрд╕реА рддрд░рд╣ рд╕реЗ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡реЗрдм рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдРрд╕рд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред

рдЬреЙрди рдЧреНрд░реЗрд╕реА рдХреЛ рдирдХрдж рдкреБрд░рд╕реНрдХрд╛рд░ рдФрд░ рднреЗрджреНрдпрддрд╛ рдХреЗ рд▓рд┐рдП 2500 рдЕрдВрдХ рдорд┐рд▓реЗ , рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡рд╣ рдЕрднреА рднреА рдореБрдЦреНрдп рдЧрд┐рддреБрдм рд╣реИрдХрд░ рдЕрд▓реЗрдХреНрдЬреЗрдВрдбрд░ рдбреЛрдмрдХрд┐рди рд╕реЗ рджреВрд░ рд╣реИред GitHub рд╕рд░реНрд╡рд░реЛрдВ рдкрд░ GitHub рдкреЗрдЬ рдмрдирд╛рдиреЗ рд╡рд╛рд▓реЗ рдордирдорд╛рдиреЗ рдХреЛрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рд╛рдорд┐рд▓ рд╣реИред


рдмреНрд▓реИрдХ рдбреЙрдЯ рдЗрдореЛрдЬреА рдкреНрд░рд╛рдкреНрдд рдХрд░рддреЗ рд╕рдордп рдореИрд╕реЗрдВрдЬрд░ рдХреНрд░реИрд╢ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (рдореИрд╕реЗрдВрдЬрд░ рдкрд░ iOS, рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдПрдВрдбреНрд░реЙрдпрдб рдХреЗ рд▓рд┐рдП)

рдпреВрдирд┐рдХреЛрдб рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХреАрдбрд╝реЗ рдХреЗ рдкрд╛рд╕ рдРрд╕реА рд╕рдВрдкрддреНрддрд┐ рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдХрд┐рд╕реА рднреА рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рджрд░реНрдЬ рдХрд┐рдП рдЧрдП рдкрд╛рда рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рдХрдордЬреЛрд░рд┐рдпреЛрдВ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдФрд░ Android рдФрд░ iOS рдХреЗ рд▓рд┐рдП рдореВрд▓ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдореЗрдВ рдореМрдЬреВрдж рд╣реИрдВред рд╕рдмрд╕реЗ рдкреНрд░рд╕рд┐рджреНрдз рдореЗрдВ рд╕реЗ рдПрдХ рдЖрдИрдУрдПрд╕ рдмрдЧ 2015 рд╕реЗ рдерд╛ , рдЬрдм рдПрдХ рдкрд╛рда рд╕рдВрджреЗрд╢ рдореЗрдВ рдХрдИ рдпреВрдирд┐рдХреЛрдб рдкрд╛рддреНрд░реЛрдВ рдиреЗ рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдХреНрд░реИрд╢ рдХрд░ рджрд┐рдпрд╛ рдерд╛ред рдкрд┐рдЫрд▓реЗ рд╕рд╛рд▓, рдПрдХ рд╕рдорд╛рди рдпреВрдирд┐рдХреЛрдб рдмрдЧ рдХреЛ iOS 11.3 рдореЗрдВ рдЦреЛрдЬрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕реЗ "рдмреНрд▓реИрдХ рдбреЙрдЯ" рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдЬрдм рдЖрдк рдЗрдореЛрдЬреА рдХреЛ рдЫреВрддреЗ рд╣реИрдВ рддреЛ рдПрдВрдбреНрд░реЙрдЗрдб рдХреЗ рд▓рд┐рдП рд╡реНрд╣рд╛рдЯреНрд╕рдПрдк рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдПрдХ рд╕рдорд╛рди рджреБрд░реНрдШрдЯрдирд╛ рд╣реБрдИ рдереАред






Source: https://habr.com/ru/post/hi481318/


All Articles