Script (Unicode): Difference between revisions

Content deleted Content added
Indexheavy (talk | contribs)
See also: added reference
External links: Updated URL for SEI website
 
(195 intermediate revisions by 84 users not shown)
Line 1:
{{mergeshort description|MappingSubset of Unicode characters in Unicode}}
{{More citations needed|date=June 2024}}
{{unreferenced}}
{{about|writing systems found in Unicode|the "Script" style of Latin letters in Unicode|Mathematical Alphanumeric Symbols|and|Script typeface}}
{{Unicode_scripts}}
<!-- [[File:Armenian language in the Armenian alphabet.svg|thumb|[[Armenian script]]]] -->
In [[Unicode]], a '''script''' is an abstract coherent and unified [[writing system]] supporting one or more concrete writing systems which in turn support the written forms of one or more languages.{{fact}}
{{ISO 15924/unicode-script-illustration}}
For example the [[Latin_characters_in_Unicode|Latin]] script supports alphabets such as: [[English language|English]], [[French language|French]], [[Vietnamese language|Vietnamese]] and many others. Some scripts support one and only one writing system and language, for example: [[Armenian language|Armenian]]. Other scripts, like [[Latin_characters_in_Unicode|Latin]], support many different writing systems: [[English_alphabet|English]], [[French_alphabet|French]], [[German_alphabet|German]], [[Italian_alphabet|Italian]], and [[Latin_alphabet|Latin]] to name just some of the alphabets supported by the Latin script. Some languages also make use of multiple alternate writing systems. [[Turkish language|Turkish]], for example, used [[Ottoman_Turkish_alphabet|Arabic]] script before the 20th century and transitioned to Latin in the early part of the 20th century. For a list of languages supported by each script see the [[List_of_languages_by_writing_system|list of languages by writing system]].
 
