keyboard/altgr: ignore partial decomposition as accented flag
[sheet.git] / Shiar_Sheet / KeyboardChars.pm
index b2ee11d615c7ade7d5bd1ed403e38cc22e56e73e..d0e84c8e082799c31b45428b979b20cf36abe895 100644 (file)
@@ -16,7 +16,7 @@ my $uc = Shiar_Sheet::FormatChar->new;
 
 our %unaccent = qw(
        ⍺ a  ⍵ w  ∊ E  ⍷ E  ⍴ r  ⍳ i  ⍸ i  ○ O  ⍥ O  ⌿ /  ⍟ (*) ⊕ (+)
-       Ʊ U  ǝ e  Ǝ E  ʌ v       ɥ h  ʘ O  ɰ mw ɯ mw Ɯ MW ə @ae Ə @AE
+       Ʊ U  ǝ e  Ǝ E  ʌ vA Ʌ VA ɥ h  ʘ O  ɰ mw ɯ mw Ɯ MW ə @ae Ə @AE
        ɸ PF ʎ yl ɔ co Ɔ CO ɛ 3E ƣ q  Ƣ Q  ∀ A  ∃ E  ∪ u  ∩ n   ≠ !=
        ≈ =~ ∅ /0 ∘ o  ⋅ .  ∫ s  ≝ =d ″ "  ≤ <  ≥ >  √ rV ∛ 3V  ∜ 4V
        Α A  Β B  Γ G  Δ D  Ε E  Ζ Z  Η H  Θ CQ Ι I  Κ K  Λ L  Μ M
@@ -55,7 +55,7 @@ sub kbmodes ($modes) {
                        my $class = (
                                  !defined $v || $c eq $v ? 'no' # identical
                                : $v =~ /\A\p{Mn}+\z/ ? 'g9' # combining accent
-                               : NFKD($v) =~ /\Q$c/ ? 'g2' # decomposed equivalent
+                               : NFKD($v) =~ /\A\Q$c\E\p{Mn}*\z/ ? 'g2' # decomposed equivalent
                                : unidecode($v) =~ /\Q$c\E+/i ? 'g4' # transliterated
                                : $v =~ /\A[\p{Sk}\p{Lm}]+\z/ ? 'g8' # modifier symbol
                                : $v =~ /\A[\pM\pP]+\z/ ? 'g7' # mark