Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e7ab3e16 authored by Raph Levien's avatar Raph Levien Committed by Android (Google) Code Review
Browse files

Merge "Update lint check to accommodate new emoji sequences" into nyc-mr1-dev

parents dd056b94 0790ac68
Loading
Loading
Loading
Loading
+35 −1
Original line number Diff line number Diff line
@@ -507,12 +507,46 @@ def compute_expected_emoji():
    all_sequences = set()
    all_sequences.update(_emoji_variation_sequences)

    # add zwj sequences not in the current emoji-zwj-sequences.txt
    adjusted_emoji_zwj_sequences = dict(_emoji_zwj_sequences)
    adjusted_emoji_zwj_sequences.update(_emoji_zwj_sequences)
    # single parent families
    additional_emoji_zwj = (
        (0x1F468, 0x200D, 0x1F466),
        (0x1F468, 0x200D, 0x1F467),
        (0x1F468, 0x200D, 0x1F466, 0x200D, 0x1F466),
        (0x1F468, 0x200D, 0x1F467, 0x200D, 0x1F466),
        (0x1F468, 0x200D, 0x1F467, 0x200D, 0x1F467),
        (0x1F469, 0x200D, 0x1F466),
        (0x1F469, 0x200D, 0x1F467),
        (0x1F469, 0x200D, 0x1F466, 0x200D, 0x1F466),
        (0x1F469, 0x200D, 0x1F467, 0x200D, 0x1F466),
        (0x1F469, 0x200D, 0x1F467, 0x200D, 0x1F467),
    )
    # sequences formed from man and woman and optional fitzpatrick modifier
    modified_extensions = (
        0x2696,
        0x2708,
        0x1F3A8,
        0x1F680,
        0x1F692,
    )
    for seq in additional_emoji_zwj:
        adjusted_emoji_zwj_sequences[seq] = 'Emoji_ZWJ_Sequence'
    for ext in modified_extensions:
        for base in (0x1F468, 0x1F469):
            seq = (base, 0x200D, ext)
            adjusted_emoji_zwj_sequences[seq] = 'Emoji_ZWJ_Sequence'
            for modifier in range(0x1F3FB, 0x1F400):
                seq = (base, modifier, 0x200D, ext)
                adjusted_emoji_zwj_sequences[seq] = 'Emoji_ZWJ_Sequence'

    for sequence in _emoji_sequences.keys():
        sequence = tuple(ch for ch in sequence if ch != EMOJI_VS)
        all_sequences.add(sequence)
        sequence_pieces.update(sequence)

    for sequence in _emoji_zwj_sequences.keys():
    for sequence in adjusted_emoji_zwj_sequences.keys():
        sequence = tuple(ch for ch in sequence if ch != EMOJI_VS)
        all_sequences.add(sequence)
        sequence_pieces.update(sequence)