mirror of https://github.com/mosra/magnum.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
920 lines
31 KiB
920 lines
31 KiB
|
3 years ago
|
#ifndef Magnum_Text_Script_h
|
||
|
|
#define Magnum_Text_Script_h
|
||
|
|
/*
|
||
|
|
This file is part of Magnum.
|
||
|
|
|
||
|
|
Copyright © 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019,
|
||
|
|
2020, 2021, 2022, 2023 Vladimír Vondruš <mosra@centrum.cz>
|
||
|
|
|
||
|
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||
|
|
copy of this software and associated documentation files (the "Software"),
|
||
|
|
to deal in the Software without restriction, including without limitation
|
||
|
|
the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||
|
|
and/or sell copies of the Software, and to permit persons to whom the
|
||
|
|
Software is furnished to do so, subject to the following conditions:
|
||
|
|
|
||
|
|
The above copyright notice and this permission notice shall be included
|
||
|
|
in all copies or substantial portions of the Software.
|
||
|
|
|
||
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||
|
|
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||
|
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||
|
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||
|
|
DEALINGS IN THE SOFTWARE.
|
||
|
|
*/
|
||
|
|
|
||
|
|
/** @file
|
||
|
|
* @brief Enum @ref Magnum::Text::Script, function @ref Magnum::Text::script()
|
||
|
|
* @m_since_latest
|
||
|
|
*/
|
||
|
|
|
||
|
|
#include <Corrade/Utility/Endianness.h>
|
||
|
|
|
||
|
|
#include "Magnum/Magnum.h"
|
||
|
|
#include "Magnum/Text/visibility.h"
|
||
|
|
|
||
|
|
namespace Magnum { namespace Text {
|
||
|
|
|
||
|
|
/**
|
||
|
|
@brief Script a text is written in
|
||
|
|
@m_since_latest
|
||
|
|
|
||
|
|
The values are [FourCC](https://en.wikipedia.org/wiki/FourCC) codes according
|
||
|
|
to [ISO 15924](https://en.wikipedia.org/wiki/ISO_15924). Use
|
||
|
|
@ref script(char, char, char, char) or @ref script(Containers::StringView) for
|
||
|
|
creating values not listed in the enum.
|
||
|
|
*/
|
||
|
|
enum class Script: UnsignedInt {
|
||
|
|
/* List taken from https://en.wikipedia.org/wiki/ISO_15924, ordered by
|
||
|
|
the FourCC except for the Unspecified / zero value and the special
|
||
|
|
values which are at the top. Using the Unicode name as the enum value
|
||
|
|
and description, not the Wikipedia language name. Entries that don't
|
||
|
|
have a 1:1 mapping to Unicode, are not in Unicode or are not in Unicode
|
||
|
|
yet are omitted with a comment. The names should match HarfBuzz naming
|
||
|
|
where possible and the codes should match always, see the corresponding
|
||
|
|
test case in the HarfBuzzFont plugin. */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Unspecified. When set in @ref AbstractShaper::setScript(), makes the
|
||
|
|
* shaping rely on script autodetection implemented in a particular
|
||
|
|
* @ref AbstractFont plugin (if any). When returned from
|
||
|
|
* @ref AbstractShaper::script() after a successful
|
||
|
|
* @ref AbstractShaper::shape() call, it means a particular
|
||
|
|
* @ref AbstractFont plugin doesn't implement any script-specific behavior.
|
||
|
|
* @see @ref Script::Inherited, @ref Script::Common, @ref Script::Unknown
|
||
|
|
*/
|
||
|
|
Unspecified = 0,
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Inherited. Characters that may be used with multiple scripts, and that
|
||
|
|
* inherit their script from a preceding base character.
|
||
|
|
* @see @ref Script::Common, @ref Script::Unknown, @ref Script::Unspecified
|
||
|
|
*/
|
||
|
|
Inherited = Utility::Endianness::fourCC('Z', 'i', 'n', 'h'),
|
||
|
|
|
||
|
|
/** Math symbols */
|
||
|
|
Math = Utility::Endianness::fourCC('Z', 'm', 't', 'h'),
|
||
|
|
|
||
|
|
/** @todo Zsye, Zsym? HB has Zmth, but not these */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Undetermined script
|
||
|
|
* @see @ref Script::Unknown, @ref Script::Inherited,
|
||
|
|
* @ref Script::Unspecified
|
||
|
|
*/
|
||
|
|
Common = Utility::Endianness::fourCC('Z', 'y', 'y', 'y'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Unknown script
|
||
|
|
* @see @ref Script::Common, @ref Script::Inherited,
|
||
|
|
* @ref Script::Unspecified
|
||
|
|
*/
|
||
|
|
Unknown = Utility::Endianness::fourCC('Z', 'z', 'z', 'z'),
|
||
|
|
|
||
|
|
/** [Adlam](https://en.wikipedia.org/wiki/Adlam_script), Unicode 9.0 */
|
||
|
|
Adlam = Utility::Endianness::fourCC('A', 'd', 'l', 'm'),
|
||
|
|
|
||
|
|
/* Afak not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Caucasian Albanian](https://en.wikipedia.org/wiki/Caucasian_Albanian_script),
|
||
|
|
* Unicode 7.0
|
||
|
|
*/
|
||
|
|
CaucasianAlbanian = Utility::Endianness::fourCC('A', 'g', 'h', 'b'),
|
||
|
|
|
||
|
|
/** [Ahom](https://en.wikipedia.org/wiki/Ahom_script), Unicode 8.0 */
|
||
|
|
Ahom = Utility::Endianness::fourCC('A', 'h', 'o', 'm'),
|
||
|
|
|
||
|
|
/** [Arabic](https://en.wikipedia.org/wiki/Arabic_script), Unicode 1.0 */
|
||
|
|
Arabic = Utility::Endianness::fourCC('A', 'r', 'a', 'b'),
|
||
|
|
|
||
|
|
/* Aran treated as a variant of Arab in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Imperial Aramaic](https://en.wikipedia.org/wiki/Aramaic_alphabet),
|
||
|
|
* Unicode 5.2
|
||
|
|
*/
|
||
|
|
ImperialAramaic = Utility::Endianness::fourCC('A', 'r', 'm', 'i'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Armenian](https://en.wikipedia.org/wiki/Armenian_alphabet), Unicode 1.0
|
||
|
|
*/
|
||
|
|
Armenian = Utility::Endianness::fourCC('A', 'r', 'm', 'n'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Avestan](https://en.wikipedia.org/wiki/Avestan_alphabet), Unicode 5.2
|
||
|
|
*/
|
||
|
|
Avestan = Utility::Endianness::fourCC('A', 'v', 's', 't'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Balinese](https://en.wikipedia.org/wiki/Balinese_script), Unicode 5.0
|
||
|
|
*/
|
||
|
|
Balinese = Utility::Endianness::fourCC('B', 'a', 'l', 'i'),
|
||
|
|
|
||
|
|
/** [Bamum](https://en.wikipedia.org/wiki/Bamum_script), Unicode 5.2 */
|
||
|
|
Bamum = Utility::Endianness::fourCC('B', 'a', 'm', 'u'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Bassa Vah](https://en.wikipedia.org/wiki/Bassa_Vah_script), Unicode 7.0
|
||
|
|
*/
|
||
|
|
BassaVah = Utility::Endianness::fourCC('B', 'a', 's', 's'),
|
||
|
|
|
||
|
|
/** [Batak](https://en.wikipedia.org/wiki/Batak_script), Unicode 6.0 */
|
||
|
|
Batak = Utility::Endianness::fourCC('B', 'a', 't', 'k'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Bengali](https://en.wikipedia.org/wiki/Bengali%E2%80%93Assamese_script),
|
||
|
|
* Unicode 1.0
|
||
|
|
*/
|
||
|
|
Bengali = Utility::Endianness::fourCC('B', 'e', 'n', 'g'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Bhaiksuki](https://en.wikipedia.org/wiki/Bhaiksuki_script), Unicode 9.0
|
||
|
|
*/
|
||
|
|
Bhaiksuki = Utility::Endianness::fourCC('B', 'h', 'k', 's'),
|
||
|
|
|
||
|
|
/* Blis not in Unicode yet */
|
||
|
|
|
||
|
|
/** [Bopomofo](https://en.wikipedia.org/wiki/Bopomofo), Unicode 1.0 */
|
||
|
|
Bopomofo = Utility::Endianness::fourCC('B', 'o', 'p', 'o'),
|
||
|
|
|
||
|
|
/** [Brahmi](https://en.wikipedia.org/wiki/Brahmi_script), Unicode 6.0 */
|
||
|
|
Brahmi = Utility::Endianness::fourCC('B', 'r', 'a', 'h'),
|
||
|
|
|
||
|
|
/** [Braille](https://en.wikipedia.org/wiki/Braille), Unicode 3.0 */
|
||
|
|
Braille = Utility::Endianness::fourCC('B', 'r', 'a', 'i'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Buginese](https://en.wikipedia.org/wiki/Lontara_script), Unicode 4.1
|
||
|
|
*/
|
||
|
|
Buginese = Utility::Endianness::fourCC('B', 'u', 'g', 'i'),
|
||
|
|
|
||
|
|
/** [Buhid](https://en.wikipedia.org/wiki/Buhid_script), Unicode 3.2 */
|
||
|
|
Buhid = Utility::Endianness::fourCC('B', 'u', 'h', 'd'),
|
||
|
|
|
||
|
|
/** [Chakma](https://en.wikipedia.org/wiki/Chakma_script), Unicode 6.1 */
|
||
|
|
Chakma = Utility::Endianness::fourCC('C', 'a', 'k', 'm'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [CanadianAboriginal](https://en.wikipedia.org/wiki/Canadian_Aboriginal_syllabics), Unicode 3.0
|
||
|
|
*/
|
||
|
|
CanadianAboriginal = Utility::Endianness::fourCC('C', 'a', 'n', 's'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Carian](https://en.wikipedia.org/wiki/Carian_alphabets), Unicode 5.1
|
||
|
|
*/
|
||
|
|
Carian = Utility::Endianness::fourCC('C', 'a', 'r', 'i'),
|
||
|
|
|
||
|
|
/** [Cham](https://en.wikipedia.org/wiki/Cham_script), Unicode 5.1 */
|
||
|
|
Cham = Utility::Endianness::fourCC('C', 'h', 'a', 'm'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Cherokee](https://en.wikipedia.org/wiki/Cherokee_syllabary), Unicode
|
||
|
|
* 3.0
|
||
|
|
*/
|
||
|
|
Cherokee = Utility::Endianness::fourCC('C', 'h', 'e', 'r'),
|
||
|
|
|
||
|
|
/* Chis not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Chorasmian](https://en.wikipedia.org/wiki/Khwarezmian_language#Writing_system),
|
||
|
|
* Unicode 13.0
|
||
|
|
*/
|
||
|
|
Chorasmian = Utility::Endianness::fourCC('C', 'h', 'r', 's'),
|
||
|
|
|
||
|
|
/* Cirt not in Unicode */
|
||
|
|
|
||
|
|
/** [Coptic](https://en.wikipedia.org/wiki/Coptic_alphabet), Unicode 1.0 */
|
||
|
|
Coptic = Utility::Endianness::fourCC('C', 'o', 'p', 't'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Cypro Minoan](https://en.wikipedia.org/wiki/Cypro-Minoan_syllabary),
|
||
|
|
* Unicode 14.0
|
||
|
|
*/
|
||
|
|
CyproMinoan = Utility::Endianness::fourCC('C', 'p', 'm', 'n'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Cypriot](https://en.wikipedia.org/wiki/Cypriot_syllabary), Unicode 4.0
|
||
|
|
*/
|
||
|
|
Cypriot = Utility::Endianness::fourCC('C', 'p', 'r', 't'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Cyrillic](https://en.wikipedia.org/wiki/Cyrillic_script), Unicode 1.0
|
||
|
|
*/
|
||
|
|
Cyrillic = Utility::Endianness::fourCC('C', 'y', 'r', 'l'),
|
||
|
|
|
||
|
|
/* Cyrs treated as a variant of Cyrl in Unicode */
|
||
|
|
|
||
|
|
/** [Devanagari](https://en.wikipedia.org/wiki/Devanagari), Unicode 1.0 */
|
||
|
|
Devanagari = Utility::Endianness::fourCC('D', 'e', 'v', 'a'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Dives Akuru](https://en.wikipedia.org/wiki/Dhives_Akuru), Unicode 13.0
|
||
|
|
*/
|
||
|
|
DivesAkuru = Utility::Endianness::fourCC('D', 'i', 'a', 'k'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Dogra](https://en.wikipedia.org/wiki/Namem_Dogra_Akkhar), Unicode 11.0
|
||
|
|
*/
|
||
|
|
Dogra = Utility::Endianness::fourCC('D', 'o', 'g', 'r'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Deseret](https://en.wikipedia.org/wiki/Deseret_alphabet), Unicode 3.1
|
||
|
|
*/
|
||
|
|
Deseret = Utility::Endianness::fourCC('D', 's', 'r', 't'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Duployan](https://en.wikipedia.org/wiki/Duployan_shorthand), Unicode
|
||
|
|
* 7.0
|
||
|
|
*/
|
||
|
|
Duployan = Utility::Endianness::fourCC('D', 'u', 'p', 'l'),
|
||
|
|
|
||
|
|
/* Egyd and Egyh not in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Egyptian Hieroglyphs](https://en.wikipedia.org/wiki/Egyptian_hieroglyphs),
|
||
|
|
* Unicode 5.2
|
||
|
|
*/
|
||
|
|
EgyptianHieroglyphs = Utility::Endianness::fourCC('E', 'g', 'y', 'p'),
|
||
|
|
|
||
|
|
/** [Elbasan](https://en.wikipedia.org/wiki/Elbasan_script), Unicode 7.0 */
|
||
|
|
Elbasan = Utility::Endianness::fourCC('E', 'l', 'b', 'a'),
|
||
|
|
|
||
|
|
/** [Elymaic](https://en.wikipedia.org/wiki/Elymaic), Unicode 12.0 */
|
||
|
|
Elymaic = Utility::Endianness::fourCC('E', 'l', 'y', 'm'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Ethiopic](https://en.wikipedia.org/wiki/Ge%CA%BDez_script), Unicode 3.0
|
||
|
|
*/
|
||
|
|
Ethiopic = Utility::Endianness::fourCC('E', 't', 'h', 'i'),
|
||
|
|
|
||
|
|
/* Gara not in Unicode yet;
|
||
|
|
Geok treated as a variant of Geor(?) in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Georgian](https://en.wikipedia.org/wiki/Georgian_scripts), Unicode 1.0
|
||
|
|
*/
|
||
|
|
Georgian = Utility::Endianness::fourCC('G', 'e', 'o', 'r'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Glagolitic](https://en.wikipedia.org/wiki/Glagolitic_script), Unicode
|
||
|
|
* 4.1
|
||
|
|
*/
|
||
|
|
Glagolitic = Utility::Endianness::fourCC('G', 'l', 'a', 'g'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Gunjala Gondi](https://en.wikipedia.org/wiki/Gunjala_Gondi_script),
|
||
|
|
* Unicode 11.0
|
||
|
|
*/
|
||
|
|
GunjalaGondi = Utility::Endianness::fourCC('G', 'o', 'n', 'g'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Masaram Gondi](https://en.wikipedia.org/wiki/Gondi_writing#Masaram),
|
||
|
|
* Unicode 10.0
|
||
|
|
*/
|
||
|
|
MasaramGondi = Utility::Endianness::fourCC('G', 'o', 'n', 'm'),
|
||
|
|
|
||
|
|
/** [Gothic](https://en.wikipedia.org/wiki/Gothic_alphabet), Unicode 3.1 */
|
||
|
|
Gothic = Utility::Endianness::fourCC('G', 'o', 't', 'h'),
|
||
|
|
|
||
|
|
/** [Grantha](https://en.wikipedia.org/wiki/Grantha_script), Unicode 7.0 */
|
||
|
|
Grantha = Utility::Endianness::fourCC('G', 'r', 'a', 'n'),
|
||
|
|
|
||
|
|
/** [Greek](https://en.wikipedia.org/wiki/Greek_alphabet), Unicode 1.0 */
|
||
|
|
Greek = Utility::Endianness::fourCC('G', 'r', 'e', 'k'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Gujarati](https://en.wikipedia.org/wiki/Gujarati_script), Unicode 1.0
|
||
|
|
*/
|
||
|
|
Gujarati = Utility::Endianness::fourCC('G', 'u', 'j', 'r'),
|
||
|
|
|
||
|
|
/* Gukh not in Unicode yet */
|
||
|
|
|
||
|
|
/** [Gurmukhi](https://en.wikipedia.org/wiki/Gurmukhi), Unicode 1.0 */
|
||
|
|
Gurmukhi = Utility::Endianness::fourCC('G', 'u', 'r', 'u'),
|
||
|
|
|
||
|
|
/* Hanb treated as a mixture of Hani and Bopo in Unicode */
|
||
|
|
|
||
|
|
/** [Hangul](https://en.wikipedia.org/wiki/Hangul), Unicode 1.0 */
|
||
|
|
Hangul = Utility::Endianness::fourCC('H', 'a', 'n', 'g'),
|
||
|
|
|
||
|
|
/** [Han](https://en.wikipedia.org/wiki/Chinese_characters), Unicode 1.0 */
|
||
|
|
Han = Utility::Endianness::fourCC('H', 'a', 'n', 'i'),
|
||
|
|
|
||
|
|
/** [Hanunoo](https://en.wikipedia.org/wiki/Hanunoo_script), Unicode 3.2 */
|
||
|
|
Hanunoo = Utility::Endianness::fourCC('H', 'a', 'n', 'o'),
|
||
|
|
|
||
|
|
/* Hans, Hant treated as a subset of Hani in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Hatran](https://en.wikipedia.org/wiki/Hatran_Aramaic#Alphabet), Unicode
|
||
|
|
* 8.0
|
||
|
|
*/
|
||
|
|
Hatran = Utility::Endianness::fourCC('H', 'a', 't', 'r'),
|
||
|
|
|
||
|
|
/** [Hebrew](https://en.wikipedia.org/wiki/Hebrew_alphabet), Unicode 1.0 */
|
||
|
|
Hebrew = Utility::Endianness::fourCC('H', 'e', 'b', 'r'),
|
||
|
|
|
||
|
|
/** [Hiragana](https://en.wikipedia.org/wiki/Hiragana), Unicode 1.0 */
|
||
|
|
Hiragana = Utility::Endianness::fourCC('H', 'i', 'r', 'a'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Anatolian Hieroglyphs](https://en.wikipedia.org/wiki/Anatolian_hieroglyphs),
|
||
|
|
* Unicode 8.0
|
||
|
|
*/
|
||
|
|
AnatolianHieroglyphs = Utility::Endianness::fourCC('H', 'l', 'u', 'w'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Pahawh Hmong](https://en.wikipedia.org/wiki/Pahawh_Hmong), Unicode 7.0
|
||
|
|
*/
|
||
|
|
PahawhHmong = Utility::Endianness::fourCC('H', 'm', 'n', 'g'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Nyiakeng Puachue Hmong](https://en.wikipedia.org/wiki/Nyiakeng_Puachue_Hmong),
|
||
|
|
* Unicode 12.0
|
||
|
|
*/
|
||
|
|
NyiakengPuachueHmong = Utility::Endianness::fourCC('H', 'm', 'n', 'p'),
|
||
|
|
|
||
|
|
/* Hrkt treated as an mixture of Hira and Kana in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Old Hungarian](https://en.wikipedia.org/wiki/Old_Hungarian_script),
|
||
|
|
* Unicode 8.0
|
||
|
|
*/
|
||
|
|
OldHungarian = Utility::Endianness::fourCC('H', 'u', 'n', 'g'),
|
||
|
|
|
||
|
|
/* Inds not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Old Italic](https://en.wikipedia.org/wiki/Old_Italic_scripts), Unicode
|
||
|
|
* 3.1
|
||
|
|
*/
|
||
|
|
OldItalic = Utility::Endianness::fourCC('I', 't', 'a', 'l'),
|
||
|
|
|
||
|
|
/* Jamo treated as a subset of Hang in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Javanese](https://en.wikipedia.org/wiki/Javanese_script), Unicode 5.2
|
||
|
|
*/
|
||
|
|
Javanese = Utility::Endianness::fourCC('J', 'a', 'v', 'a'),
|
||
|
|
|
||
|
|
/* Jpan treated as a mixture of Hani, Hira and Kana in Unicode;
|
||
|
|
Jurc not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Kayah Li](https://en.wikipedia.org/wiki/Kayah_Li_alphabet), Unicode 5.1
|
||
|
|
*/
|
||
|
|
KayahLi = Utility::Endianness::fourCC('K', 'a', 'l', 'i'),
|
||
|
|
|
||
|
|
/** [Katakana](https://en.wikipedia.org/wiki/Katakana), Unicode 1.0 */
|
||
|
|
Katakana = Utility::Endianness::fourCC('K', 'a', 'n', 'a'),
|
||
|
|
|
||
|
|
/** [Kawi](https://en.wikipedia.org/wiki/Kawi_script), Unicode 15.0 */
|
||
|
|
Kawi = Utility::Endianness::fourCC('K', 'a', 'w', 'i'),
|
||
|
|
|
||
|
|
/** [Kharoshthi](https://en.wikipedia.org/wiki/Kharosthi), Unicode 4.1 */
|
||
|
|
Kharoshthi = Utility::Endianness::fourCC('K', 'h', 'a', 'r'),
|
||
|
|
|
||
|
|
/** [Khmer](https://en.wikipedia.org/wiki/Khmer_script), Unicode 3.0 */
|
||
|
|
Khmer = Utility::Endianness::fourCC('K', 'h', 'm', 'r'),
|
||
|
|
|
||
|
|
/** [Khojki](https://en.wikipedia.org/wiki/Khojki_script), Unicode 7.0 */
|
||
|
|
Khojki = Utility::Endianness::fourCC('K', 'h', 'o', 'j'),
|
||
|
|
|
||
|
|
/* Kitl not in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Khitan Small Script](https://en.wikipedia.org/wiki/Khitan_small_script),
|
||
|
|
* Unicode 13.0
|
||
|
|
*/
|
||
|
|
KhitanSmallScript = Utility::Endianness::fourCC('K', 'i', 't', 's'),
|
||
|
|
|
||
|
|
/** [Kannada](https://en.wikipedia.org/wiki/Kannada_script), Unicode 1.0 */
|
||
|
|
Kannada = Utility::Endianness::fourCC('K', 'n', 'd', 'a'),
|
||
|
|
|
||
|
|
/* Kore treated as a mixture of Hani and Hang in Unicode;
|
||
|
|
Kpel, Krai not in Unicode yet */
|
||
|
|
|
||
|
|
/** [Kaithi](https://en.wikipedia.org/wiki/Kaithi), Unicode 5.2 */
|
||
|
|
Kaithi = Utility::Endianness::fourCC('K', 't', 'h', 'i'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Tai Tham](https://en.wikipedia.org/wiki/Tai_Tham_script), Unicode 5.2
|
||
|
|
*/
|
||
|
|
TaiTham = Utility::Endianness::fourCC('L', 'a', 'n', 'a'),
|
||
|
|
|
||
|
|
/** [Lao](https://en.wikipedia.org/wiki/Lao_script), Unicode 1.0 */
|
||
|
|
Lao = Utility::Endianness::fourCC('L', 'a', 'o', 'o'),
|
||
|
|
|
||
|
|
/* Latf, Latg treated as a variant of Latn in Unicode */
|
||
|
|
|
||
|
|
/** [Latin](https://en.wikipedia.org/wiki/Latin_script), Unicode 1.0 */
|
||
|
|
Latin = Utility::Endianness::fourCC('L', 'a', 't', 'n'),
|
||
|
|
|
||
|
|
/* Leke not in Unicode */
|
||
|
|
|
||
|
|
/** [Lepcha](https://en.wikipedia.org/wiki/Lepcha_script), Unicode 5.1 */
|
||
|
|
Lepcha = Utility::Endianness::fourCC('L', 'e', 'p', 'c'),
|
||
|
|
|
||
|
|
/** [Limbu](https://en.wikipedia.org/wiki/Limbu_script), Unicode 4.0 */
|
||
|
|
Limbu = Utility::Endianness::fourCC('L', 'i', 'm', 'b'),
|
||
|
|
|
||
|
|
/** [Linear A](https://en.wikipedia.org/wiki/Linear_A), Unicode 7.0 */
|
||
|
|
LinearA = Utility::Endianness::fourCC('L', 'i', 'n', 'a'),
|
||
|
|
|
||
|
|
/** [Linear B](https://en.wikipedia.org/wiki/Linear_B), Unicode 4.0 */
|
||
|
|
LinearB = Utility::Endianness::fourCC('L', 'i', 'n', 'b'),
|
||
|
|
|
||
|
|
/** [Lisu](https://en.wikipedia.org/wiki/Fraser_script), Unicode 5.2 */
|
||
|
|
Lisu = Utility::Endianness::fourCC('L', 'i', 's', 'u'),
|
||
|
|
|
||
|
|
/* Loma not in Unicode yet */
|
||
|
|
|
||
|
|
/** [Lycian](https://en.wikipedia.org/wiki/Lycian_alphabet), Unicode 5.1 */
|
||
|
|
Lycian = Utility::Endianness::fourCC('L', 'y', 'c', 'i'),
|
||
|
|
|
||
|
|
/** [Lydian](https://en.wikipedia.org/wiki/Lydian_alphabet), Unicode 5.1 */
|
||
|
|
Lydian = Utility::Endianness::fourCC('L', 'y', 'd', 'i'),
|
||
|
|
|
||
|
|
/** [Mahajani](https://en.wikipedia.org/wiki/Mahajani), Unicode 7.0 */
|
||
|
|
Mahajani = Utility::Endianness::fourCC('M', 'a', 'h', 'j'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Makasar](https://en.wikipedia.org/wiki/Makasar_script), Unicode 11.0
|
||
|
|
*/
|
||
|
|
Makasar = Utility::Endianness::fourCC('M', 'a', 'k', 'a'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Mandaic](https://en.wikipedia.org/wiki/Mandaic_alphabet), Unicode 6.0
|
||
|
|
*/
|
||
|
|
Mandaic = Utility::Endianness::fourCC('M', 'a', 'n', 'd'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Manichaean](https://en.wikipedia.org/wiki/Manichaean_script), Unicode
|
||
|
|
* 7.0
|
||
|
|
*/
|
||
|
|
Manichaean = Utility::Endianness::fourCC('M', 'a', 'n', 'i'),
|
||
|
|
|
||
|
|
/** [Marchen](https://en.wikipedia.org/wiki/Marchen_script), Unicode 9.0 */
|
||
|
|
Marchen = Utility::Endianness::fourCC('M', 'a', 'r', 'c'),
|
||
|
|
|
||
|
|
/* Maya not in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Medefaidrin](https://en.wikipedia.org/wiki/Medefaidrin), Unicode 11.0
|
||
|
|
*/
|
||
|
|
Medefaidrin = Utility::Endianness::fourCC('M', 'e', 'd', 'f'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Mende Kikakui](https://en.wikipedia.org/wiki/Mende_Kikakui_script),
|
||
|
|
* Unicode 7.0
|
||
|
|
*/
|
||
|
|
MendeKikakui = Utility::Endianness::fourCC('M', 'e', 'n', 'd'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Meroitic Cursive](https://en.wikipedia.org/wiki/Meroitic_script),
|
||
|
|
* Unicode 6.1
|
||
|
|
*/
|
||
|
|
MeroiticCursive = Utility::Endianness::fourCC('M', 'e', 'r', 'c'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Meroitic Hieroglyphs](https://en.wikipedia.org/wiki/Meroitic_script),
|
||
|
|
* Unicode 6.1
|
||
|
|
*/
|
||
|
|
MeroiticHieroglyphs = Utility::Endianness::fourCC('M', 'e', 'r', 'o'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Malayalam](https://en.wikipedia.org/wiki/Malayalam_script), Unicode 1.0
|
||
|
|
*/
|
||
|
|
Malayalam = Utility::Endianness::fourCC('M', 'l', 'y', 'm'),
|
||
|
|
|
||
|
|
/** [Modi](https://en.wikipedia.org/wiki/Modi_script), Unicode 7.0 */
|
||
|
|
Modi = Utility::Endianness::fourCC('M', 'o', 'd', 'i'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Mongolian](https://en.wikipedia.org/wiki/Mongolian_script), Unicode 3.0
|
||
|
|
*/
|
||
|
|
Mongolian = Utility::Endianness::fourCC('M', 'o', 'n', 'g'),
|
||
|
|
|
||
|
|
/* Moon not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Mro](https://en.wikipedia.org/wiki/Mru_language#Script), Unicode 7.0
|
||
|
|
*/
|
||
|
|
Mro = Utility::Endianness::fourCC('M', 'r', 'o', 'o'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Meetei Mayek](https://en.wikipedia.org/wiki/Meitei_script), Unicode 5.2
|
||
|
|
*/
|
||
|
|
MeeteiMayek = Utility::Endianness::fourCC('M', 't', 'e', 'i'),
|
||
|
|
|
||
|
|
/** [Multani](https://en.wikipedia.org/wiki/Multani_script), Unicode 8.0 */
|
||
|
|
Multani = Utility::Endianness::fourCC('M', 'u', 'l', 't'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Myanmar](https://en.wikipedia.org/wiki/Mon%E2%80%93Burmese_script),
|
||
|
|
* Unicode 3.0
|
||
|
|
*/
|
||
|
|
Myanmar = Utility::Endianness::fourCC('M', 'y', 'm', 'r'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Nag Mundari](https://en.wikipedia.org/wiki/Mundari_Bani), Unicode 15.0
|
||
|
|
*/
|
||
|
|
NagMundari = Utility::Endianness::fourCC('N', 'a', 'g', 'm'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Nandinagari](https://en.wikipedia.org/wiki/Nandinagari), Unicode 12.0
|
||
|
|
*/
|
||
|
|
Nandinagari = Utility::Endianness::fourCC('N', 'a', 'n', 'd'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Old North Arabian](https://en.wikipedia.org/wiki/Ancient_North_Arabian),
|
||
|
|
* Unicode 7.0
|
||
|
|
*/
|
||
|
|
OldNorthArabian = Utility::Endianness::fourCC('N', 'a', 'r', 'b'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Nabataean](https://en.wikipedia.org/wiki/Nabataean_alphabet), Unicode
|
||
|
|
* 7.0
|
||
|
|
*/
|
||
|
|
Nabataean = Utility::Endianness::fourCC('N', 'b', 'a', 't'),
|
||
|
|
|
||
|
|
/** [Newa](https://en.wikipedia.org/wiki/Pracalit_script), Unicode 9.0 */
|
||
|
|
Newa = Utility::Endianness::fourCC('N', 'e', 'w', 'a'),
|
||
|
|
|
||
|
|
/* Nkdb not in Unicode;
|
||
|
|
Nkgb not in Unicode yet */
|
||
|
|
|
||
|
|
/** [NKo](https://en.wikipedia.org/wiki/N%27Ko_script), Unicode 5.0 */
|
||
|
|
NKo = Utility::Endianness::fourCC('N', 'k', 'o', 'o'),
|
||
|
|
|
||
|
|
/** [Nushu](https://en.wikipedia.org/wiki/N%C3%BCshu), Unicode 10.0 */
|
||
|
|
Nushu = Utility::Endianness::fourCC('N', 's', 'h', 'u'),
|
||
|
|
|
||
|
|
/** [Ogham](https://en.wikipedia.org/wiki/Ogham), Unicode 3.0 */
|
||
|
|
Ogham = Utility::Endianness::fourCC('O', 'g', 'a', 'm'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Ol Chiki](https://en.wikipedia.org/wiki/Ol_Chiki_script), Unicode 5.1
|
||
|
|
*/
|
||
|
|
OlChiki = Utility::Endianness::fourCC('O', 'l', 'c', 'k'),
|
||
|
|
|
||
|
|
/* Onao not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Old Turkic](https://en.wikipedia.org/wiki/Old_Turkic_script), Unicode
|
||
|
|
* 5.2
|
||
|
|
*/
|
||
|
|
OldTurkic = Utility::Endianness::fourCC('O', 'r', 'k', 'h'),
|
||
|
|
|
||
|
|
/** [Oriya](https://en.wikipedia.org/wiki/Odia_script), Unicode 1.0 */
|
||
|
|
Oriya = Utility::Endianness::fourCC('O', 'r', 'y', 'a'),
|
||
|
|
|
||
|
|
/** [Osage](https://en.wikipedia.org/wiki/Osage_script), Unicode 9.0 */
|
||
|
|
Osage = Utility::Endianness::fourCC('O', 's', 'g', 'e'),
|
||
|
|
|
||
|
|
/** [Osmanya](https://en.wikipedia.org/wiki/Osmanya_script), Unicode 4.0 */
|
||
|
|
Osmanya = Utility::Endianness::fourCC('O', 's', 'm', 'a'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Old Uyghur](https://en.wikipedia.org/wiki/Old_Uyghur_alphabet), Unicode
|
||
|
|
* 14.0
|
||
|
|
*/
|
||
|
|
OldUyghur = Utility::Endianness::fourCC('O', 'u', 'g', 'r'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Palmyrene](https://en.wikipedia.org/wiki/Palmyrene_alphabet), Unicode
|
||
|
|
* 7.0
|
||
|
|
*/
|
||
|
|
Palmyrene = Utility::Endianness::fourCC('P', 'a', 'l', 'm'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Pau Cin Hau](https://en.wikipedia.org/wiki/Pau_Cin_Hau_script), Unicode
|
||
|
|
* 7.0
|
||
|
|
*/
|
||
|
|
PauCinHau = Utility::Endianness::fourCC('P', 'a', 'u', 'c'),
|
||
|
|
|
||
|
|
/* Pcun, Pelm not in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Old Permic](https://en.wikipedia.org/wiki/Old_Permic_script), Unicode
|
||
|
|
* 7.0
|
||
|
|
*/
|
||
|
|
OldPermic = Utility::Endianness::fourCC('P', 'e', 'r', 'm'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Phags-pa](https://en.wikipedia.org/wiki/%CA%BCPhags-pa_script), Unicode
|
||
|
|
* 5.0
|
||
|
|
*/
|
||
|
|
PhagsPa = Utility::Endianness::fourCC('P', 'h', 'a', 'g'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Inscriptional Pahlavi](https://en.wikipedia.org/wiki/Inscriptional_Pahlavi),
|
||
|
|
* Unicode 5.2
|
||
|
|
*/
|
||
|
|
InscriptionalPahlavi = Utility::Endianness::fourCC('P', 'h', 'l', 'i'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Psalter Pahlavi](https://en.wikipedia.org/wiki/Psalter_Pahlavi),
|
||
|
|
* Unicode 7.0
|
||
|
|
*/
|
||
|
|
PsalterPahlavi = Utility::Endianness::fourCC('P', 'h', 'l', 'p'),
|
||
|
|
|
||
|
|
/* Phlv not in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Phoenician](https://en.wikipedia.org/wiki/Phoenician_alphabet), Unicode
|
||
|
|
* 5.0
|
||
|
|
*/
|
||
|
|
Phoenician = Utility::Endianness::fourCC('P', 'h', 'n', 'x'),
|
||
|
|
|
||
|
|
/* Piqd rejected from inclusion in Unicode */
|
||
|
|
|
||
|
|
/** [Miao](https://en.wikipedia.org/wiki/Pollard_script), Unicode 6.1 */
|
||
|
|
Miao = Utility::Endianness::fourCC('P', 'l', 'r', 'd'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [InscriptionalParthian](https://en.wikipedia.org/wiki/Inscriptional_Parthian),
|
||
|
|
* Unicode 5.2
|
||
|
|
*/
|
||
|
|
InscriptionalParthian = Utility::Endianness::fourCC('P', 'r', 't', 'i'),
|
||
|
|
|
||
|
|
/* Psin, Ranj not in Unicode */
|
||
|
|
|
||
|
|
/** [Rejang](https://en.wikipedia.org/wiki/Rejang_script), Unicode 5.1 */
|
||
|
|
Rejang = Utility::Endianness::fourCC('R', 'j', 'n', 'g'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Hanifi Rohingya](https://en.wikipedia.org/wiki/Hanifi_Rohingya_script),
|
||
|
|
* Unicode 11.0
|
||
|
|
*/
|
||
|
|
HanifiRohingya = Utility::Endianness::fourCC('R', 'o', 'h', 'g'),
|
||
|
|
|
||
|
|
/* Roro not in Unicode yet */
|
||
|
|
|
||
|
|
/** [Runic](https://en.wikipedia.org/wiki/Runes), Unicode 3.0 */
|
||
|
|
Runic = Utility::Endianness::fourCC('R', 'u', 'n', 'r'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Samaritan](https://en.wikipedia.org/wiki/Samaritan_script), Unicode 5.2
|
||
|
|
*/
|
||
|
|
Samaritan = Utility::Endianness::fourCC('S', 'a', 'm', 'r'),
|
||
|
|
|
||
|
|
/* Sara not in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Old South Arabian](https://en.wikipedia.org/wiki/Ancient_South_Arabian_script),
|
||
|
|
* Unicode 5.2
|
||
|
|
*/
|
||
|
|
OldSouthArabian = Utility::Endianness::fourCC('S', 'a', 'r', 'b'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Saurashtra](https://en.wikipedia.org/wiki/Saurashtra_script), Unicode
|
||
|
|
* 5.1
|
||
|
|
*/
|
||
|
|
Saurashtra = Utility::Endianness::fourCC('S', 'a', 'u', 'r'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [SignWriting](https://en.wikipedia.org/wiki/SignWriting), Unicode 8.0
|
||
|
|
*/
|
||
|
|
SignWriting = Utility::Endianness::fourCC('S', 'g', 'n', 'w'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Shavian](https://en.wikipedia.org/wiki/Shavian_alphabet), Unicode 4.0
|
||
|
|
*/
|
||
|
|
Shavian = Utility::Endianness::fourCC('S', 'h', 'a', 'w'),
|
||
|
|
|
||
|
|
/** [Sharada](https://en.wikipedia.org/wiki/Sharada_script), Unicode 6.1 */
|
||
|
|
Sharada = Utility::Endianness::fourCC('S', 'h', 'r', 'd'),
|
||
|
|
|
||
|
|
/* Shui not in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Siddham](https://en.wikipedia.org/wiki/Siddha%E1%B9%83_script), Unicode
|
||
|
|
* 7.0
|
||
|
|
*/
|
||
|
|
Siddham = Utility::Endianness::fourCC('S', 'i', 'd', 'd'),
|
||
|
|
|
||
|
|
/* Sidt not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Khudawadi](https://en.wikipedia.org/wiki/Khudabadi_script), Unicode 7.0
|
||
|
|
*/
|
||
|
|
Khudawadi = Utility::Endianness::fourCC('S', 'i', 'n', 'd'),
|
||
|
|
|
||
|
|
/** [Sinhala](https://en.wikipedia.org/wiki/Sinhala_script), Unicode 3.0 */
|
||
|
|
Sinhala = Utility::Endianness::fourCC('S', 'i', 'n', 'h'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Sogdian](https://en.wikipedia.org/wiki/Sogdian_alphabet), Unicode 11.0
|
||
|
|
*/
|
||
|
|
Sogdian = Utility::Endianness::fourCC('S', 'o', 'g', 'd'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Old Sogdian](https://en.wikipedia.org/wiki/Sogdian_alphabet), Unicode
|
||
|
|
* 11.0
|
||
|
|
*/
|
||
|
|
OldSogdian = Utility::Endianness::fourCC('S', 'o', 'g', 'o'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Sora Sompeng](https://en.wikipedia.org/wiki/Sorang_Sompeng_script),
|
||
|
|
* Unicode 6.1
|
||
|
|
*/
|
||
|
|
SoraSompeng = Utility::Endianness::fourCC('S', 'o', 'r', 'a'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Soyombo](https://en.wikipedia.org/wiki/Soyombo_script), Unicode 10.0
|
||
|
|
*/
|
||
|
|
Soyombo = Utility::Endianness::fourCC('S', 'o', 'y', 'o'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Sundanese](https://en.wikipedia.org/wiki/Sundanese_script), Unicode 5.1
|
||
|
|
*/
|
||
|
|
Sundanese = Utility::Endianness::fourCC('S', 'u', 'n', 'd'),
|
||
|
|
|
||
|
|
/* Sunu not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Syloti Nagri](https://en.wikipedia.org/wiki/Sylheti_Nagri), Unicode 4.1
|
||
|
|
*/
|
||
|
|
SylotiNagri = Utility::Endianness::fourCC('S', 'y', 'l', 'o'),
|
||
|
|
|
||
|
|
/** [Syriac](https://en.wikipedia.org/wiki/Syriac_alphabet), Unicode 3.0 */
|
||
|
|
Syriac = Utility::Endianness::fourCC('S', 'y', 'r', 'c'),
|
||
|
|
|
||
|
|
/* Syre, Syrj, Syrn treated as a variant of Syrc in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Tagbanwa](https://en.wikipedia.org/wiki/Tagbanwa_script), Unicode 3.2
|
||
|
|
*/
|
||
|
|
Tagbanwa = Utility::Endianness::fourCC('T', 'a', 'g', 'b'),
|
||
|
|
|
||
|
|
/** [Takri](https://en.wikipedia.org/wiki/Takri_script), Unicode 6.1 */
|
||
|
|
Takri = Utility::Endianness::fourCC('T', 'a', 'k', 'r'),
|
||
|
|
|
||
|
|
/** [Tai Le](https://en.wikipedia.org/wiki/Tai_Le_script), Unicode 4.0 */
|
||
|
|
TaiLe = Utility::Endianness::fourCC('T', 'a', 'l', 'e'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [New Tai Lue](https://en.wikipedia.org/wiki/New_Tai_Lue_alphabet),
|
||
|
|
* Unicode 4.1
|
||
|
|
*/
|
||
|
|
NewTaiLue = Utility::Endianness::fourCC('T', 'a', 'l', 'u'),
|
||
|
|
|
||
|
|
/** [Tamil](https://en.wikipedia.org/wiki/Tamil_script), Unicode 1.0 */
|
||
|
|
Tamil = Utility::Endianness::fourCC('T', 'a', 'm', 'l'),
|
||
|
|
|
||
|
|
/** [Tangut](https://en.wikipedia.org/wiki/Tangut_script), Unicode 9.0 */
|
||
|
|
Tangut = Utility::Endianness::fourCC('T', 'a', 'n', 'g'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Tai Viet](https://en.wikipedia.org/wiki/Tai_Viet_script), Unicode 5.2
|
||
|
|
*/
|
||
|
|
TaiViet = Utility::Endianness::fourCC('T', 'a', 'v', 't'),
|
||
|
|
|
||
|
|
/* Tayo not in Unicode yet */
|
||
|
|
|
||
|
|
/** [Telugu](https://en.wikipedia.org/wiki/Telugu_script), Unicode 1.0 */
|
||
|
|
Telugu = Utility::Endianness::fourCC('T', 'e', 'l', 'u'),
|
||
|
|
|
||
|
|
/* Teng not in Unicode */
|
||
|
|
|
||
|
|
/** [Tifinagh](https://en.wikipedia.org/wiki/Tifinagh), Unicode 4.1 */
|
||
|
|
Tifinagh = Utility::Endianness::fourCC('T', 'f', 'n', 'g'),
|
||
|
|
|
||
|
|
/** [Tagalog](https://en.wikipedia.org/wiki/Baybayin), Unicode 3.2 */
|
||
|
|
Tagalog = Utility::Endianness::fourCC('T', 'g', 'l', 'g'),
|
||
|
|
|
||
|
|
/** [Thaana](https://en.wikipedia.org/wiki/Thaana), Unicode 3.0 */
|
||
|
|
Thaana = Utility::Endianness::fourCC('T', 'h', 'a', 'a'),
|
||
|
|
|
||
|
|
/** [Thai](https://en.wikipedia.org/wiki/Thai_script), Unicode 1.0 */
|
||
|
|
Thai = Utility::Endianness::fourCC('T', 'h', 'a', 'i'),
|
||
|
|
|
||
|
|
/** [Tibetan](https://en.wikipedia.org/wiki/Tibetan_script), Unicode 2.0 */
|
||
|
|
Tibetan = Utility::Endianness::fourCC('T', 'i', 'b', 't'),
|
||
|
|
|
||
|
|
/** [Tirhuta](https://en.wikipedia.org/wiki/Tirhuta_script), Unicode 7.0 */
|
||
|
|
Tirhuta = Utility::Endianness::fourCC('T', 'i', 'r', 'h'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Tangsa](https://en.wikipedia.org/wiki/Tangsa_language#Orthography),
|
||
|
|
* Unicode 14.0
|
||
|
|
*/
|
||
|
|
Tangsa = Utility::Endianness::fourCC('T', 'n', 's', 'a'),
|
||
|
|
|
||
|
|
/* Todr, Tols not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Toto](https://en.wikipedia.org/wiki/Toto_language#Writing_system),
|
||
|
|
* Unicode 14.0
|
||
|
|
*/
|
||
|
|
Toto = Utility::Endianness::fourCC('T', 'o', 't', 'o'),
|
||
|
|
|
||
|
|
/* Tutg not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Ugaritic](https://en.wikipedia.org/wiki/Ugaritic_alphabet), Unicode 4.0
|
||
|
|
*/
|
||
|
|
Ugaritic = Utility::Endianness::fourCC('U', 'g', 'a', 'r'),
|
||
|
|
|
||
|
|
/** [Vai](https://en.wikipedia.org/wiki/Vai_syllabary), Unicode 5.1 */
|
||
|
|
Vai = Utility::Endianness::fourCC('V', 'a', 'i', 'i'),
|
||
|
|
|
||
|
|
/* Visp not in Unicode */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Vithkuqi](https://en.wikipedia.org/wiki/Vithkuqi_script), Unicode 14.0
|
||
|
|
*/
|
||
|
|
Vithkuqi = Utility::Endianness::fourCC('V', 'i', 't', 'h'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Warang Citi](https://en.wikipedia.org/wiki/Warang_Citi), Unicode 7.0
|
||
|
|
*/
|
||
|
|
WarangCiti = Utility::Endianness::fourCC('W', 'a', 'r', 'a'),
|
||
|
|
|
||
|
|
/** [Wancho](https://en.wikipedia.org/wiki/Wancho_script), Unicode 12.0 */
|
||
|
|
Wancho = Utility::Endianness::fourCC('W', 'c', 'h', 'o'),
|
||
|
|
|
||
|
|
/* Wole not in Unicode yet */
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Old Persian](https://en.wikipedia.org/wiki/Old_Persian_cuneiform),
|
||
|
|
* Unicode 4.1
|
||
|
|
*/
|
||
|
|
OldPersian = Utility::Endianness::fourCC('X', 'p', 'e', 'o'),
|
||
|
|
|
||
|
|
/** [Cuneiform](https://en.wikipedia.org/wiki/Cuneiform), Unicode 5.0 */
|
||
|
|
Cuneiform = Utility::Endianness::fourCC('X', 's', 'u', 'x'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Yezidi](https://en.wikipedia.org/wiki/Kurdish_alphabets#Yezidi),
|
||
|
|
* Unicode 13.0
|
||
|
|
*/
|
||
|
|
Yezidi = Utility::Endianness::fourCC('Y', 'e', 'z', 'i'),
|
||
|
|
|
||
|
|
/** [Yi](https://en.wikipedia.org/wiki/Yi_script), Unicode 3.0 */
|
||
|
|
Yi = Utility::Endianness::fourCC('Y', 'i', 'i', 'i'),
|
||
|
|
|
||
|
|
/**
|
||
|
|
* [Zanabazar Square](https://en.wikipedia.org/wiki/Zanabazar_square_script),
|
||
|
|
* Unicode 10.0
|
||
|
|
*/
|
||
|
|
ZanabazarSquare = Utility::Endianness::fourCC('Z', 'a', 'n', 'b'),
|
||
|
|
};
|
||
|
|
|
||
|
|
/** @debugoperatorenum{Script} */
|
||
|
|
MAGNUM_TEXT_EXPORT Debug& operator<<(Debug& debug, Script value);
|
||
|
|
|
||
|
|
/**
|
||
|
|
@brief Create a @ref Script value from a four-character code
|
||
|
|
@m_since_latest
|
||
|
|
|
||
|
|
Delegates to @ref Utility::Endianness::fourCC(). Doesn't perform any validity
|
||
|
|
check on the input, i.e. it's possible to create a code that isn't listed in
|
||
|
|
[ISO 15924](https://en.wikipedia.org/wiki/ISO_15924) or even a code with
|
||
|
|
non-ASCII characters.
|
||
|
|
@see @ref script(Containers::StringView)
|
||
|
|
*/
|
||
|
|
constexpr Script script(char a, char b, char c, char d) {
|
||
|
|
return Script(Utility::Endianness::fourCC(a, b, c, d));
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
@brief Create a @ref Script value from a string
|
||
|
|
@m_since_latest
|
||
|
|
|
||
|
|
Expects that the string has exactly four bytes. Other than that doesn't perform
|
||
|
|
any validity check on the input, i.e. it's possible to create a code that isn't
|
||
|
|
listed in [ISO 15924](https://en.wikipedia.org/wiki/ISO_15924) or even a code
|
||
|
|
with non-ASCII characters.
|
||
|
|
@see @ref script(char, char, char, char)
|
||
|
|
*/
|
||
|
|
MAGNUM_TEXT_EXPORT Script script(Containers::StringView fourCC);
|
||
|
|
|
||
|
|
}}
|
||
|
|
|
||
|
|
#endif
|