# *************************************************************************** # * # * Copyright (C) 2025 Apple Inc.All Rights Reserved. # * # *************************************************************************** # # VNI assumes a QWERTY keyboard with numbers, interpreting the following # numbers as diacritics $Acute = 1; $Grave = 2; $Hookabove = 3; $Tilde = 4; $Dotbelow = 5; $Circumflex = 6; $Horn = 7; $Breve = 8; $Dstroke = 9; \u00C0 <> A $Grave; \u00C1 <> A $Acute; \u00C2 <> A $Circumflex; \u00C3 <> A $Tilde; \u00C8 <> E $Grave; \u00C9 <> E $Acute; \u00CA <> E $Circumflex; \u00CC <> I $Grave; \u00CD <> I $Acute; \u00D2 <> O $Grave; \u00D3 <> O $Acute; \u00D4 <> O $Circumflex; \u00D5 <> O $Tilde; \u00D9 <> U $Grave; \u00DA <> U $Acute; \u00DD <> Y $Acute; \u00E0 <> a $Grave; \u00E1 <> a $Acute; \u00E2 <> a $Circumflex; \u00E3 <> a $Tilde; \u00E8 <> e $Grave; \u00E9 <> e $Acute; \u00EA <> e $Circumflex; \u00EC <> i $Grave; \u00ED <> i $Acute; \u00F2 <> o $Grave; \u00F3 <> o $Acute; \u00F4 <> o $Circumflex; \u00F5 <> o $Tilde; \u00F9 <> u $Grave; \u00FA <> u $Acute; \u00FD <> y $Acute; \u0102 <> A $Breve; \u0103 <> a $Breve; \u0110 <> D $Dstroke; \u0111 <> d $Dstroke; \u0128 <> I $Tilde; \u0129 <> i $Tilde; \u0168 <> U $Tilde; \u0169 <> u $Tilde; \u01A0 <> O $Horn; \u01A1 <> o $Horn; \u01AF <> U $Horn; \u01B0 <> u $Horn; \u1EA0 <> A $Dotbelow; \u1EA1 <> a $Dotbelow; \u1EA2 <> A $Hookabove; \u1EA3 <> a $Hookabove; \u1EA4 <> A $Circumflex $Acute; \u1EA5 <> a $Circumflex $Acute; \u1EA6 <> A $Circumflex $Grave; \u1EA7 <> a $Circumflex $Grave; \u1EA8 <> A $Circumflex $Hookabove; \u1EA9 <> a $Circumflex $Hookabove; \u1EAA <> A $Circumflex $Tilde; \u1EAB <> a $Circumflex $Tilde; \u1EAC <> A $Circumflex $Dotbelow; \u1EAD <> a $Circumflex $Dotbelow; \u1EAE <> A $Breve $Acute; \u1EAF <> a $Breve $Acute; \u1EB0 <> A $Breve $Grave; \u1EB1 <> a $Breve $Grave; \u1EB2 <> A $Breve $Hookabove; \u1EB3 <> a $Breve $Hookabove; \u1EB4 <> A $Breve $Tilde; \u1EB5 <> a $Breve $Tilde; \u1EB6 <> A $Breve $Dotbelow; \u1EB7 <> a $Breve $Dotbelow; \u1EB8 <> E $Dotbelow; \u1EB9 <> e $Dotbelow; \u1EBA <> E $Hookabove; \u1EBB <> e $Hookabove; \u1EBC <> E $Tilde; \u1EBD <> e $Tilde; \u1EBE <> E $Circumflex $Acute; \u1EBF <> e $Circumflex $Acute; \u1EC0 <> E $Circumflex $Grave; \u1EC1 <> e $Circumflex $Grave; \u1EC2 <> E $Circumflex $Hookabove; \u1EC3 <> e $Circumflex $Hookabove; \u1EC4 <> E $Circumflex $Tilde; \u1EC5 <> e $Circumflex $Tilde; \u1EC6 <> E $Circumflex $Dotbelow; \u1EC7 <> e $Circumflex $Dotbelow; \u1EC8 <> I $Hookabove; \u1EC9 <> i $Hookabove; \u1ECA <> I $Dotbelow; \u1ECB <> i $Dotbelow; \u1ECC <> O $Dotbelow; \u1ECD <> o $Dotbelow; \u1ECE <> O $Hookabove; \u1ECF <> o $Hookabove; \u1ED0 <> O $Circumflex $Acute; \u1ED1 <> o $Circumflex $Acute; \u1ED2 <> O $Circumflex $Grave; \u1ED3 <> o $Circumflex $Grave; \u1ED4 <> O $Circumflex $Hookabove; \u1ED5 <> o $Circumflex $Hookabove; \u1ED6 <> O $Circumflex $Tilde; \u1ED7 <> o $Circumflex $Tilde; \u1ED8 <> O $Circumflex $Dotbelow; \u1ED9 <> o $Circumflex $Dotbelow; \u1EDA <> O $Horn $Acute; \u1EDB <> o $Horn $Acute; \u1EDC <> O $Horn $Grave; \u1EDD <> o $Horn $Grave; \u1EDE <> O $Horn $Hookabove; \u1EDF <> o $Horn $Hookabove; \u1EE0 <> O $Horn $Tilde; \u1EE1 <> o $Horn $Tilde; \u1EE2 <> O $Horn $Dotbelow; \u1EE3 <> o $Horn $Dotbelow; \u1EE4 <> U $Dotbelow; \u1EE5 <> u $Dotbelow; \u1EE6 <> U $Hookabove; \u1EE7 <> u $Hookabove; \u1EE8 <> U $Horn $Acute; \u1EE9 <> u $Horn $Acute; \u1EEA <> U $Horn $Grave; \u1EEB <> u $Horn $Grave; \u1EEC <> U $Horn $Hookabove; \u1EED <> u $Horn $Hookabove; \u1EEE <> U $Horn $Tilde; \u1EEF <> u $Horn $Tilde; \u1EF0 <> U $Horn $Dotbelow; \u1EF1 <> u $Horn $Dotbelow; \u1EF2 <> Y $Grave; \u1EF3 <> y $Grave; \u1EF4 <> Y $Dotbelow; \u1EF5 <> y $Dotbelow; \u1EF6 <> Y $Hookabove; \u1EF7 <> y $Hookabove; \u1EF8 <> Y $Tilde; \u1EF9 <> y $Tilde;