fontique 0.8.0

Font enumeration and fallback.
Documentation
// Copyright 2024 the Parley Authors
// SPDX-License-Identifier: Apache-2.0 OR MIT

//! Support for working with Unicode scripts.

use parlance::Script;

pub trait ScriptExt {
    /// Returns a mapping of scripts to sample text.
    fn all_samples() -> &'static [(Script, &'static str)];

    /// Returns a string containing sample characters for this script.
    fn sample(&self) -> Option<&'static str>;
}

impl ScriptExt for Script {
    fn all_samples() -> &'static [(Self, &'static str)] {
        SCRIPT_SAMPLES
    }

    fn sample(&self) -> Option<&'static str> {
        let ix = SCRIPT_SAMPLES
            .binary_search_by(|entry| entry.0.cmp(self))
            .ok()?;
        SCRIPT_SAMPLES.get(ix).map(|entry| entry.1)
    }
}

#[test]
fn assert_sorted() {
    for w in SCRIPT_SAMPLES.windows(2) {
        let &[prev, curr] = w else { unreachable!() };
        assert!(prev.0 < curr.0);
    }
}

pub const SCRIPT_SAMPLES: &[(Script, &str)] = &[
    (Script::from_str_unchecked("Adlm"), "ðžĪ€ðžĪðžĪ‚ðžĪƒðžĪ„ðžĪ…ðžĪ†ðžĪ‡ðžĪˆðžĪ‰ðžĪŠðžĪ‹ðžĪŒðžĪðžĪŽðžĪ"),
    (Script::from_str_unchecked("Aghb"), "ð”°ð”ąð”ēð”ģð”īð”ĩð”ķ𐔷ð”ļð”đ𐔚ð”ŧð”žð”―ð”ūð”ŋ"),
    (Script::from_str_unchecked("Ahom"), "𑜀𑜁𑜂𑜃𑜄𑜅𑜆𑜇𑜈𑜉𑜊𑜋𑜌𑜍𑜎𑜏"),
    (
        Script::from_str_unchecked("Arab"),
        "\u{600}\u{601}\u{602}\u{603}\u{604}؆؇؈؉؊؋؍؎؏\u{610}\u{611}",
    ),
    (Script::from_str_unchecked("Armi"), "ðĄ€ðĄðĄ‚ðĄƒðĄ„ðĄ…ðĄ†ðĄ‡ðĄˆðĄ‰ðĄŠðĄ‹ðĄŒðĄðĄŽðĄ"),
    (Script::from_str_unchecked("Armn"), "ÔąÔēÔģÔīÔĩÔķÔ·ÔļÔđÔšÔŧÔžÔ―ÔūÔŋՀ"),
    (Script::from_str_unchecked("Avst"), "𐎀𐎁𐎂𐎃𐎄𐎅𐎆𐎇𐎈𐎉𐎊𐎋𐎌𐎍𐎎𐎏"),
    (
        Script::from_str_unchecked("Bali"),
        "\u{1b00}\u{1b01}\u{1b02}\u{1b03}ᮄᮅᮆᮇᮈᮉᮊᮋᮌᮍᮎᮏ",
    ),
    (Script::from_str_unchecked("Bamu"), "ꚠꚡęšĒęšĢęšĪęšĨęšĶ暧ęšĻęšĐꚩęšŦꚮꚭęšŪęšŊ"),
    (Script::from_str_unchecked("Bass"), "ð–Ŧð–Ŧ‘ð–Ŧ’ð–Ŧ“ð–Ŧ”ð–Ŧ•ð–Ŧ–ð–Ŧ—ð–Ŧ˜ð–Ŧ™ð–Ŧšð–Ŧ›ð–Ŧœð–Ŧð–Ŧžð–ŦŸ"),
    (Script::from_str_unchecked("Batk"), "áŊ€áŊáŊ‚áŊƒáŊ„áŊ…áŊ†áŊ‡áŊˆáŊ‰áŊŠáŊ‹áŊŒáŊáŊŽáŊ"),
    (Script::from_str_unchecked("Beng"), "āĶ€\u{981}āĶ‚ā̓āĶ…ā͆ā͇ā͈ā͉ā͊āĶ‹ā͌āĶā͐āĶ“āĶ”"),
    (Script::from_str_unchecked("Bhks"), "𑰀𑰁𑰂𑰃𑰄𑰅𑰆𑰇𑰈𑰊𑰋𑰌𑰍𑰎𑰏𑰐"),
    (
        Script::from_str_unchecked("Bopo"),
        "ËŠËŦㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒ",
    ),
    (
        Script::from_str_unchecked("Brah"),
        "𑀀\u{11001}𑀂𑀃𑀄𑀅𑀆𑀇𑀈𑀉𑀊𑀋𑀌𑀍𑀎𑀏",
    ),
    (Script::from_str_unchecked("Brai"), "⠀⠁⠂⠃⠄⠅⠆⠇⠈⠉⠊⠋⠌⠍⠎⠏"),
    (Script::from_str_unchecked("Bugi"), "áĻ€áρáĻ‚áσáĻ„áĻ…áφáχáψáωáϊáĻ‹áόáĻáĻŽáĻ"),
    (Script::from_str_unchecked("Buhd"), "ᝀᝁᝂᝃᝄᝅᝆᝇᝈᝉᝊᝋᝌᝍᝎᝏ"),
    (
        Script::from_str_unchecked("Cakm"),
        "\u{11100}\u{11101}\u{11102}𑄃𑄄𑄅𑄆𑄇𑄈𑄉𑄊𑄋𑄌𑄍𑄎𑄏",
    ),
    (Script::from_str_unchecked("Cans"), "᐀ᐁᐂᐃᐄᐅᐆᐇᐈᐉᐊᐋᐌᐍᐎᐏ"),
    (Script::from_str_unchecked("Cari"), "ðŠ ðŠĄðŠĒðŠĢðŠĪðŠĨðŠĶ𐊧ðŠĻðŠĐ𐊊ðŠŦ𐊎𐊭ðŠŪðŠŊ"),
    (Script::from_str_unchecked("Cham"), "ęĻ€ęρęĻ‚ęσęĻ„ęĻ…ęφęχęψęωęϊęĻ‹ęόęĻęĻŽęĻ"),
    (Script::from_str_unchecked("Cher"), "ᎠᎡáŽĒáŽĢáŽĪáŽĨáŽĶᎧáŽĻáŽĐᎊáŽŦᎮᎭáŽŪáŽŊ"),
    (Script::from_str_unchecked("Chrs"), "ðū°ðūąðūēðūģðūīðūĩðūķðū·ðūļðūđðūšðūŧðūžðū―ðūūðūŋ"),
    (Script::from_str_unchecked("Copt"), "ÏĒÏĢÏĪÏĨÏĶϧÏĻÏĐÏŠÏŦÏŽÏ­ÏŪÏŊâē€âē"),
    (Script::from_str_unchecked("Cpmn"), "ð’ūð’ū‘ð’ū’ð’ū“ð’ū”ð’ū•ð’ū–ð’ū—ð’ū˜ð’ū™ð’ūšð’ū›ð’ūœð’ūð’ūžð’ūŸ"),
    (Script::from_str_unchecked("Cprt"), "𐠀𐠁𐠂𐠃𐠄𐠅𐠈𐠊𐠋𐠌𐠍𐠎𐠏𐠐𐠑𐠒"),
    (Script::from_str_unchecked("Cyrl"), "ЀЁЂЃЄЅІЇЈЉЊЋЌЍЎЏ"),
    (
        Script::from_str_unchecked("Deva"),
        "\u{900}\u{901}\u{902}ā΃āĪ„āĪ…āΆā·āΈāΉāΊāĪ‹āΌāĪāĪŽāĪ",
    ),
    (Script::from_str_unchecked("Diak"), "ð‘Ī€ð‘΁ð‘Ī‚ð‘Īƒð‘Ī„ð‘Ī…ð‘Άð‘Ήð‘ĪŒð‘Īð‘ĪŽð‘Īð‘ΐð‘Ī‘ð‘Ī’ð‘Ī“"),
    (Script::from_str_unchecked("Dogr"), "𑠀𑠁𑠂𑠃𑠄𑠅𑠆𑠇𑠈𑠉𑠊𑠋𑠌𑠍𑠎𑠏"),
    (Script::from_str_unchecked("Dsrt"), "𐐀𐐁𐐂𐐃𐐄𐐅𐐆𐐇𐐈𐐉𐐊𐐋𐐌𐐍𐐎𐐏"),
    (Script::from_str_unchecked("Dupl"), "𛰀𛰁𛰂𛰃𛰄𛰅𛰆𛰇𛰈𛰉𛰊𛰋𛰌𛰍𛰎𛰏"),
    (Script::from_str_unchecked("Egyp"), "𓀀𓀁𓀂𓀃𓀄𓀅𓀆𓀇𓀈𓀉𓀊𓀋𓀌𓀍𓀎𓀏"),
    (Script::from_str_unchecked("Elba"), "𐔀𐔁𐔂𐔃𐔄𐔅𐔆𐔇𐔈𐔉𐔊𐔋𐔌𐔍𐔎𐔏"),
    (Script::from_str_unchecked("Elym"), "ðŋ ðŋĄðŋĒðŋĢðŋĪðŋĨðŋĶðŋ§ðŋĻðŋĐðŋŠðŋŦðŋŽðŋ­ðŋŪðŋŊ"),
    (Script::from_str_unchecked("Ethi"), "ሀሁሂሃሄህሆሇለሉሊላሌልሎሏ"),
    (Script::from_str_unchecked("Geor"), "ႠႡá‚Ēá‚Ģá‚Īá‚Ĩá‚ĶႧá‚Ļá‚ĐႩá‚ŦႮႭá‚Ūá‚Ŋ"),
    (Script::from_str_unchecked("Glag"), "ⰀⰁⰂⰃⰄⰅⰆⰇⰈⰉⰊⰋⰌⰍⰎⰏ"),
    (Script::from_str_unchecked("Gong"), "ð‘ĩ ð‘ĩĄð‘ĩĒð‘ĩĢð‘ĩĪð‘ĩĨð‘ĩ§ð‘ĩĻð‘ĩŠð‘ĩŦð‘ĩŽð‘ĩ­ð‘ĩŪð‘ĩŊð‘ĩ°ð‘ĩą"),
    (Script::from_str_unchecked("Gonm"), "ð‘ī€ð‘īð‘ī‚ð‘īƒð‘ī„ð‘ī…ð‘ī†ð‘īˆð‘ī‰ð‘ī‹ð‘īŒð‘īð‘īŽð‘īð‘īð‘ī‘"),
    (Script::from_str_unchecked("Goth"), "ðŒ°ðŒąðŒēðŒģðŒīðŒĩðŒķ𐌷ðŒļðŒđ𐌚ðŒŧðŒžðŒ―ðŒūðŒŋ"),
    (
        Script::from_str_unchecked("Gran"),
        "\u{11300}\u{11301}𑌂𑌃𑌅𑌆𑌇𑌈𑌉𑌊𑌋𑌌𑌏𑌐𑌓𑌔",
    ),
    (Script::from_str_unchecked("Grek"), "Ͱ͹ÍēÍģÍĩÍķÍ·ÍšÍŧÍžÍ―Íŋ΄ΆΈΉ"),
    (
        Script::from_str_unchecked("Gujr"),
        "\u{a81}\u{a82}āŠƒāŠ…āŠ†āŠ‡āŠˆāŠ‰āŠŠāŠ‹āŠŒāŠāŠāŠāŠ‘āŠ“",
    ),
    (
        Script::from_str_unchecked("Guru"),
        "\u{a01}\u{a02}āσāĻ…āφāχāψāωāϊāĻāϐāĻ“āĻ”āĻ•āĻ–āĻ—",
    ),
    (Script::from_str_unchecked("Hang"), "가"),
    (Script::from_str_unchecked("Hani"), "äŧŠ"),
    (Script::from_str_unchecked("Hano"), "ᜠᜡáœĒáœĢáœĪáœĨáœĶᜧáœĻáœĐᜩáœŦᜮᜭáœŪáœŊ"),
    (Script::from_str_unchecked("Hatr"), "ðĢ ðĢĄðĢĒðĢĢðĢĪðĢĨðĢĶðĢ§ðĢĻðĢĐðĢŠðĢŦðĢŽðĢ­ðĢŪðĢŊ"),
    (
        Script::from_str_unchecked("Hebr"),
        "\u{591}\u{592}\u{593}\u{594}\u{595}\u{596}\u{597}\u{598}\u{599}\u{59a}\u{59b}\u{59c}\u{59d}\u{59e}\u{59f}\u{5a0}",
    ),
    (
        Script::from_str_unchecked("Hira"),
        "ぁあぃいぅうぇえぉおかがきぎくぐ",
    ),
    (Script::from_str_unchecked("Hluw"), "𔐀𔐁𔐂𔐃𔐄𔐅𔐆𔐇𔐈𔐉𔐊𔐋𔐌𔐍𔐎𔐏"),
    (Script::from_str_unchecked("Hmng"), "𖎀𖎁𖎂𖎃𖎄𖎅𖎆𖎇𖎈𖎉𖎊𖎋𖎌𖎍𖎎𖎏"),
    (Script::from_str_unchecked("Hmnp"), "𞄀𞄁𞄂𞄃𞄄𞄅𞄆𞄇𞄈𞄉𞄊𞄋𞄌𞄍𞄎𞄏"),
    (Script::from_str_unchecked("Hung"), "ðē€ðēðē‚ðēƒðē„ðē…ðē†ðē‡ðēˆðē‰ðēŠðē‹ðēŒðēðēŽðē"),
    (Script::from_str_unchecked("Ital"), "𐌀𐌁𐌂𐌃𐌄𐌅𐌆𐌇𐌈𐌉𐌊𐌋𐌌𐌍𐌎𐌏"),
    (
        Script::from_str_unchecked("Java"),
        "\u{a980}\u{a981}\u{a982}ę̓ęĶ„ęĶ…ę͆ę͇ę͈ę͉ę͊ęĶ‹ę͌ęĶęĶŽęĶ",
    ),
    (Script::from_str_unchecked("Kali"), "ęĪ€ę΁ęĪ‚ę΃ęĪ„ęĪ…ęΆę·ęΈęΉęΊęĪ‹ęΌęĪęĪŽęĪ"),
    (
        Script::from_str_unchecked("Kana"),
        "ã‚Ąã‚Ēã‚Ģã‚Īã‚Ĩã‚Ķェã‚Ļã‚Đりã‚Ŧゎキã‚Ūã‚Ŋグ",
    ),
    (
        Script::from_str_unchecked("Kawi"),
        "\u{11f00}\u{11f01}𑞂𑞃𑞄𑞅𑞆𑞇𑞈𑞉𑞊𑞋𑞌𑞍𑞎𑞏",
    ),
    (
        Script::from_str_unchecked("Khar"),
        "ðĻ€\u{10a01}\u{10a02}\u{10a03}\u{10a05}\u{10a06}\u{10a0c}\u{10a0d}\u{10a0e}\u{10a0f}ðĻðĻ‘ðĻ’ðĻ“ðĻ•ðĻ–",
    ),
    (Script::from_str_unchecked("Khmr"), "កខគឃងចឆជឈញដឋឌឍណត"),
    (Script::from_str_unchecked("Khoj"), "𑈀𑈁𑈂𑈃𑈄𑈅𑈆𑈇𑈈𑈉𑈊𑈋𑈌𑈍𑈎𑈏"),
    (
        Script::from_str_unchecked("Kits"),
        "\u{16fe4}𘎀𘎁𘎂𘎃𘎄𘎅𘎆𘎇𘎈𘎉𘎊𘎋𘎌𘎍𘎎",
    ),
    (Script::from_str_unchecked("Knda"), "āē€\u{c81}āē‚āēƒāē„āē…āē†āē‡āēˆāē‰āēŠāē‹āēŒāēŽāēāē"),
    (
        Script::from_str_unchecked("Kthi"),
        "\u{11080}\u{11081}𑂂𑂃𑂄𑂅𑂆𑂇𑂈𑂉𑂊𑂋𑂌𑂍𑂎𑂏",
    ),
    (Script::from_str_unchecked("Lana"), "áĻ áĻĄáĻĒáĻĢáĻĪáĻĨáĻĶáϧáĻĻáĻĐáĻŠáĻŦáĻŽáĻ­áĻŪáĻŊ"),
    (Script::from_str_unchecked("Laoo"), "āšāš‚āš„āš†āš‡āšˆāš‰āšŠāšŒāšāšŽāšāšāš‘āš’āš“"),
    (Script::from_str_unchecked("Latn"), "abcdefgABCDEFG"),
    (Script::from_str_unchecked("Lepc"), "ᰀᰁᰂᰃᰄᰅᰆᰇᰈᰉᰊᰋᰌᰍᰎᰏ"),
    (Script::from_str_unchecked("Limb"), "áĪ€á΁áĪ‚á΃áĪ„áĪ…áΆá·áΈáΉáΊáĪ‹áΌáĪáĪŽáĪ"),
    (Script::from_str_unchecked("Lina"), "𐘀𐘁𐘂𐘃𐘄𐘅𐘆𐘇𐘈𐘉𐘊𐘋𐘌𐘍𐘎𐘏"),
    (Script::from_str_unchecked("Linb"), "𐀀𐀁𐀂𐀃𐀄𐀅𐀆𐀇𐀈𐀉𐀊𐀋𐀍𐀎𐀏𐀐"),
    (Script::from_str_unchecked("Lisu"), "ꓐꓑꓒꓓꓔꓕꓖꓗꓘꓙꓚꓛꓜꓝꓞꓟ"),
    (Script::from_str_unchecked("Lyci"), "𐊀𐊁𐊂𐊃𐊄𐊅𐊆𐊇𐊈𐊉𐊊𐊋𐊌𐊍𐊎𐊏"),
    (Script::from_str_unchecked("Lydi"), "ðĪ ðĪĄðĪĒðĪĢðĪĪðĪĨðĪĶðĪ§ðĪĻðĪĐðĪŠðĪŦðĪŽðĪ­ðĪŪðĪŊ"),
    (Script::from_str_unchecked("Mahj"), "𑅐𑅑𑅒𑅓𑅔𑅕𑅖𑅗𑅘𑅙𑅚𑅛𑅜𑅝𑅞𑅟"),
    (Script::from_str_unchecked("Maka"), "ð‘ŧ ð‘ŧĄð‘ŧĒð‘ŧĢð‘ŧĪð‘ŧĨð‘ŧĶð‘ŧ§ð‘ŧĻð‘ŧĐð‘ŧŠð‘ŧŦð‘ŧŽð‘ŧ­ð‘ŧŪð‘ŧŊ"),
    (Script::from_str_unchecked("Mand"), "āĄ€āĄāĄ‚āĄƒāĄ„āĄ…āĄ†āĄ‡āĄˆāĄ‰āĄŠāĄ‹āĄŒāĄāĄŽāĄ"),
    (Script::from_str_unchecked("Mani"), "ðŦ€ðŦðŦ‚ðŦƒðŦ„ðŦ…ðŦ†ðŦ‡ðŦˆðŦ‰ðŦŠðŦ‹ðŦŒðŦðŦŽðŦ"),
    (Script::from_str_unchecked("Marc"), "ð‘ą°ð‘ąąð‘ąēð‘ąģð‘ąīð‘ąĩð‘ąķð‘ą·ð‘ąļð‘ąđð‘ąšð‘ąŧð‘ąžð‘ą―ð‘ąūð‘ąŋ"),
    (Script::from_str_unchecked("Medf"), "ð–đ€ð–đð–đ‚ð–đƒð–đ„ð–đ…ð–đ†ð–đ‡ð–đˆð–đ‰ð–đŠð–đ‹ð–đŒð–đð–đŽð–đ"),
    (Script::from_str_unchecked("Mend"), "𞠀𞠁𞠂𞠃𞠄𞠅𞠆𞠇𞠈𞠉𞠊𞠋𞠌𞠍𞠎𞠏"),
    (Script::from_str_unchecked("Merc"), "ðĶ ðĶĄðĶĒðĶĢðĶĪðĶĨðĶĶðĶ§ðĶĻðĶĐðĶŠðĶŦðĶŽðĶ­ðĶŪðĶŊ"),
    (Script::from_str_unchecked("Mero"), "ðĶ€ðĶðĶ‚ðĶƒðĶ„ðĶ…ðĶ†ðĶ‡ðĶˆðĶ‰ðĶŠðĶ‹ðĶŒðĶðĶŽðĶ"),
    (
        Script::from_str_unchecked("Mlym"),
        "\u{d00}\u{d01}āī‚āīƒāī„āī…āī†āī‡āīˆāī‰āīŠāī‹āīŒāīŽāīāī",
    ),
    (Script::from_str_unchecked("Modi"), "𑘀𑘁𑘂𑘃𑘄𑘅𑘆𑘇𑘈𑘉𑘊𑘋𑘌𑘍𑘎𑘏"),
    (
        Script::from_str_unchecked("Mong"),
        "᠀᠁᠄᠆᠇᠈᠉᠊\u{180b}\u{180c}\u{180d}\u{180e}\u{180f}᠐᠑᠒",
    ),
    (Script::from_str_unchecked("Mroo"), "ð–Đ€ð–Ёð–Đ‚ð–Đƒð–Đ„ð–Đ…ð–Іð–Їð–Đˆð–Љð–ĐŠð–Đ‹ð–ĐŒð–Ѝð–ĐŽð–Џ"),
    (
        Script::from_str_unchecked("Mtei"),
        "ęŦ ęŦĄęŦĒęŦĢęŦĪęŦĨęŦĶęŦ§ęŦĻęŦĐęŦŠęŦŦ\u{aaec}\u{aaed}ęŦŪęŦŊ",
    ),
    (Script::from_str_unchecked("Mult"), "𑊀𑊁𑊂𑊃𑊄𑊅𑊆𑊈𑊊𑊋𑊌𑊍𑊏𑊐𑊑𑊒"),
    (Script::from_str_unchecked("Mymr"), "ကခဂဃငစဆဇဈဉညဋဌဍဎဏ"),
    (Script::from_str_unchecked("Nagm"), "𞓐𞓑𞓒𞓓𞓔𞓕𞓖𞓗𞓘𞓙𞓚𞓛𞓜𞓝𞓞𞓟"),
    (Script::from_str_unchecked("Nand"), "ð‘Ķ ð‘ĶĄð‘ĶĒð‘ĶĢð‘ĶĪð‘ĶĨð‘ĶĶð‘ͧð‘ĶŠð‘ĶŦð‘ĶŽð‘Ķ­ð‘ĶŪð‘ĶŊð‘Ͱð‘Ķą"),
    (Script::from_str_unchecked("Narb"), "𐊀𐊁𐊂𐊃𐊄𐊅𐊆𐊇𐊈𐊉𐊊𐊋𐊌𐊍𐊎𐊏"),
    (Script::from_str_unchecked("Nbat"), "ðĒ€ðĒðĒ‚ðĒƒðĒ„ðĒ…ðĒ†ðĒ‡ðĒˆðĒ‰ðĒŠðĒ‹ðĒŒðĒðĒŽðĒ"),
    (Script::from_str_unchecked("Newa"), "𑐀𑐁𑐂𑐃𑐄𑐅𑐆𑐇𑐈𑐉𑐊𑐋𑐌𑐍𑐎𑐏"),
    (Script::from_str_unchecked("Nkoo"), "߀߁߂߃߄߅߆߇߈߉ߊߋߌߍߎߏ"),
    (
        Script::from_str_unchecked("Nshu"),
        "ð–ŋĄð›…°ð›…ąð›…ēð›…ģð›…īð›…ĩð›…ķ𛅷ð›…ļð›…đð›…šð›…ŧð›…žð›…―ð›…ū",
    ),
    (
        Script::from_str_unchecked("Ogam"),
        "\u{1680}ᚁᚂᚃᚄᚅᚆᚇᚈᚉᚊᚋᚌᚍᚎᚏ",
    ),
    (Script::from_str_unchecked("Olck"), "᱐᱑᱒᱓᱔᱕᱖᱗᱘᱙ᱚᱛᱜᱝᱞᱟ"),
    (Script::from_str_unchecked("Orkh"), "𐰀𐰁𐰂𐰃𐰄𐰅𐰆𐰇𐰈𐰉𐰊𐰋𐰌𐰍𐰎𐰏"),
    (Script::from_str_unchecked("Orya"), "\u{b01}āŽ‚āŽƒāŽ…āŽ†āŽ‡āŽˆāŽ‰āŽŠāŽ‹āŽŒāŽāŽāŽ“āŽ”āŽ•"),
    (Script::from_str_unchecked("Osge"), "ð’°ð’ąð’ēð’ģð’īð’ĩð’ķ𐒷ð’ļð’đ𐒚ð’ŧð’žð’―ð’ūð’ŋ"),
    (Script::from_str_unchecked("Osma"), "𐒀𐒁𐒂𐒃𐒄𐒅𐒆𐒇𐒈𐒉𐒊𐒋𐒌𐒍𐒎𐒏"),
    (Script::from_str_unchecked("Ougr"), "ð―°ð―ąð―ēð―ģð―īð―ĩð―ķð―·ð―ļð―đð―šð―ŧð―žð――ð―ūð―ŋ"),
    (Script::from_str_unchecked("Palm"), "ðĄ ðĄĄðĄĒðĄĢðĄĪðĄĨðĄĶðĄ§ðĄĻðĄĐðĄŠðĄŦðĄŽðĄ­ðĄŪðĄŊ"),
    (Script::from_str_unchecked("Pauc"), "ð‘Ŧ€ð‘Ŧð‘Ŧ‚ð‘Ŧƒð‘Ŧ„ð‘Ŧ…ð‘Ŧ†ð‘Ŧ‡ð‘Ŧˆð‘Ŧ‰ð‘ŦŠð‘Ŧ‹ð‘ŦŒð‘Ŧð‘ŦŽð‘Ŧ"),
    (Script::from_str_unchecked("Perm"), "𐍐𐍑𐍒𐍓𐍔𐍕𐍖𐍗𐍘𐍙𐍚𐍛𐍜𐍝𐍞𐍟"),
    (Script::from_str_unchecked("Phag"), "ꡀꡁꡂꡃꡄꡅꡆꡇꡈꡉꡊꡋꡌꡍꡎꡏ"),
    (Script::from_str_unchecked("Phli"), "ð­ ð­Ąð­Ēð­Ģð­Īð­Ĩð­Ķ𐭧ð­Ļð­Đ𐭊ð­Ŧ𐭎𐭭ð­Ūð­Ŋ"),
    (Script::from_str_unchecked("Phlp"), "ðŪ€ðŪðŪ‚ðŪƒðŪ„ðŪ…ðŪ†ðŪ‡ðŪˆðŪ‰ðŪŠðŪ‹ðŪŒðŪðŪŽðŪ"),
    (Script::from_str_unchecked("Phnx"), "ðĪ€ðĪðĪ‚ðĪƒðĪ„ðĪ…ðĪ†ðĪ‡ðĪˆðĪ‰ðĪŠðĪ‹ðĪŒðĪðĪŽðĪ"),
    (Script::from_str_unchecked("Plrd"), "𖞀𖞁𖞂𖞃𖞄𖞅𖞆𖞇𖞈𖞉𖞊𖞋𖞌𖞍𖞎𖞏"),
    (Script::from_str_unchecked("Prti"), "𐭀𐭁𐭂𐭃𐭄𐭅𐭆𐭇𐭈𐭉𐭊𐭋𐭌𐭍𐭎𐭏"),
    (Script::from_str_unchecked("Rjng"), "ęΰęĪąęĪēęĪģęĪīęĪĩęĪķęĪ·ęĪļęĪđęĪšęĪŧęĪžęĪ―ęĪūęĪŋ"),
    (Script::from_str_unchecked("Rohg"), "ðī€ðīðī‚ðīƒðī„ðī…ðī†ðī‡ðīˆðī‰ðīŠðī‹ðīŒðīðīŽðī"),
    (Script::from_str_unchecked("Runr"), "ᚠᚡášĒášĢášĪášĨášĶᚧášĻášĐᚩášŦᚮᚭášŪášŊ"),
    (Script::from_str_unchecked("Samr"), "ā €ā ā ‚ā ƒā „ā …ā †ā ‡ā ˆā ‰ā Šā ‹ā Œā ā Žā "),
    (Script::from_str_unchecked("Sarb"), "ðĐ ðĐĄðĐĒðĐĢðĐĪðĐĨðĐĶðĐ§ðĐĻðĐĐðĐŠðĐŦðĐŽðĐ­ðĐŪðĐŊ"),
    (Script::from_str_unchecked("Saur"), "ęĒ€ęǁęĒ‚ęǃęĒ„ęĒ…ędžęLJęLjęljęNJęĒ‹ęnjęĒęĒŽęĒ"),
    (Script::from_str_unchecked("Sgnw"), "𝠀𝠁𝠂𝠃𝠄𝠅𝠆𝠇𝠈𝠉𝠊𝠋𝠌𝠍𝠎𝠏"),
    (Script::from_str_unchecked("Shaw"), "𐑐𐑑𐑒𐑓𐑔𐑕𐑖𐑗𐑘𐑙𐑚𐑛𐑜𐑝𐑞𐑟"),
    (
        Script::from_str_unchecked("Shrd"),
        "\u{11180}\u{11181}𑆂𑆃𑆄𑆅𑆆𑆇𑆈𑆉𑆊𑆋𑆌𑆍𑆎𑆏",
    ),
    (Script::from_str_unchecked("Sidd"), "𑖀𑖁𑖂𑖃𑖄𑖅𑖆𑖇𑖈𑖉𑖊𑖋𑖌𑖍𑖎𑖏"),
    (Script::from_str_unchecked("Sind"), "ð‘Š°ð‘Šąð‘Šēð‘Šģð‘Šīð‘Šĩð‘Šķ𑊷ð‘Šļð‘Šđ𑊚ð‘Šŧð‘Šžð‘Š―ð‘Šūð‘Šŋ"),
    (Script::from_str_unchecked("Sinh"), "\u{d81}āķ‚āķƒāķ…āķ†āķ‡āķˆāķ‰āķŠāķ‹āķŒāķāķŽāķāķāķ‘"),
    (Script::from_str_unchecked("Sogd"), "ðž°ðžąðžēðžģðžīðžĩðžķ𐞷ðžļðžđ𐞚ðžŧðžžðž―ðžūðžŋ"),
    (Script::from_str_unchecked("Sogo"), "𐞀𐞁𐞂𐞃𐞄𐞅𐞆𐞇𐞈𐞉𐞊𐞋𐞌𐞍𐞎𐞏"),
    (Script::from_str_unchecked("Sora"), "𑃐𑃑𑃒𑃓𑃔𑃕𑃖𑃗𑃘𑃙𑃚𑃛𑃜𑃝𑃞𑃟"),
    (
        Script::from_str_unchecked("Soyo"),
        "ð‘А\u{11a51}\u{11a52}\u{11a53}\u{11a54}\u{11a55}\u{11a56}ð‘Đ—ð‘Đ˜\u{11a59}\u{11a5a}\u{11a5b}ð‘Đœð‘Нð‘Đžð‘ĐŸ",
    ),
    (
        Script::from_str_unchecked("Sund"),
        "\u{1b80}\u{1b81}áŪ‚áۃáŪ„áŪ…áŪ†áŪ‡áۈáŪ‰áۊáŪ‹áیáŪáŪŽáŪ",
    ),
    (
        Script::from_str_unchecked("Sylo"),
        "ꠀꠁ\u{a802}ꠃꠄꠅ\u{a806}ꠇꠈꠉꠊ\u{a80b}ꠌꠍꠎꠏ",
    ),
    (Script::from_str_unchecked("Syrc"), "܀܁܂܃܄܅܆܇܈܉܊܋܌܍\u{70f}ܐ"),
    (Script::from_str_unchecked("Tagb"), "ᝠᝡáĒáĢáĪáĨáĶᝧáĻáĐᝊáŦᝎáŪáŊᝰ"),
    (Script::from_str_unchecked("Takr"), "𑚀𑚁𑚂𑚃𑚄𑚅𑚆𑚇𑚈𑚉𑚊𑚋𑚌𑚍𑚎𑚏"),
    (Script::from_str_unchecked("Tale"), "áĨáĨ‘áĨ’áĨ“áĨ”áĨ•áĨ–áĨ—áĨ˜áĨ™áĨšáĨ›áĨœáĨáĨžáĨŸ"),
    (Script::from_str_unchecked("Talu"), "áĶ€á́áĶ‚á̓áĶ„áĶ…á͆á͇á͈á͉á͊áĶ‹á͌áĶáĶŽáĶ"),
    (Script::from_str_unchecked("Taml"), "\u{b82}āۃāŪ…āŪ†āŪ‡āۈāŪ‰āۊāŪŽāŪāېāŪ’āŪ“āŪ”āŪ•āŪ™"),
    (
        Script::from_str_unchecked("Tang"),
        "ð–ŋ ð—€€ð—€ð—€‚𗀃𗀄𗀅𗀆𗀇𗀈𗀉𗀊𗀋𗀌𗀍𗀎",
    ),
    (Script::from_str_unchecked("Tavt"), "ꩀꩁꩂꩃꩄꩅꩆꩇꩈꩉꩊꩋꩌꩍ꩎꩏"),
    (
        Script::from_str_unchecked("Telu"),
        "\u{c00}ā°ā°‚ā°ƒ\u{c04}ā°…ā°†ā°‡ā°ˆā°‰ā°Šā°‹ā°Œā°Žā°ā°",
    ),
    (Script::from_str_unchecked("Tfng"), "âī°âīąâīēâīģâīīâīĩâīķâī·âīļâīđâīšâīŧâīžâī―âīūâīŋ"),
    (Script::from_str_unchecked("Tglg"), "ᜀᜁᜂᜃᜄᜅᜆᜇᜈᜉᜊᜋᜌᜍᜎᜏ"),
    (Script::from_str_unchecked("Thaa"), "ހށނރބޅކއވމފދތލގޏ"),
    (Script::from_str_unchecked("Thai"), "āļāļ‚āļƒāļ„āļ…āļ†āļ‡āļˆāļ‰āļŠāļ‹āļŒāļāļŽāļāļ"),
    (Script::from_str_unchecked("Tibt"), "āž€āžāž‚āžƒāž„āž…āž†āž‡āžˆāž‰āžŠāž‹āžŒāžāžŽāž"),
    (Script::from_str_unchecked("Tirh"), "𑒀𑒁𑒂𑒃𑒄𑒅𑒆𑒇𑒈𑒉𑒊𑒋𑒌𑒍𑒎𑒏"),
    (Script::from_str_unchecked("Tnsa"), "ð–аð–Đąð–Đēð–Đģð–Đīð–Đĩð–Đķð–Đ·ð–Đļð–Đđð–Đšð–Đŧð–Đžð–Đ―ð–Đūð–Đŋ"),
    (Script::from_str_unchecked("Toto"), "𞊐𞊑𞊒𞊓𞊔𞊕𞊖𞊗𞊘𞊙𞊚𞊛𞊜𞊝𞊞𞊟"),
    (Script::from_str_unchecked("Ugar"), "𐎀𐎁𐎂𐎃𐎄𐎅𐎆𐎇𐎈𐎉𐎊𐎋𐎌𐎍𐎎𐎏"),
    (Script::from_str_unchecked("Vaii"), "ꔀꔁꔂꔃꔄꔅꔆꔇꔈꔉꔊꔋꔌꔍꔎꔏ"),
    (Script::from_str_unchecked("Vith"), "ð•°ð•ąð•ēð•ģð•īð•ĩð•ķ𐕷ð•ļð•đð•šð•žð•―ð•ūð•ŋ𐖀"),
    (Script::from_str_unchecked("Wara"), "ð‘Ē ð‘ĒĄð‘ĒĒð‘ĒĢð‘ĒĪð‘ĒĨð‘ĒĶð‘ǧð‘ĒĻð‘ĒĐð‘ĒŠð‘ĒŦð‘ĒŽð‘Ē­ð‘ĒŪð‘ĒŊ"),
    (Script::from_str_unchecked("Wcho"), "𞋀𞋁𞋂𞋃𞋄𞋅𞋆𞋇𞋈𞋉𞋊𞋋𞋌𞋍𞋎𞋏"),
    (Script::from_str_unchecked("Xpeo"), "ðŽ ðŽĄðŽĒðŽĢðŽĪðŽĨðŽĶ𐎧ðŽĻðŽĐ𐎊ðŽŦ𐎎𐎭ðŽŪðŽŊ"),
    (Script::from_str_unchecked("Xsux"), "𒀀𒀁𒀂𒀃𒀄𒀅𒀆𒀇𒀈𒀉𒀊𒀋𒀌𒀍𒀎𒀏"),
    (Script::from_str_unchecked("Yezi"), "𐚀𐚁𐚂𐚃𐚄𐚅𐚆𐚇𐚈𐚉𐚊𐚋𐚌𐚍𐚎𐚏"),
    (
        Script::from_str_unchecked("Yiii"),
        "ꀀꀁꀂꀃꀄꀅꀆꀇꀈꀉꀊꀋꀌꀍꀎꀏ",
    ),
    (
        Script::from_str_unchecked("Zanb"),
        "ð‘Ļ€\u{11a01}\u{11a02}\u{11a03}\u{11a04}\u{11a05}\u{11a06}\u{11a07}\u{11a08}\u{11a09}\u{11a0a}ð‘Ļ‹ð‘ĻŒð‘Ļð‘ĻŽð‘Ļ",
    ),
];