CARVIEW |
This document points to resources for the layout and presentation of text in languages that use the Adlam script. The target audience includes developers of Web standards and technologies, such as HTML, CSS, Mobile Web, Digital Publications, and Unicode, as well as implementers of web browsers, ebook readers, and other applications that need to render Adlam text.
This document points to resources for Adlam script layout and text support on the Web and in eBooks. These requirements provide information for Web technologies such as CSS, HTML and digital publications about how to support languages written using the Adlam script. The information here is developed in conjunction with a document that summarises gaps where the Web fails to adequately support the Adlam script.
The editor's draft of this document is being developed in the GitHub repository African Language Enablement (afrlreq), with contributors from the W3C Internationalization Interest Group. It is published by the Internationalization Working Group. The end target for this document is a Working Group Note.
To make it easier to track comments, please raise separate issues or emails for each comment, and point to the section you are commenting on using a URL.
Some links on this page point to repositories or pages to which information will be added over time. Initially, the link may produce no results, but as issues, tests, etc. are created they will show up.
Links that have a gray color led to no content the last time this document was updated. They are still live, however, since relevant content could be added at any time. When the document is updated, links that now point to results will have their live colour restored.
Introduction
Contributors
The initial version of this document was prepared by Richard Ishida.
See also the GitHub contributors list for the African Language Enablement project, and the discussions related to Adlam script.
About this document
This document points to resources for Adlam script layout and text support on the Web and in eBooks. These resources provide information for developers of Web technologies such as CSS, HTML and digital publications, and for application developers, about how to support languages written using the Adlam script. They include requirements, tests, GitHub discussions, type samples, and more,
The document focuses on typographic layout issues. For a deeper understanding of the Adlam script and how it works see Fula (Adlam) Orthography Notes, which includes topics such as: Phonology, Vowels, Consonants, and Numbers.
Gap analysis
This document should be used alongside a separate document, Adlam Gap Analysis, which describes gaps in language support for users of the Adlam script, and prioritises and describes the impact of those gaps on the user.
Gap reports are brought to the attention of spec and browser implementers, and are tracked via the Gap Analysis Pipeline. (Filter for Adlam script items)
Other related resources
The document Language enablement index points to this document and others, and provides a central location for developers and implementers to find information related to various scripts.
The W3C also has a repository with discussion threads related to the Adlam script, including requests from developers to the user community for information about how scripts/languages work, and a notification system that tracks issues in W3C working groups related to the Adlam script. See a list of unresolved questions for Adlam experts. Each section below points to related discussions. See also the repository home page.
Adlam Script Overview
The Adlam script is an alphabet, ie. a writing system in which both consonants and vowels are indicated.
Modern Adlam can be written using a subset of the letters available in the Adlam Unicode block. The remainder are used for writing Todo, Sibe, and Manchu, or for writing foriegn words, especially in Tibetan and Sanskrit.
Adlam text runs right-to-left in horizontal lines. Unlike Arabic, numbers are also written right-to-left.
The script can be written cursively or not. Non-joining fonts may be used for titles, etc.
Adlam is bicameral.
The native consonant letters used for Fula are supplemented by repertoire extensions for more sounds used in foreign and loan words, and by applying a consonant modifier diacritic or a nukta to characters for more foreign (mostly Arabic) sounds.
There is no special treatment for consonant clusters or final consonants.
Diacritics are used to indicate prenasalisation and gemination.
This script is an alphabet where vowels are written using 5 vowel letters (10 counting both uppercase and lowercase) and 3 combining marks. The 5 vowel letters do not reflect differences in vowel quality associated with short vs. long vowels. A nukta diacritic can be used to indicate 2 specific sounds (though that is rare).
Long vowels are also indicated using one of 2 combining marks.
Standalone vowels are written using ordinary vowel letters and no special arrangements.
Adlam has a set of native numerals. Numbers are written from right-to-left, and therefore do not create bidirectional text.
All topics
- GitHub discussions
- Type samples
- Tests
- Gap analysis
Text direction
Writing mode
Adlam text runs right to left in horizontal lines.
Bidirectional text
- Requirements
-
- Pular (Adlam) Orthography Notes: Text direction • Digits
- Additional Requirements for Bidi in HTML
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Glyph shaping & positioning
Fonts & font styles
- Requirements
-
- Pular (Adlam) Orthography Notes: Font styles
- Generic font families (unjoined)
- List of system fonts
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Context-based shaping & positioning
- Requirements
-
- Pular (Adlam) Orthography Notes: Context-based shaping & positioning
- GitHub discussions
- Type samples
- Tests
-
- Exploratory/interactive test results (tbc)
- Exploratory/interactive test repo (tbc)
- Gap analysis
- Specification links
-
Cursive text
- Requirements
-
- Pular (Adlam) Orthography Notes: Cursive shaping
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Letterform slopes, weights, & italics
- Requirements
-
- Pular (Adlam) Orthography Notes: Letterform slopes, weights, & italics
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Case & other character transforms
- Requirements
-
- Pular (Adlam) Orthography Notes: Case & other character transforms
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Typographic units
Characters & encoding
- Requirements
-
- Pular (Adlam) Orthography Notes: Vowels • Consonants
- Character usage
- GitHub discussions
- Type samples
-
- W3C type samples
- r12a type samples: consonants • vowels
- Tests
-
- Exploratory/interactive test results (tbc)
- Exploratory/interactive test repo (tbc)
- Gap analysis
- Specification links
-
Grapheme/word segmentation & selection
- Requirements
-
- Pular (Adlam) Orthography Notes: Word boundaries
- GitHub discussions
- Type samples
- Tools
- Tests
- Gap analysis
- Specification links
-
Punctuation & inline features
Phrase & section boundaries
- Requirements
-
- Pular (Adlam) Orthography Notes: Phrase & section boundaries
- GitHub discussions
- Type samples
-
- W3C type samples
- r12a type samples: phrases • bracketing
- Tests
-
- Exploratory/interactive test results (tbc)
- Exploratory/interactive test repo (tbc)
- Gap analysis
- Specification links
-
Quotations & citations
- Requirements
-
- Pular (Adlam) Orthography Notes: Quotations & citations
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Emphasis & highlighting
- Requirements
-
- tbd
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Abbreviation, ellipsis & repetition
- Requirements
-
- tbd
- GitHub discussions
- Type samples
- Tests
-
- Exploratory/interactive test results (tbc)
- Exploratory/interactive test repo (tbc)
- Gap analysis
- Specification links
-
Inline notes & annotations
- Requirements
-
- tbd
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Other text decoration & inline features
- Requirements
-
- tbd
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Line & paragraph layout
Line breaking & hyphenation
- Requirements
-
- Pular (Adlam) Orthography Notes: Line breaking & hyphenation
- Approaches to line-breaking
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
Text alignment & justification
- Requirements
-
- Pular (Adlam) Orthography Notes: Text alignment & justification
- Approaches to full justification
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Text spacing
- Requirements
-
- tbd
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Baselines, line height, etc.
- Requirements
-
- Pular (Adlam) Orthography Notes: Baselines, line height, etc.
- GitHub discussions
- Type samples
- Tests
-
- Exploratory/interactive test results (tbc)
- Exploratory/interactive test repo (tbc)
- Gap analysis
- Specification links
-
Lists, counters, etc.
- Requirements
-
- Pular (Adlam) Orthography Notes: Counters, lists, etc.
- Ready-made Counter Styles: Adlam
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Styling initials
- Requirements
-
- Pular (Adlam) Orthography Notes: Styling initials
- GitHub discussions
- Type samples
- Tests
- Gap analysis
- Specification links
-
Page & book layout
General page layout & progression
- Requirements
-
- Pular (Adlam) Orthography Notes: General page layout & progression
- GitHub discussions
- Tests
-
- Exploratory/interactive test results (tbc)
- Exploratory/interactive test repo (tbc)
- Gap analysis
- Specification links
-
Grids & tables
tbd
Footnotes, endnotes, etc
tbd
Page headers, footers, etc
tbd
Forms & user interaction
- Requirements
-
- tbd
- GitHub discussions
- Tests
-
- Exploratory/interactive test results (tbc)
- Exploratory/interactive test repo (tbc)
- Gap analysis
- Specification links
-
Change log
- Applied new template.
- Fixed various links.