In [[Unicode]], a '''script''' is a collection of [[Letter (alphabet)|letter]]s and other written signs used to represent textual information in one or more [[writing system]]s.<ref>{{cite web|url=http://unicode.org/glossary/|title=Glossary|website=unicode.org}}</ref> Some scripts support only one writing system and [[Written language|language]], for example, [[Armenian language|Armenian]]. Other scripts support many different writing systems; for example, the [[Latin script in Unicode|Latin script]] supports [[English alphabet|English]], [[French alphabet|French]], [[German alphabet|German]], [[Italian alphabet|Italian]], [[Vietnamese language|Vietnamese]], [[Latin alphabet|Latin]] itself, and several other languages. Some languages make use of multiple alternate writing systems and thus also use several scripts; for example, in [[Turkish language|Turkish]], the [[Ottoman Turkish alphabet|Arabic]] script was used before the 20th century but transitioned to Latin in the early part of the 20th century. More or less complementary to scripts are [[Unicode symbols|symbols]] and Unicode [[control character]]s.
When multiple languages make use of the same script, there are frequently some differences: particularly in diacritics and other marks. For example, Swedish and English both use the Latin script. However, [[Swedish_alphabet|Swedish]] includes the character ‘å’ (sometimes called a “Swedish O”) while English has no such character. Nor does English make use of the diacritic combining circle above for any character. In general the languages sharing the same scripts share many of the same characters. Despite these peripheral differences in the Swedish and English writing systems they are said to use the same Latin script. So the Unicode abstraction of scripts is a basic organizing technique. The differences between different alphabets or writing systems remain and are supported through Unicode’s flexible scripts, combining marks and collation algorithms.
 
WhileThe allunified characters[[Combining haveDiacritical the property of belonging to a script, many characters, such as symbols, indicate “common” or “inherited”Marks for their script property. The unified Symbols|diacritical characterscharacter]]s and unified [[General Punctuation|punctuation characters]] frequently have the “common”"common" or “inherited”"inherited" script property. However, the individual scripts often have their own [[punctuation]] and diacritics.[[diacritic]]s, so Sothat many scripts include not only letters, but also diacritic and other marks, punctuation, numerals and even their own idiosyncratic symbols and [[Space (punctuation)|space]] characters.
 
Unicode {{Unicode version|version=16.0}} defines 168 separate scripts, including 99 modern scripts and 69 ancient or historic scripts.<ref>{{cite web|url=https://www.unicode.org/Public/UNIDATA/Scripts.txt|title=Unicode Character Database: Scripts|website=unicode.org}}</ref><ref>{{cite book | title = The Unicode Standard, Version 15.0 | chapter = Chapter 14: Additional Ancient and Historic Scripts | publisher = Unicode, Inc | date = September 2022 | ___location = Mountain View, CA | url = https://www.unicode.org/versions/Unicode15.0.0/ch14.pdf | isbn = 978-1-936213-32-0 }}</ref> More scripts are in the process for encoding or have been tentatively allocated for encoding in roadmaps.<ref>https://www.unicode.org/roadmaps/ Roadmaps to Unicode</ref>
Unicode already includes over 60 scripts supporting hundreds or even thousands of languages throughout the World. Unicode is actively working on many more as indicated by its [[Unicode_roadmap|roadmap]].
 
== Definition and classification ==
 
When multiple languages make use of the same script, there are frequently some differences:, particularly in diacritics and other marks. For example, Swedish and English both use the Latin script. However, [[Swedish_alphabetSwedish alphabet|Swedish]] includes the character ‘å’''[[å]]'' (sometimes called a “SwedishSwedish O”''O''), while English has no such character. Nor does English make use of the diacritic ''[[Ring (diacritic)#Overring|combining circlering above]]'' for any character. In general, the languages sharing the same scripts share many of the same characters. Despite these peripheral differences in the Swedish and English writing systems, they are said to use the same Latin script. SoThus, the Unicode abstraction of scripts is a basic organizing technique. The differences betweenamong different alphabets or writing systems remain and are supported through Unicode’s flexible scripts, combining marks and collation algorithms.
== Writing system ==
 
=== Script versus writing system ===
{{main|Writing system}}
 
'''[[Writing system']]'' is sometimes treated as a synonym for "script". However, it also can be used as the specific concrete writing system supported by a script. For example, the [[Vietnamese alphabet|Vietnamese writing system]] is supported by the Latin script. MostA writing systemssystem canmay bealso broadlycover dividedmore intothan severalone categories:script; '''logographic''',for '''syllabic'''example, '''alphabetic'''the (orJapanese '''segmental'''),writing '''abugida''',system '''abjad'''makes and '''featural'''; however, all featuresuse of anythe of these may be found in any given writing system in varying proportions[[Kanji|Han]], often[[Hiragana]] makingand it[[Katakana]] difficult to purely categorize a systemscripts. The term '''complex system''' is sometimes used to describe those where the admixture makes classification problematic.
 
Most writing systems can be broadly divided into several categories: '''logographic''', '''syllabic''', '''alphabetic''' (or '''segmental'''), '''abugida''', '''abjad''' and '''featural'''; however, all features of any of these may be found in any given writing system in varying proportions, often making it difficult to purely categorize a system. The term ''[[complex system]]'' is sometimes used to describe those where the admixture makes classification problematic.
{| class="prettytable"
! Type of writing system !! What each symbol represents !! Example
|-
| [[Logogram|Logographic]] || [[morpheme]] || [[Chinese character]]s
|-
| [[Syllabary|Syllabic]] || syllable || Japanese ''[[kana]]''
|-
| [[Alphabet|Alphabetic]] || [[phoneme]] (consonant or vowel) || [[Latin alphabet]]
|-
| [[Abugida]] || phoneme (consonant+vowel) || Indian ''[[Devanāgarī]]''
|-
| [[Abjad]] || phoneme (consonant) || [[Arabic alphabet]]
|-
| [[Featural_alphabet|Featural]] || phonetic feature || Korean ''[[hangul]]''
|}
 
Unicode supports all of these types of writing systems through its numerous scripts. Unicode also adds further properties to characters to help differentiate the various characters and the ways they behave within Unicode text -processing algorithms.
''See also'': [[phonemic orthography|''phonemic'' and ''phonetic'' orthography]].
 
=== {{anchor|Common and inherited scripts}}{{anchor|Special script property values}}Special script property values ===
Unicode supports all of these types of writing systems through its numerous scripts. Unicode also adds further properties to characters to help differentiate the various characters and the ways they behave within Unicode text processing algorithms.
In addition to explicit or specific script properties, Unicode uses three special values:<ref name=Unicode_script_property>{{cite web|url=https://www.unicode.org/reports/tr24/|title=UAX #24: Unicode Script Property|website=www.unicode.org}}</ref>
;Common: Unicode can assign a character in the [[Universal Character Set|UCS]] to a single script only. However, many characters—those that are not part of a formal natural-language writing system or are unified across many writing systems—may be used in more than one script (for example, currency signs, symbols, numerals and punctuation marks). In these cases Unicode defines them as belonging to the "common" script ([[ISO 15924]] code "Zyyy").
;Inherited: Many diacritics and non-spacing combining characters may be applied to characters from more than one script. In these cases Unicode assigns them to the "inherited" script (ISO 15924 code Zinh), which means that they have the same script class as the base character with which they combine, and so in different contexts they may be treated as belonging to different scripts. For example, {{unichar|0308|Combining Diaeresis|cwith=}} may combine either with {{unichar|0065|Latin Small Letter E}} to create a Latin ''ë'' or with {{unichar|0435|Cyrillic Small Letter IE}} for the [[Cyrillic alphabet|Cyrillic]] ''ё''. In the former case, it inherits the Latin script of the base character, whereas in the latter case, it inherits the Cyrillic script of the base character.
;Unknown: The value of "unknown" script (ISO 15924 code Zzzz) is given to unassigned, private-use, noncharacter, and surrogate code points.
 
== Character categories within scripts ==
Unicode provides a general category property for each character. So in addition to belonging to a script every character also has a general category. Typically scripts include letter characters including: uppercase letters, lowercase letterletters and modifier letters. Some characters are considered titlecase letters for a few [[Precomposed_characterPrecomposed character|precomposed]] ligatures such as &#x01F2;Dz (U+01F2). Such titlecase ligatures are all in the Latin and Greek scripts and are all [[Unicode compatibility characters |compatibility characters]], and therefore Unicode discourages their use by authors. ItsIt is unlikely newtthat new titlecase letters will be added in the future.
{{Template:UCS_characters}}
Unicode provides a general category property for each character. So in addition to belonging to a script every character also has a general category. Typically scripts include letter characters including: uppercase letters, lowercase letter and modifier letters. Some characters are considered titlecase letters for a few [[Precomposed_character|precomposed]] ligatures such as &#x01F2; (U+01F2). Such titlecase ligatures are all in the Latin and Greek scripts and are all compatibility characters and therefore Unicode discourages their use by authors. Its unlikely newt titlecase letters will be added in the future.
 
Most writing systems do not differentiate between uppercase and lowercase letters. For those scripts all letters are categorized as “other"other letter”letter" or “modifier"modifier letter”letter". Ideographs such as Unihan ideographs are also categorized as “other"other letters”letters". A few scripts do differentiate between uppercase and lowercase however: Latin, Cyrillic, Greek, Armenian, Georgian, and Deseret. Even for these scripts there are some letters that are netherneither uppercase nor lowercase.
 
Scripts can also contain any other general category character such as '''marks''' (diacritic and otherwise), '''numbers''' (numerals), '''punctuation''', '''separators''' (word separators such as spaces), '''symbols''' and non-graphical '''format''' characters. These are included in a particular script when they are unique to that scriptsscript. Other such characters are generally unified and included in the punctuation or diacritic blocks. However, the bulk of characters in any script (other than the common and inherited scripts) are letters.
 
== <span class="anchor" id="List of scripts in Unicode"></span> List of encoded scripts ==
== Common and inherited script ==
{{As of|September 2024|alt=As of version 16.0}}, Unicode defines 168 scripts (called "Alias" or "Property value alias") based on the ISO 15924 list. In addition, Unicode assigns the name "Common" to ISO 15924's {{code|Zyyy}} code for undetermined scripts, "Inherited" to ISO 15924's {{code|Zinh}} code for inherited scripts, and "Unknown" to ISO 15924's {{code|Zzzz}} code for uncoded scripts. There are script codes defined by ISO 15924 but are not used in Unicode, including {{code|Zsym}} (Symbols) and {{code|Zmth}} (Mathematical notation).
{{ISO 15924 script codes and related Unicode data|state=uncollapsed}}
 
== Missing scripts in Unicode ==
Strictly speaking, Unicode assigns every character in the [[UCS]] to a script (one and only one). However, many characters — those that are not part of a formal natural language writing system or are unified across many writing systems — belong to the '''common''' script. Included in the common script are most numerals, most symbols including music notation, currency symbols and so forth. In addition, many diacritics and non-spacing combining characters are assigned to the '''inherited''' script. For these characters their script membership depends on the script of the character with which they combine.
The project Missing Scripts—with contributors from the [[Mainz University of Applied Sciences]], the L’Atelier national de recherche typographique (ANRT) in [[Nancy, France|Nancy]], and the [[University of California, Berkeley]]—has compiled a list of 131 scripts that have not yet been encoded in ''The Unicode Standard'', out of a total of 294 recognized scripts according to the current state of research.<ref>{{Cite web |title=The World's Writing Systems |url=https://www.worldswritingsystems.org/ |access-date=2024-10-04 |website=www.worldswritingsystems.org}}</ref>
 
==See also==
*[[MappingLatin ofscript Unicodein charactersUnicode]]
*[[:Category:Unicode scriptscharacters]]
*[[Unicode symbols]]
== References ==
''See also'': *[[phonemicPhonemic orthography|''phonemic''Phonemic and ''phonetic'' orthography]].
[http://www.unicode.org/versions/Unicode5.0.0/ The Unicode Standard 5.0]
 
== References ==
[[Category:Unicode]]
{{Reflist}}
[[Category:Unicode scripts| ]]
 
==External links==
* [https://sei.berkeley.edu/ Script Encoding Initiative], A project at UC Berkeley, USA, working to get more scripts included in the Unicode standard.
* [https://www.worldswritingsystems.org The World’s Writing Systems], An overview of all 294 known writing systems, each with a typographic reference glyph and their Unicode status.
 
{{Unicode navigation}}
{{main|Writing systemsystems}}
 
[[Category:Unicode|Scripts]]