Updated 13 December, 2024
This page brings together basic information about the Adlam script and its use for the Fula language. The examples used here generally reflect the Pular dialect. It aims to provide a brief, descriptive summary of the modern, printed orthography and typographic features, and to advise how to write Fula using Unicode.
Richard Ishida, Fula (Adlam) Orthography Notes, 13-Dec-2024, https://r12a.github.io/scripts/adlm/fuf
𞤑𞤵𞥅𞤤𞤢𞤤 𞤺𞤢𞤣𞤢𞤲𞤢𞤤 𞤋𞤲𞥆𞤢𞤥𞤢 𞤢𞥄𞤣𞤫𞥅𞤶𞤭 𞤬𞤮𞤬 𞤨𞤮𞤼𞤭⹁ 𞤲𞥋𞤣𞤭𞤥𞤯𞤭𞤣𞤭 𞤫 𞤶𞤭𞤦𞤭𞤲𞤢𞤲𞥆𞤣𞤫 𞤼𞤮 𞤦𞤢𞤲𞥆𞤺𞤫 𞤸𞤢𞤳𞥆𞤫𞥅𞤶𞤭. 𞤉𞤩𞤫 𞤲'𞤺𞤮𞥅𞤣𞤭 𞤥𞤭𞥅𞤶𞤮 𞤫 𞤸𞤢𞤳𞥆𞤭𞤤𞤢𞤲𞤼𞤢𞥄𞤺𞤢𞤤 𞤫𞤼𞤫 𞤫𞤩𞤫 𞤨𞤮𞤼𞤭 𞤸𞤵𞥅𞤬𞤮 𞤲𞥋𞤣𞤭𞤪𞤣𞤫 𞤫 𞤲𞥋𞤣𞤫𞤪 𞤩 𞤭𞤴𞤲𞤺𞤵𞤴𞤵𞤥𞥆𞤢𞥄𞤺𞤵.
𞤑𞤵𞥅𞤤𞤢𞤤 𞥒 𞤘𞤮𞥅𞤼𞤮 𞤳𞤢𞤤𞤢 𞤭𞤲𞤢 𞤱𞤢𞥄𞤱𞤭 𞤸𞤮𞤳𞥆𞤵𞤲𞤣𞤫 𞤸𞤮𞥅𞤪𞤫 𞤥𞤵𞤥 𞤸𞤢𞤳𞥆𞤫𞥅𞤶𞤭 𞤫 𞤲𞥋𞤣𞤭𞤥𞤢 𞤺𞤵𞥅𞤶𞤭 𞤳𞤢𞥄𞤤𞤢𞥄𞤯𞤭 𞤫 𞤲𞤢𞤲𞤮𞤲𞤣𞤭𞤪𞤢𞤤𞤲𞤺𞤢𞤤 𞤼𞤢𞤱𞤢 𞤢𞤤𞤢𞥄 𞤨𞤢𞤤𞤼𞤢𞤺𞤮𞤤 𞤲𞥋𞤺𞤵𞤪𞤵⹁𞤐𞥋𞤦𞤢𞤴𞤣𞤭⹁ 𞤤𞤫𞤻𞤮𞤤⹁ 𞤯𞤫𞤥𞤲𞤺𞤢𞤤⹁ 𞤣𞤭𞥅𞤲𞤫⹁ 𞤭𞤱𞤣𞤭 𞤤𞤫𞤴𞤣𞤭 𞤱𞤢𞤤𞥆𞤢 𞤪𞤫𞤲𞥆𞤣𞤮⹁ 𞤣𞤢𞤻𞤢𞤤⹁ 𞤶𞤭𞤦𞤭𞤲𞤢𞤲𞤣𞤫 𞤱𞤢𞤤𞥆𞤢 𞤳𞤢𞤤𞤢 𞤲𞥋𞤺𞤮𞤲𞤳𞤢. 𞤉 𞤳𞤮 𞤬𞤢𞤱𞤼𞤭𞥅 𞤸𞤫𞥅𞤲 𞤸𞤢𞤴 𞤨𞤢𞤤𞤼𞤮𞥅𞤪 𞤺𞤮𞥅𞤼𞤮 𞤱𞤮𞥅𞤣𞤢𞤼𞤢𞥄 𞤫 𞤣𞤮𞤱 𞤴𞤮𞤱𞤭𞤼𞤢𞥄𞤣𞤫 𞤫 𞤣𞤢𞤱𞤪𞤵𞤺𞤮𞤤⹁ 𞤻𞤢𞥄𞤱𞤮𞥅𞤪𞤫 𞤸𞤢𞤳𞥆𞤵𞤲𞤣𞤫 𞤤𞤫𞤴𞤯𞤫𞥅𞤤𞤫 𞤬𞤢𞤱𞤢𞥄𞤣𞤫 𞤫 𞤲𞤫𞤯𞥆𞤮 𞤵𞤥𞥆𞤭𞥅𞤯𞤮 𞤤𞤫𞤴𞤣𞤭 𞤱𞤢𞤤𞥆𞤢 𞤲𞤫𞤯𞥆𞤮 𞤥𞤮 𞤴𞤮𞤱𞤭𞤼𞤢𞥄𞤳𞤭 𞤥𞤢𞥄 𞤱𞤮𞤲𞤭 𞤨𞤢𞤱𞤭𞤯𞤮 𞤴𞤢𞤥𞤭𞤪𞤮𞥅𞤪𞤫 𞤤𞤢𞥄𞤱𞤯𞤭𞤲𞤢𞥄𞤲𞤣𞤫 𞤱𞤢𞥄𞤱𞤲𞤣𞤫 𞤱𞤮𞤲𞤣𞤫 𞤬𞤮𞤬.
Source: Unicode UDHR, articles 1 & 2
Origins of the Adlam script, 1980s – today.
Not a descendant of another script, however aspects such as direction and glyph joining were inspired by Arabic.
The Adlam script was devised in the 1980s, and is nowadays used for writing the Fulani language, alongside Latin and Arabic orthographies. It is currently taught in Guinea, Nigeria, Liberia and other nearby countries.
The English names Fula(h) and Fulani originally come from Manding and Hausa, respectively. Pular or Pulaar is the way the Fula people refer to their language in western dialects. In central and eastern dialects it is Fulfulde. Sometimes the French name Peul (from Wolof) can be found.
The spread of the script is occurring remarkably rapidly across the whole Fula/Fulfulde-speaking world, through a grass-roots movement. The new script appeals to Fula speakers, and its use is having a positive impact on general literacy among them.
𞤀𞤣𞤤𞤢𞤥
The script was developed by two teenage brothers, Ibrahima and Abdoulaye Barry, so that their language could have its own script. The name of the script ‘Adlam’ reflects the first four characters in the repertoire: A, D, L, and M.
After teaching their own family and local villagers to use the script for lessons in water hygiene and basic medical care, the brothers set up learning centres in Togo, Senegal, and Benin. Eventually, the means were available to print the script, and a newspaper and a number of printed books were published.
The shapes of the glyphs used has evolved over time, and various changes were standardised in 2019, however some fonts have not yet caught up with these changes.
See also variants.
More information: Scriptsource • Wikipedia
The Adlam script is an alphabet. Both consonants and vowels are indicated by letters. See the table to the right for a brief overview of features for the Pular language.
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, so all the numbers below need to be doubled to account for upper- and lowercase variants.
The 22 basic consonant letters used for Fula are supplemented by repertoire extensions for 6 more sounds used in foreign and loan words. It is also possible to apply a consonant modifier diacritic or a nukta to 9 characters to represent additional foreign (mostly Arabic) sounds.
There is no special treatment for consonant clusters or final consonants.
The diacritics are also used to indicate prenasalisation and gemination.
❯ basicV
Vowels are written using 5 vowel letters (10 counting both uppercase and lowercase). One of two combining marks is used above them to indicate long vowels. A nukta diacritic can be used to indicate the sounds e and o (though they are rare).
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.
The following represents the general repertoire of the Fula languages and dialects.
Click on the sound groups to see where else in the document each of the sounds are referred to.
Phones in a lighter colour are infrequently used. Source Wikipedia.
Whether the script is Adlam, Latin, or Arabic, the sources of information found for Fula don't provide a great deal of clarity around the precise phonetic pronunciation of the vowel sounds, and, unfortunately, there is no IPA-transcribed data in Wiktionary to help clarify actual pronunciation.
Most sources simply transcribe all vowel sounds as a i e o u, which are the phonemically distinct vowels. However, some sources make a distinction in their transcriptions between short vowels pronounced ɪ ʊ ɛ ɔ a, and long vowels pronounced iː uː eː oː aː.
Furthermore, the phonetic sounds of a vowel may be influenced by the following consonant.lhs
Examples in this page are drawn from various sources, and may or may not use broad phonemic or narrow(er) transcriptions.
Fula/Fulfulde diphthongs are all vowels followed by a -j or a -w glide. They include the following.mhm
iw | |
uj | |
ey ew | |
oj ow | |
aj aw | |
uj doesn't occur in word-final position.mhm,28
Fula is reported to be one of only 3 languages that contrast prenasalized consonants and their corresponding clusters (eg. ᵐb versus mb).@Wikipedia: Prenasalized consonant,https://en.wikipedia.org/wiki/Prenasalized_consonant
The lighter coloured phones are used for foreign sounds, especially for Arabic but also for sounds of other African languages. These are not usually mentioned in descriptions of the Latin and Arabic orthographies for Fula, but they are listed here principally because Adlam was designed with ways of writing those sounds.
Observation: A few sources mention a letter that represents the sound ɠ, found in Guinea, and written in the Latin orthography with the same symbol (though previously written using q). No examples of this sound have been encountered in my research.
Languages in the Atlantic group of the Niger-Congo family, of which Fula is one, are unusual in that they are not tonal.
Fula has 2 regular syllable types: CV and CVC, where V can be a short or long vowel, and an initial C may be a glottal stop. Only a small number of sounds can occur as a coda, and closed syllables are much less common than open ones.
The distinction between long and short vowels is phonemically distinctive.
Consonant clusters only occur where a syllable follows a closed syllable. Gemination is, however, a distinctive feature.
A syllable can only contain a single vowel.lhs
Click on the characters to find where they are mentioned in this page.
The Fula alphabet has 23 consonants and 5 vowels. Each has upper and lowercase forms; shown above and below, respectively.
The following table summarises the main vowel to character assigments.
Lowercase is shown on the left, uppercase on the right.
Vowels: | ||
---|---|---|
For additional details see vowel_mappings.
Vowels are written using 5 vowel letters (10 counting both uppercase and lowercase). One of two combining marks is used above them to indicate long vowels. A nukta diacritic can be used to indicate the sounds e and o (though they are rare).
The basic vowels are written as follows:
These letters actually map to more than one sound phonetically. See phonemesV for more details.
Vowel length is phonetically significant in Fula, eg. compare:
𞤢𞤥𞤵𞤺𞤮𞤤
𞤢𞥄𞤥𞤵𞤺𞤮𞤤
Long vowel sounds are indicated using one of 2 diacritics. 1E945 is used for all vowels except 𞤢, which uses 1E944 instead.
According to Eversone, 1E944 can also be used above a consonant to indicate the sound aː without a vowel, eg.
𞤣𞥄 dˉ daː
Long vowels can also be written by following a vowel with a 𞤸 that is not followed by a vowel, eg.
𞤧𞤫𞤸𞤪𞤫 seere
The latest glyph reform introduces visual differences in the shapes used for the lengthening diacritic, not only between the alif lengthener and other lengtheners, but also between upper vs lowercase letters.p The top row below is lowercase, and uppercase is below it.
Where the letter 𞤫, which could be read as ɛ, needs to be read as e, the appropriate sound can be signalled using the combination 𞤫𞥊. Similarly, 𞤮𞥊 is read as o rather than ɔ. This convention is used for both native and borrowed sounds.e,2
The 1E94A normally appears above the base letter, but when the sound is long the diacritic appears below the base character, while the lengthening mark appears above.
These combinations are not common in Adlam texts.
The nukta should be typed and stored before the lengthening mark.
Standalone vowels are written using ordinary vowel letters and no special arrangements.
𞤉𞤲𞤫𞥅𞤲
𞤢𞥄𞤬𞤭𞤴𞤢
This section maps Fula vowel sounds to common graphemes in the Adlam orthography.
Light coloured characters occur infrequently.
𞤭 𞤭𞤭𞤭
lc 𞤭
𞤋 𞤋𞤋𞤋
uc 𞤋
lc 𞤭𞥅
uc 𞤋𞥅
𞤵 𞤵𞤵𞤵
lc 𞤵
𞤓 𞤓𞤓𞤓
uc 𞤓
lc 𞤵𞥅
uc 𞤓𞥅
𞤫 𞤫𞤫𞤫
lc 𞤫
𞤉 𞤉𞤉𞤉
uc 𞤉
lc 𞤫𞥊𞥊 The diacritic indicates that this is e, rather than ɛ.
uc 𞤉𞥊𞥊 The diacritic indicates that this is e, rather than ɛ.
lc 𞤫𞥅
uc 𞤉𞥅
lc 𞤫𞥊𞥅 The diacritic below indicates that this is e, rather than ɛ.
uc 𞤉𞥊𞥅 The diacritic below indicates that this is e, rather than ɛ.
𞤮 𞤮𞤮𞤮
lc 𞤮
𞤌 𞤌𞤌𞤌
uc 𞤌
lc 𞤮𞥊 The diacritic indicates that this is o, rather than ɔ.
uc 𞤌𞥊 The diacritic indicates that this is o, rather than ɔ.
lc 𞤮𞥅
uc 𞤌𞥅
lc 𞤮𞥊𞥅 The diacritic below indicates that this is o, rather than ɔ.
uc 𞤌𞥊𞥅 The diacritic below indicates that this is o, rather than ɔ.
𞤢 𞤢𞤢𞤢
lc 𞤢
𞤀 𞤀𞤀𞤀
uc 𞤀
lc 𞤢𞥄
uc 𞤀𞥄
The following table summarises the main consonant to character assigments.
The right column shows letters used in loan words and foreign pronunciations (especially Arabic), but not usually used for native Fula text.
Lowercase | ||
---|---|---|
Uppercase | ||
---|---|---|
For additional details see consonant_mappings.
Fula uses the following basic set of consonant characters. Lowercase above, uppercase below.
A set of supplementary letters are used for loan words and proper nouns originated in neighbouring ethnic groups.
Adlam has 3 diacritics for extending letters to cover non-native sounds (principally Arabic).
1E948 and 1E94A provide the basic diacritics. They are shown here in lowercase, with corresponding Arabic letters.
The third diacritic, 1E949, is used when one of these modified letters is also geminated.
When a consonant is followed immediately by a glottal stop and then a vowel, the glottal stop is represented using the diacritic 1E947 over the preceding consonant (see fig_glottal_stop).e,2
𞤗𞤵𞤪𞥇𞤢𞤲
A word-initial standalone vowel begins with an unwritten glottal stop.
𞤢𞤧𞤢𞤥𞤢𞥄𞤲
Observation: It appears that an apostrophe is used for the glottal stop that occurs with word-medial standalone vowels? eg. 𞤸𞤢ʼ𞤢𞤤𞤢 haʼala
Pre-nasalised consonants are indicated by adding 𞥋, called 𞤻𞤮𞤲𞤣𞤢𞤤 nyondal, between 𞤲 and the consonant affected. The nyondal is used to clarify the syllable boundaries, eg. compare 𞤸𞤭𞤲𞥋𞤣𞤵 𞤸𞤭𞤲𞤣𞤵
Word-initially, the nyondal may or may not be usedsow, so either of the 2 following spellings are possible: 𞤲𞥋𞤺𞤵𞤪𞤫 𞤲𞤺𞤵𞤪𞤫
Other places where the nyondal is not needed includesow:
when word-medial but not preceded by a vowel, eg.
𞤩𞤫𞤴𞤲𞤺𞤵
after a long vowel, eg.
𞤱𞤫𞥅𞤲𞤣𞤵
If it appears between two joined letters, the nasalisation character should not break that join.
𞤲𞥋𞤺𞤵𞤪𞤫
This character was added to Unicode version 12. Prior to that, people used an apostrophe, but that is not desirable, because it breaks the cursive joining.
Other than the prenasalised consonants, Fula has no special features related to syllable onsets.
Fula has no dedicated characters to represent syllable codas or other consonant clusters. Ordinary consonant letters are simply used in a cluster.
𞤢𞤥𞤣𞤫
𞤬𞤮𞥅𞤬𞤣𞤫
Consonant clusters are generally only found where one syllable ends with a coda and the next begins with a consonant. They are not complicated, and the number of consonant sounds that can appear in a coda are limited.
Apart from the prenasalised consonants, Fula has no conjuncts or other special mechanisms for handling consonant clusters. There is no diacritic like the Arabic sukun to indicate vowel absence. A simple sequence of consonant letters is used. (But see clength.) Examples:
𞤪𞤫𞤥𞤣𞤫
𞤬𞤭𞤶𞤣𞤫
Gemination of consonants is normally indicated using 1E946,e,2 eg. compare 𞤧𞤢𞤳𞤫 𞤧𞤢𞤳𞥆𞤫
As mentioned in extendedC, letters that have consonant modifier diacritics use a special code point, 1E949 that combines the gemination marker with the modifier.
Letters that combine with 1E94A should move that diacritic below the base character and keep the gemination mark above, eg. see fig_gemination.
This section maps Fula consonant sounds to common graphemes in the Adlam orthography.
Sounds listed as 'infrequent' are allophones, or sounds used for foreign words, etc. Light coloured characters occur infrequently.
𞤨 𞤨𞤨𞤨
lc 𞤨
𞤆 𞤆𞤆𞤆
uc 𞤆
𞤦 𞤦𞤦𞤦
lc 𞤦
𞤄 𞤄𞤄𞤄
uc 𞤄
𞤩 𞤩𞤩𞤩
lc 𞤩
𞤇 𞤇𞤇𞤇
uc 𞤇
𞤼 𞤼𞤼𞤼
lc 𞤼
𞤚 𞤚𞤚𞤚
uc 𞤚
lc𞤼𞥈 Represents Arabic ط.
uc 𞤚𞥈
𞤷 𞤷𞤷𞤷
lc 𞤷
𞤕 𞤕𞤕𞤕
uc 𞤕
𞤣 𞤣𞤣𞤣
lc 𞤣
𞤁 𞤁𞤁𞤁
uc 𞤁
lc 𞤣𞥈 Represents Arabic ض.
uc 𞤁𞥈
𞤶 𞤶𞤶𞤶
lc 𞤶
𞤔 𞤔𞤔𞤔
uc 𞤔
𞤯 𞤯𞤯𞤯
lc 𞤯
𞤍 𞤍𞤍𞤍
uc 𞤍
𞤳 𞤳𞤳𞤳
lc 𞤳
𞤑 𞤑𞤑𞤑
uc 𞤑
𞤺 𞤺𞤺𞤺
lc 𞤺
𞤘 𞤘𞤘𞤘
uc 𞤘
𞤹 𞤹𞤹𞤹
lc 𞤹
𞤗 𞤗𞤗𞤗
uc 𞤗
𞤰 𞤰𞤰𞤰
lc 𞤰
𞤎 𞤎𞤎𞤎
uc 𞤎
𞥇 Used above a consonant which is followed immediately by a glottal stop and then a vowel.
𞤲𞥋𞤦
𞤲𞥋𞤣
𞤲𞥋𞤶
𞤲𞥋𞤺
𞥂 𞥂𞥂𞥂
lc 𞥂 Used for non-native sounds in loan words.
𞤠 𞤠𞤠𞤠
uc 𞤠
𞥀 𞥀𞥀𞥀
lc 𞥀 Used for non-native sounds in loan words.
𞤞 𞤞𞤞𞤞
uc 𞤞
𞤬 𞤬𞤬𞤬
lc 𞤬
𞤊 𞤊𞤊𞤊
uc 𞤊
𞤾 𞤾𞤾𞤾
lc 𞤾 Used for non-native sounds in loan words.
𞤜 𞤜𞤜𞤜
uc 𞤜
lc 𞤧𞥊 Represents Arabic ث.
uc 𞤅𞥊
𞤧 𞤧𞤧𞤧
lc 𞤧
𞤅 𞤅𞤅𞤅
uc 𞤅
lc𞤧𞥈 Represents Arabic ص.
uc 𞤅𞥈
𞥁 𞥁𞥁𞥁
lc 𞥁 Used for non-native sounds in loan words.
𞤟 𞤟𞤟𞤟
uc 𞤟
lc 𞤶𞥊 Represents Arabic ز.
uc 𞤔𞥊
lc 𞤶𞥈 Represents Arabic ظ.
uc 𞤔𞥈
𞥃 𞥃𞥃𞥃
lc 𞥃 Used for non-native sounds in loan words.
𞤡 𞤡𞤡𞤡
uc 𞤡
𞤿 𞤿𞤿𞤿
lc 𞤿 Used for non-native sounds in loan words.
𞤝 𞤝𞤝𞤝
uc 𞤝
lc 𞤺𞥈 Represents Arabic غ.
uc 𞤘𞥈
lc 𞤢𞥈 Represents Arabic ع.
uc 𞤀𞥈
lc 𞤸𞥈 Represents Arabic ه.
uc 𞤖𞥈
𞤸 𞤸𞤸𞤸
lc 𞤸
𞤖 𞤖𞤖𞤖
uc 𞤖
𞤥 𞤥𞤥𞤥
lc 𞤥
𞤃 𞤃𞤃𞤃
uc 𞤃
𞤲 𞤲𞤲𞤲
lc 𞤲
𞤐 𞤐𞤐𞤐
uc 𞤐
𞤻 𞤻𞤻𞤻
lc 𞤻
𞤙 𞤙𞤙𞤙
uc 𞤙
𞤽 𞤽𞤽𞤽
lc 𞤽
𞤛 𞤛𞤛𞤛
uc 𞤛
𞤱 𞤱𞤱𞤱
lc 𞤱
𞤏 𞤏𞤏𞤏
uc 𞤏
𞤪 𞤪𞤪𞤪
lc 𞤪
𞤈 𞤈𞤈𞤈
uc 𞤈
𞤤 𞤤𞤤𞤤
lc 𞤤
𞤂 𞤂𞤂𞤂
uc 𞤂
𞤴 𞤴𞤴𞤴
lc 𞤴
𞤒 𞤒𞤒𞤒
uc 𞤒
Adlam uses native digits.
Unlike other right-to-left scripts such as Arabic, Hebrew, and Thaana, (but like N'Ko) the numbers are displayed right-to-left, with the most significant digit first.e This means that numbers don't produce bidirectional text in Adlam
fig_numbers refers to a date of 15 October 2022.
The shape of 𞥖 was significantly changed by the 2019 glyph shape reform to make it less similar to the letter HA.p
For thousands and decimal separators, Adlam uses a space and a period, respectively.n
See type samples.
Adlam text is written horizontally, with successive lines progressing down the page.
Inline text is right-to-left in the main but, as in most right-to-left scripts, embedded left-to-right script text is written left-to-right (producing 'bidirectional' text).
However, like N'Ko but unlike Arabic, numbers are also written with digits in right-to-left order.
The Unicode Bidirectional Algorithm automatically takes care of the ordering for all the text in fig_bidi, as long as the 'base direction' is set to RTL. In HTML this can be set using the dir
attribute, or in plain text using formatting controls.
If the base direction is not set appropriately, the directional runs will be ordered incorrectly as shown in fig_bidi_no_base_direction.
Show default bidi_class
properties for characters in the Fula language.
For other aspects of dealing with right-to-left writing systems see the following sections:
For more information about how directionality and base direction work, see Unicode Bidirectional Algorithm basics. For information about plain text formatting characters see How to use Unicode controls for bidi text. And for working with markup in HTML, see Creating HTML Pages in Arabic, Hebrew and Other Right-to-left Scripts.
Unicode provides a set of 10 formatting characters that can be used to control the direction of text when displayed. These characters have no visual form in the rendered text, however text editing applications may have a way to show their location.
202B (RLE), 202A (LRE), and 202C (PDF) are in widespread use to set the base direction of a range of characters. RLE/LRE comes at the start, and PDF at the end of a range of characters for which the base direction is to be set.
In Unicode 6.1, the Unicode Standard added a set of characters which do the same thing but also isolate the content from surrounding characters, in order to avoid spillover effects. They are 2067 (RLI), 2066 (LRI), and 2066 (PDI). The Unicode Standard recommends that these be used instead.
There is also 2068 (FSI), used initially to set the base direction according to the first recognised strongly-directional character.
061C (ALM) is used to produce correct sequencing of numeric data. Follow the link and see expressions for details.
200F (RLM) and 200E (LRM) are invisible characters with strong directional properties that are also sometimes used to produce the correct ordering of text.
For more information about how to use these formatting characters see How to use Unicode controls for bidi text. Note, however, that when writing HTML you should generally use markup rather than these control codes. For information about that, see Creating HTML Pages in Arabic, Hebrew and Other Right-to-left Scripts.
This section brings together information about the following topics: font/writing styles; cursive text; context-based shaping; context-based positioning; letterform slopes, weights, & italics; case & other character transforms.
You can experiment with examples using the Adlam character app.
Adlam is usually cursive, ie. letters in a word are joined up (see cursive and fig_joined_writing_style), however a non-cursive writing style (see fig_unjoined_writing_style) is sometimes used, mainly as display fonts for books and article titles as well as educational content (because the unconnected script is easier to learn).n
See variants for information about recent glyph shape changes.
When Adlam is cursive (see writing_styles), letters in a word are joined up. Fonts need to produce the appropriate joining form for a letter, according to its visual context, but the code point remains the same. This results in four different glyphs for most letters (including an isolated glyph).
The cursive treatment doesn't produce major variations of the essential part of the glyph for a character (unlike Arabic), but there are some small adaptations.
Unlike Arabic and Syriac scripts, no glyphs join only on one side.
Unlike Arabic or Syriac, joining forms generally only differ by the addition of a small baseline extension. A few items in the table are highlighted that have very small additional changes, most amounting to just a small extension of a stroke. Also, whereas Arabic and Syriac re-use a number of basic shapes to create additional letters by adding diacritics, in Adlam each letter shape is different. fig_joining_forms shows the basic shapes in Adlam and what their joining forms look like.
200D (ZWJ) and 200C (ZWNJ) are used to control the visual joining behaviour of cursive glyphs. They are particularly useful in educational contexts. For example, the ZWJ was used to create the shapes in fig_joining_forms.
ZWJ permits a letter to form a cursive connection without a visible neighbour.
ZWNJ prevents two adjacent letters forming a cursive connection with each other when rendered.
Observation: The ZWJ only works on the left side of glyphs in fig_joining_forms if the table cell's base direction is set to RTL.
Fula letters need to be shaped for cursive joining (see just above). Otherwise, there is not much contextual glyph shaping. There are no conjuncts or special shaping for consonant clusters.
Context does affect the shape of the vowel-lengthening diacritic when placed over upper vs lowercase letters.p
Fula has combining marks, which need to be placed relative to their base character. And in some cases multiple combining marks are attached to a single base, which leads to further context-sensitive positioning of glyphs.
For example, 1E94A usually sits above the letter it modifies, but if the letter is also lengthened or geminated, it moves below the letter and leaves the lengthening/gemination diacritic above.
See type samples.
Adlam texts use both bolding and italics.
The Kigelia font may be the first italicised Adlam tyeface, but its development was based on requests from the community of users. Discussion with the community led to an italic form that leans to the right (unlike N'Ko).g,#issuecomment-512911833
Adlam words are separated by spaces.
Graphemes in Adlam consist of single letters or letters with one or two combining marks. This means that text can be segmented into typographic units using grapheme clusters.
Phrase, sentence, and section delimiters are described in phrase.
See type samples.
phrase | ⹁ ⁏ : |
---|---|
sentence | . 𞥟؟ 𞥞! |
The question mark, ؟, is from the Arabic block, but the comma and semicolon are ⹁ and ⁏, respectively, rather than the Arabic comma and semicolon. (The Arabic comma/semicolon are only used as carryovers from the older Adlam fonts.)n
𞥟 and 𞥞 are used to begin a phrase that is a question or exclamation, respectively, much like ¿ and ¡ in Spanish. The phrase ends using an Arabic question mark or ASCII exclamation mark,e,2 eg.
𞥟 𞤢𞤤𞤢𞥄 ؟
𞥞 𞤢𞤤𞤢𞥄 !
The shapes of these question and exclamation punctuation marks were significantly changed in the 2019 shape reform, with the aim of making them more visually appealing.
Observation: The punctuation marks appear to be separated from the rest of the text by a space.
Fula commonly uses ASCII parentheses to insert parenthetical information into text.
start | end | |
---|---|---|
standard | ( |
) |
The words 'left' and 'right' in Unicode names for parentheses, brackets, and other paired characters should be ignored. LEFT should be read as if it said START, and RIGHT as END. The direction in which the glyphs point will be automatically determined according to the base direction of the text.
The number of characters that are mirrored in this way is around 550, most of which are mathematical symbols. Some are single characters, rather than pairs. The following are some of the more common ones.
See type samples.
Adlam texts use the following punctuation around quotations. Of course, due to keyboard design, quotations may also be surrounded by ASCII double and single quote marks.
start | end | |
---|---|---|
initial | ” |
“ |
The row labelled 'initial' indicates the usual default quote marks.
Note that these characters are not mirrored during display in RTL text. This means that LEFT indicates use on the left, and RIGHT indicates use on the right, unlike other types of paired punctuation. That is why, in the table above, the 'start' and 'end' columns in the table above are ordered as they are.
See type samples.
Adlam text uses the 3-dot ellipsis ….
Adlam text breaks primarily at the spaces around words. In-word breaks using hyphenation also occur.
When a line break occurs in the middle of an embedded left-to-right sequence, the items in that sequence need to be rearranged visually so that it isn't necessary to read lines from top to bottom.
latin-line-breaks shows how two Latin words are apparently reordered in the flow of text to accommodate this rule. Of course, the rearragement is only that of the visual glyphs: nothing affects the order of the characters in memory.
As in almost all writing systems, certain punctuation characters should not appear at the end or the start of a line. The Unicode line-break properties help applications decide whether a character should appear at the start or end of a line.
Show (default) line-breaking properties for characters in the Fula language.
The following list gives examples of typical behaviours for some of the characters used in Adlam text. Context may affect the behaviour of some of these and other characters.
Click/tap on the characters to show what they are.
Fula text uses hyphenation at the end of a line to reduce excess space during justification. See an example in fig_hyphenation.
See type samples.
Fully-justified text in Fula is produced by adding spaces between words, but long words may be hyphenated to reduce the overall space added.g
In the past, justification involved stretching the baseline, using ـ, but the modern preference is to use interword spacing, instead. See also historical_justification.
Adlam uses the so-called 'alphabetic' baseline, which is the same as for Latin and many other scripts.
Adlam places vowel and tone marks above base characters, and can also add combining characters below the line. The resulting complexity means that the vertical resolution needed for clearly readable Fula text is higher than for English, or most Latin text.
To give an approximate idea, fig_baselines compares Latin and Adlam glyphs from the Noto Sans font. The basic height of lowercase Adlam letters is typically around the Latin x-height, however diacritics reach well beyond the Latin ascenders, creating a need for larger line spacing. The vertical height is further increased when dealing with capital letters.
See type samples.
You can experiment with counter styles using the Counter styles converter. Patterns for using these styles in CSS can be found in Ready-made Counter Styles, and we use the names of those patterns here to refer to the various styles.
The Fula orthography uses a numeric style using native digits.
The adlam numeric style is decimal-based and uses these digits.rmcs
Examples:
The default list style uses a full stop + space as a suffix.
Observation: The Winden Jangen site has scans of a number of books which use ordered lists, and they use Adlam numbers (see fig_cs_numeric).
See type samples.
Drop caps can be found in Fulah text written with the Adlam script (more commonly than raised caps).
The initial character and the character that follows it are unjoined.§
Fula books, magazines, etc. written using the Adlam script are bound on the right-hand side, and pages progress from right to left.
Columns are vertical but run right-to-left across the page.
The right-to-left orientation of the script affects the direction of page layout, and of the layout of items within the page.
The page shown in fig_layout is the mirror-image of pages in, say, French. Note the various navigation items on the page, and the progression of numbers at the bottom of the page.
On the other hand, the video controls assume a LTR direction. This is mostly constrained by technology at the moment, and whether or not this is acceptable is still being debated.
In 2019 the design of Adlam letter glyphs was overhauled in a proposal to the Unicode Consortium, which resulted in changes to the code chart. p
Typical changes involved standardising the shapes across cursive forms, better distinctions between lower and uppercase forms, removal of some ascenders to avoid diacritic collisions, and then addition of some small ascenders to help distinguish joined forms.
There were also some significant shape changes, particularly to make supplementary letters look more like those used for similar, standard sounds, or to make letters easier to read.
Although there are not many Adlam Unicode fonts, and they will be changed, legacy forms are likely to persist for some time alongside the new forms.
The 2017 release of the Noto Sans Adlam font (still in use in early 2020) contained a set of glyphs that sometimes matched one or other of the shapes shown in variant_shapes, and sometimes used completely different shapes from either. The Noto fonts were updated to the new shapes in September 2020.
Click to also show in variant_shapes shapes produced by the Noto Sans Adlam font at the start of 2020. Red underlines highlight some characters that don't resemble either of the other charts.
In the early stages of Adlam typography it was quite common to see full justification of printed text that was produced by stretching baselines, rather than by adjusting inter-word spaces. This was influenced by the use of keyboards based on Arabic code points. Handwritten documents, however, were not justified in this way.
Observation: The Winden Jangen site has scans of a number of books which apply full justification. The method of justification appears to be elongation of the baseline, with no affect on the inter-word spacing. See fig_justification. In narrow columns this can produce some exaggerated stretching, as seen in fig_justification_wide. There are many passages in the samples available that apply this exaggerated stretching. Some content also applies justification to the last line in a paragraph, which sometimes produces even wider elongations.
Thanks to the following people for making useful suggestions that were incorporated into the text: Neil Patel, Ibrahima Barry.