Quire

Indian Script Code for Information Interchange

From Quire, the open reference·Coding scheme for Indian writing systems·4 min read
Redirected from ISCII

Indian Script Code for Information Interchange (ISCII) is a coding scheme for representing various writing systems of India. It encodes the main Indic scripts and a Roman transliteration. The supported scripts are: Bengali–Assamese, Devanagari, Gujarati, Gurmukhi, Kannada, Malayalam, Odia, Tamil, and Telugu. ISCII does not encode the writing systems of India that are based on Persian, but its writing system switching codes nonetheless provide for Kashmiri, Sindhi, Urdu, Persian, Pashto and Arabic. The Persian-based writing systems were subsequently encoded in the PASCII encoding.

ISCII has not been widely used outside certain government institutions, although a variant without the ATR mechanism was used on classic Mac OS, Mac OS Devanagari,[1] and it has now been rendered largely obsolete by Unicode. Unicode uses a separate block for each Indic writing system, and largely preserves the ISCII layout within each block.[2]

Background#edit

The Brahmi-derived writing systems have similar structure.[2] So ISCII encodes letters with the same phonetic value at the same code point, overlaying the various scripts. For example, the ISCII codes 0xB3 0xDB represent [ki]. This will be rendered as കി in Malayalam, कि in Devanagari, as ਕਿ in Gurmukhi, and as கி in Tamil. The writing system can be selected in rich text by markup or in plain text by means of the ATR code described below.

One motivation for the use of a single encoding is the idea that it will allow easy transliteration from one writing system to another.[2] However, there are enough incompatibilities that this is not really a practical idea.

ISCII is an 8-bit encoding.[3] The lower 128 code points are plain ASCII, the upper 128 code points are ISCII-specific. In addition to the code points representing characters, ISCII makes use of a code point with mnemonic ATR that indicates that the following byte contains one of two kinds of information. One set of values changes the writing system until the next writing system indicator or end-of-line. Another set of values select display modes such as bold and italic. ISCII does not provide a means of indicating the default writing system.

Code page layout#edit

The following table shows the character set for Devanagari. The code sets for Assamese, Bengali, Gujarati, Gurmukhi, Kannada, Malayalam, Oriya, Tamil, and Telugu are similar, with each Devanagari form replaced by the equivalent form in each writing system[2]. Each character is shown with its decimal code and its Unicode equivalent.

ISCII Devanagari[3]
0123456789ABCDEF
0xNULSOHSTXETXEOTENQACKBEL BS  HT  LF  VT  FF  CR  SO  SI  
1xDLEDC1DC2DC3DC4NAKSYNETBCAN EM SUBESC FS  GS  RS  US 
2x SP !"#$%&'()*+,-./
3x0123456789:;<=>?
4x@ABCDEFGHIJKLMNO
5xPQRSTUVWXYZ[\]^_
6x'abcdefghijklmno
7xpqrstuvwxyz{|}~DEL
8x
9x
Axँंःअआइईउऊऋऎएऐऍऒ
Bxओऔऑकखगघङचछजझञटठड
Cxढणतथदधनऩपफबभमयय़र
DxऱलळऴवशषसहINVािीुूृ
Exॆेैॅॊोौॉ़्।ATR
FxEXT०१२३४५६७८९

 

 

Special code points#edit

INV character—code point D9 (217)
The INV (invisible consonant) character is used as a pseudo-consonant to display combining elements in isolation. For example, क (ka) + ् (halant) + INV = क्‍ (half ka). The Unicode equivalent is U+200D ZERO WIDTH JOINER (ZWJ). However, as noted below, the ISCII halant character can be doubled or combined with the ISCII nukta to achieve effects created by ZWNJ or ZWJ in Unicode. For this reason, Apple maps the ISCII INV character to the Unicode left-to-right mark, so as to guarantee round-tripping.[1]
ATR character—code point EF (239)
The ATR (attribute) character followed by a byte code is used to switch to a different font attribute (such as bold) or to a different ISCII or PASCII language (such as Bengali), up to the next ATR sequence or the end of the line. This has no direct Unicode equivalent, as font attributes are not part of Unicode, and each script has a distinct set of code points.
Presentational attributes [3]
ATR + byteMnemonicFormatting option
0x30BLDBold
0x31ITAItalics
0x32ULUnderlining
0x33EXPExpanded
0x34HLTHighlight
0x35OTLOutline
0x36SHDShadow
0x37TOPTop half of character (used with LOW to create double-height characters)
0x38LOWBottom half of character (used with TOP to create double-height characters)
0x39DBLEntire row double-width and double-height
Shifts to ISCII scripts [3]
ATR + byteMnemonicISCII script
0x40DEFDefault script (i.e. the script which will be switched back to after a line break)
0x41RMNRomanised transliteration
0x42DEVDevanagari
0x43BNGBengali script
0x44TMLTamil script
0x45TLGTelugu script
0x46ASMAssamese script
0x47ORIOdia script
0x48KNDKannada script
0x49MLMMalayalam script
0x4AGJRGujarati script
0x4BPNJGurmukhī
Shifts to PASCII
ATR + byteMnemonicPASCII locale
0x71ARBArabic alphabet
0x72PESPersian alphabet
0x73URDUrdu alphabet
0x74SNDSindhi alphabet
0x75KSMKashmiri alphabet
0x76PSTPashto alphabet
EXT character—code point F0 (240)
The EXT (extensions for Vedic) character followed by a byte code indicates a Vedic accent. This has no direct Unicode equivalent, as Vedic accents are assigned to distinct code points.
Halant character ्—code point E8 (232)
The halant character removes the implicit vowel from a consonant and is used between consonants to represent conjunct consonants. For example, क (ka) + ् (halant) + त (ta) = क्त (kta). The sequence ् (halant) + ् (halant) displays a conjunct with an explicit halant, for example क (ka) + ् (halant) + ् (halant) + त (ta) = क्‌त. The sequence ् (halant) + ़ (nukta) displays a conjunct with half consonants, if available, for example क (ka) + ् (halant) + ़ (nukta) + त (ta) = क्‍त.
Correspondences between ISCII and Unicode halent/virama behaviour
ISCIIUnicode
single halantE8halant094D
halant + halantE8 E8halant + ZWNJ094D 200C
halant + nuktaE8 E9halant + ZWJ094D 200D
Nukta character ़—code point E9 (233)
The nukta character after another ISCII character is used for a number of rarer characters which don't exist in the main ISCII set. For example क (ka) + ़ (nukta) = क़ (qa). These characters have precomposed forms in Unicode, as shown in the following table.
Single Unicode characters corresponding to ISCII nukta sequences
ISCII
code point
Original
character
Character
with nukta
Unicode
code point
A1 (161)ँॐ0950
A6 (166)इऌ090C
A7 (167)ईॡ0961
AA (176)ऋॠ0960
B3 (179)कक़0958
B4 (180)खख़0959
B5 (181)गग़095A
BA (186)जज़095B
BF (191)डड़095C
C0 (192)ढढ़095D
C9 (201)फफ़095E
DB (219)िॢ0962
DC (220)ीॣ0963
DF (223)ृॄ0944
EA (234)।ऽ093D

Code pages for ISCII conversion#edit

To convert from Unicode (UTF-8) to an ISCII / ANSI coding, the following code pages may be used:

  • 57002: Devanagari (Hindi, Marathi, Sanskrit, Konkani)
  • 57003: Bengali
  • 57004: Tamil
  • 57005: Telugu
  • 57006: Assamese
  • 57007: Odia
  • 57008: Kannada
  • 57009: Malayalam
  • 57010: Gujarati
  • 57011: Punjabi (Gurmukhi)

Code points for all languages#edit

Code set for all abugidas using ISCII[4]
HexOfficial
Listing
ISO 15919DevanagariBengaliAssameseGurmukhiGujaratiOriyaTamilTeluguKannadaMalayalam
A0Sign OMŌm̐ॐ0950ૐ0AD0
A1Vowel-modifier CHANDRABINDUm̐ँ0901ঁ0981ঁ0981ਁ0A01ઁ0A81ଁ0B01ఁ0C01
A2Vowel-modifier ANUSWARAMṁं0902ং0982ং0982ਂ0A02ં0A82ଂ0B02ஂ0B82ం0C02ಂ0C82ം0D02
A3Vowel-modifier VISARGAMḥः0903ঃ0983ঃ0983ਃ0A03ઃ0A83ଃ0B03ஃ0B83ః0C03ಃ0C83ഃ0D03
A4Vowel Aaअ0905অ0985অ0985ਅ0A05અ0A85ଅ0B05அ0B85అ0C05ಅ0C85അ0D05
A5Vowel AAāआ0906আ0986আ0986ਆ0A06આ0A86ଆ0B06ஆ0B86ఆ0C06ಆ0C86ആ0D06
A6Vowel Iiइ0907ই0987ই0987ਇ0A07ઇ0A87ଇ0B07இ0B87ఇ0C07ಇ0C87ഇ0D07
A6*Vowel LI (Sanskrit)ḷऌ090Cঌ098Cঌ098Cઌ0A8Cଌ0B0Cఌ0C0Cಌ0C8Cഌ0D0C
A7Vowel IIīई0908ঈ0988ঈ0988ਈ0A08ઈ0A88ଈ0B08ஈ0B88ఈ0C08ಈ0C88ഈ0D08
A7*Vowel LII (Sanskrit)ḹॡ0961ৡ09E1ৡ09E1ૡ0AE1ୡ0B61ౡ0C61ೡ0CE1ൡ0D61
A8Vowel Uuउ0909উ0989উ0989ਉ0A09ઉ0A89ଉ0B09உ0B89ఉ0C09ಉ0C89ഉ0D09
A9Vowel UUūऊ090Aঊ098Aঊ098Aਊ0A0Aઊ0A8Aଊ0B0Aஊ0B8Aఊ0C0Aಊ0C8Aഊ0D0A
AAVowel RIr̥ऋ090Bঋ098Bঋ098Bઋ0A8Bଋ0B0Bఋ0C0Bಋ0C8Bഋ0D0B
AA*Vowel RII (Sanskrit)ṝॠ0960ৠ09E0ৠ09E0ૠ0AE0ୠ0B60ౠ0C60ೠ0CE0ൠ0D60
ABVowel E (Southern Scripts)eऎ090Eஎ0B8Eఎ0C0Eಎ0C8Eഎ0D0E
ACVowel EYēए090Fএ098Fএ098Fਏ0A0Fએ0A8Fଏ0B0Fஏ0B8Fఏ0C0Fಏ0C8Fഏ0D0F
ADVowel AIaiऐ0910ঐ0990ঐ0990ਐ0A10ઐ0A90ଐ0B10ஐ0B90ఐ0C10ಐ0C90ഐ0D10
AEVowel AYE (Devanagari Script)êऍ090Dઍ0A8D
AFVowel O (Southern Scripts)oऒ0912ஒ0B92ఒ0C12ಒ0C92ഒ0D12
B0Vowel OWōओ0913ও0993ও0993ਓ0A13ઓ0A93ଓ0B13ஓ0B93ఓ0C13ಓ0C93ഓ0D13
B1Vowel AUauऔ0914ঔ0994ঔ0994ਔ0A14ઔ0A94ଔ0B14ஔ0B94ఔ0C14ಔ0C94ഔ0D14
B2Vowel AWE (Devanagari Script)ôऑ0911ઑ0A91
B3Consonant KAkक0915ক0995ক0995ਕ0A15ક0A95କ0B15க0B95క0C15ಕ0C95ക0D15
B3*Consonant QA (Urdu)qक़0958
B4Consonant KHAkhख0916খ0996খ0996ਖ0A16ખ0A96ଖ0B16ఖ0C16ಖ0C96ഖ0D16
B4*Consonant KHHA (Urdu)khख़0959ਖ਼0A59
B5Consonant GAgग0917গ0997গ0997ਗ0A17ગ0A97ଗ0B17గ0C17ಗ0C97ഗ0D17
B5*Consonant GHHA (Urdu)ġग़095Aਗ਼0A5A
B6Consonant GHAghघ0918ঘ0998ঘ0998ਘ0A18ઘ0A98ଘ0B18ఘ0C18ಘ0C98ഘ0D18
B7Consonant NGAṅङ0919ঙ0999ঙ0999ਙ0A19ઙ0A99ଙ0B19ங0B99ఙ0C19ಙ0C99ങ0D19
B8Consonant CHAcच091Aচ099Aচ099Aਚ0A1Aચ0A9Aଚ0B1Aச0B9Aచ0C1Aಚ0C9Aച0D1A
B9Consonant CHHAchछ091Bছ099Bছ099Bਛ0A1Bછ0A9Bଛ0B1Bఛ0C1Bಛ0C9Bഛ0D1B
BAConsonant JAjज091Cজ099Cজ099Cਜ0A1Cજ0A9Cଜ0B1Cஜ0B9Cజ0C1Cಜ0C9Cജ0D1C
BA*Consonant ZA (Urdu)zज़095Bਜ਼0A5B
BBConsonant JHAjhझ091Dঝ099Dঝ099Dਝ0A1Dઝ0A9Dଝ0B1Dఝ0C1Dಝ0C9Dഝ0D1D
BCConsonant JNAñञ091Eঞ099Eঞ099Eਞ0A1Eઞ0A9Eଞ0B1Eஞ0B9Eఞ0C1Eಞ0C9Eഞ0D1E
BDConsonant Hard TAṭट091Fট099Fট099Fਟ0A1Fટ0A9Fଟ0B1Fட0B9Fట0C1Fಟ0C9Fട0D1F
BEConsonant Hard THAṭhठ0920ঠ09A0ঠ09A0ਠ0A20ઠ0AA0ଠ0B20ఠ0C20ಠ0CA0ഠ0D20
BFConsonant Hard DAḍड0921ড09A1ড09A1ਡ0A21ડ0AA1ଡ0B21డ0C21ಡ0CA1ഡ0D21
BF*Consonant Flapped DAṛड़095Cড়09DCড়09DCੜ0A5Cଡ଼0B5C
C0Consonant Hard DHAḍhढ0922ঢ09A2ঢ09A2ਢ0A22ઢ0AA2ଢ0B22ఢ0C22ಢ0CA2ഢ0D22
C0*Consonant Flapped DHAṛhढ़095Dঢ়09DDঢ়09DDଢ଼0B5D
C1Consonant Hard NAṇण0923ণ09A3ণ09A3ਣ0A23ણ0AA3ଣ0B23ண0BA3ణ0C23ಣ0CA3ണ0D23
C2Consonant Soft TAtत0924ত09A4ত09A4ਤ0A24ત0AA4ତ0B24த0BA4త0C24ತ0CA4ത0D24
C3Consonant Soft THAthथ0925থ09A5থ09A5ਥ0A25થ0AA5ଥ0B25థ0C25ಥ0CA5ഥ0D25
C4Consonant Soft DAdद0926দ09A6দ09A6ਦ0A26દ0AA6ଦ0B26ద0C26ದ0CA6ദ0D26
C5Consonant Soft DHAdhध0927ধ09A7ধ09A7ਧ0A27ધ0AA7ଧ0B27ధ0C27ಧ0CA7ധ0D27
C6Consonant Soft NAnन0928ন09A8ন09A8ਨ0A28ન0AA8ନ0B28ந0BA8న0C28ನ0CA8ന0D28
C7Consonant NA (Tamil)ṉऩ0929ன0BA9
C8Consonant PApप092Aপ09AAপ09AAਪ0A2Aપ0AAAପ0B2Aப0BAAప0C2Aಪ0CAAപ0D2A
C9Consonant PHAphफ092Bফ09ABফ09ABਫ0A2Bફ0AABଫ0B2Bఫ0C2Bಫ0CABഫ0D2B
C9*Consonant FA (Urdu)fफ़095Eਫ਼0A5Eೞ0CDE
CAConsonant BAbब092Cব09ACব09ACਬ0A2Cબ0AACବ0B2Cబ0C2Cಬ0CACബ0D2C
CBConsonant BHAbhभ092Dভ09ADভ09ADਭ0A2Dભ0AADଭ0B2Dభ0C2Dಭ0CADഭ0D2D
CCConsonant MAmम092Eম09AEম09AEਮ0A2Eમ0AAEମ0B2Eம0BAEమ0C2Eಮ0CAEമ0D2E
CDConsonant YAyय092Fয09AFয09AFਯ0A2Fય0AAFଯ0B2Fய0BAFయ0C2Fಯ0CAFയ0D2F
CEConsonant JYA (Bengali, Assamese & Oriya)ẏय़095Fয়09DFয়09DFୟ0B5F
CFConsonant RAr̥र0930র09B0ৰ︎09F0ਰ0A30ર0AB0ର0B30ர0BB0ర0C30ರ0CB0ര0D30
D0Consonant Hard RA (Southern Scripts)ṟऱ0931ற0BB1ఱ0C31ಱ0CB1റ0D31
D1Consonant LAlल0932ল09B2ল09B2ਲ0A32લ0AB2ଲ0B32ல0BB2ల0C32ಲ0CB2ല0D32
D2Consonant Hard LAḷळ0933ਲ਼0A33ળ0AB3ଳ0B33ள0BB3ళ0C33ಳ0CB3ള0D33
D3Consonant ZHA (Tamil & Malayalam)ḻऴ0934ழ0BB4ഴ0D34
D4Consonant VAvव0935ব09ACৱ09F1ਵ0A35વ0AB5ଵ0B35வ0BB5వ0C35ವ0CB5വ0D35
D5Consonant SHAśश0936শ09B6শ09B6ਸ਼0A36શ0AB6ଶ0B36ஶ0BB6శ0C36ಶ0CB6ശ0D36
D6Consonant Hard SHAṣष0937ষ09B7ষ09B7ષ0AB7ଷ0B37ஷ0BB7ష0C37ಷ0CB7ഷ0D37
D7Consonant SAsस0938স09B8স09B8ਸ0A38સ0AB8ସ0B38ஸ0BB8స0C38ಸ0CB8സ0D38
D8Consonant HAhह0939হ09B9হ09B9ਹ0A39હ0AB9ହ0B39ஹ0BB9హ0C39ಹ0CB9ഹ0D39
D9Consonant INVISIBLE
DAVowel Sign AAāा093Eা09BEা09BEਾ0A3Eા0ABEା0B3Eா0BBEా0C3Eಾ0CBEാ0D3E
DBVowel Sign Iiि093Fি09BFি09BFਿ0A3Fિ0ABFି0B3Fி0BBFి0C3Fಿ0CBFി0D3F
DB*Vowel Sign LI (Sanskrit)ḷॢ0962ৢ09E2ৢ09E2ૢ0AE2ୢ0B62ౢ0C62ೢ0CE2ൢ0D62
DCVowel Sign IIīी0940ী09C0ী09C0ੀ0A40ી0AC0ୀ0B40ீ0BC0ీ0C40ೀ0CC0ീ0D40
DC*Vowel Sign LII (Sanskrit)ḹॣ0963ৣ09E3ৣ09E3ૣ0AE3ୣ0B63ౣ0C63ೣ0CE3ൣ0D63
DDVowel Sign Uuु0941ু09C1ু09C1ੁ0A41ુ0AC1ୁ0B41ு0BC1ు0C41ು0CC1ു0D41
DEVowel Sign UUūू0942ূ09C2ূ09C2ੂ0A42ૂ0AC2ୂ0B42ூ0BC2ూ0C42ೂ0CC2ൂ0D42
DFVowel Sign RIr̥ृ0943ৃ09C3ৃ09C3ૃ0AC3ୃ0B43ృ0C43ೃ0CC3ൃ0D43
DF*Vowel Sign RII (Sanskrit)ṝॄ0944ৄ09C4ৄ09C4ૄ0AC4ୄ0B44ౄ0C44ೄ0CC4ൄ0D44
E0Vowel Sign E (Southern Scripts)eॆ0946ெ0BC6ె0C46ೆ0CC6െ0D46
E1Vowel Sign EYēे0947ে09C7ে09C7ੇ0A47ે0AC7େ0B47ே0BC7ే0C47ೇ0CC7േ0D47
E2Vowel Sign AIaiै0948ৈ09C8ৈ09C8ੈ0A48ૈ0AC8ୈ0B48ை0BC8ై0C48ೈ0CC8ൈ0D48
E3Vowel Sign AYE (Devanagari Script)êॅ0945ૅ0AC5
E4Vowel Sign O (Southern Scripts)oॊ094Aொ0BCAొ0C4Aೊ0CCAൊ0D4A
E5Vowel Sign OWōो094Bো09CBো09CBੋ0A4Bો0ACBୋ0B4Bோ0BCBో0C4Bೋ0CCBോ0D4B
E6Vowel Sign AUauौ094Cৌ09CCৌ09CCੌ0A4Cૌ0ACCୌ0B4Cௌ0BCCౌ0C4Cೌ0CCCൌ0D4C
E7Vowel Sign AWE (Devanagari Script)ôॉ0949ૉ0AC9
E8Vowel Omission Sign (Halant)्094D্09CD্09CD੍0A4D્0ACD୍0B4D்0BCD్0C4D್0CCD്0D4D
E9Diacritic Sign (Nuktam)़093C়09BC়09BC਼0A3C઼0ABC଼0B3C಼0CBC
EAFull Stop (Viram, Northern Scripts)।0964
EA*Vowel Stress Sign AVAGRAHऽ093Dঽ09BDঽ09BDઽ0ABDଽ0B3Dఽ0C3Dಽ0CBDഽ0D3D
EBUnused
ECUnused
EDUnused
EEUnused
EFAttribute Code
F0Extension Code
F1Digit 0०0966০09E6০09E6੦0A66૦0AE6୦0B66௦0BE6౦0C66೦0CE6൦0D66
F2Digit 1१0967১09E7১09E7੧0A67૧0AE7୧0B67௧0BE7౧0C67೧0CE7൧0D67
F3Digit 2२0968২09E8২09E8੨0A68૨0AE8୨0B68௨0BE8౨0C68೨0CE8൨0D68
F4Digit 3३0969৩09E9৩09E9੩0A69૩0AE9୩0B69௩0BE9౩0C69೩0CE9൩0D69
F5Digit 4४096A৪09EA৪09EA੪0A6A૪0AEA୪0B6A௪0BEA౪0C6A೪0CEA൪0D6A
F6Digit 5५096B৫09EB৫09EB੫0A6B૫0AEB୫0B6B௫0BEB౫0C6B೫0CEB൫0D6B
F7Digit 6६096C৬09EC৬09EC੬0A6C૬0AEC୬0B6C௬0BEC౬0C6C೬0CEC൬0D6C
F8Digit 7७096D৭09ED৭09ED੭0A6D૭0AED୭0B6D௭0BED౭0C6D೭0CED൭0D6D
F9Digit 8८096E৮09EE৮09EE੮0A6E૮0AEE୮0B6E௮0BEE౮0C6E೮0CEE൮0D6E
FADigit 9९096F৯09EF৯09EF੯0A6F૯0AEF୯0B6F௯0BEF౯0C6F೯0CEF൯0D6F
FBUnused
FCUnused
FDUnused
FEUnused
FFUnused

References#edit

  1. ^ a b Apple (2005-04-05) [1998-02-05]. "Map (external version) from Mac OS Devanagari encoding to Unicode 2.1 and later". Unicode Consortium.
  2. ^ a b c d The Unicode Standard v15.0 Chapter 12 (PDF). The Unicode Consortium. Retrieved 13 August 2024.
  3. ^ a b c d IS13194:1991 (Soft copy) (PDF). Bureau of Indian Standards. 1999.
  4. ^ This table can be derived from the correpsondece by tables 2 and 3 in the ISCII standard here name="std-3"/> and the Unicode Standard code charts.

This article is mirrored from “Indian Script Code for Information Interchange” on English Wikipedia, revision 1348506890, written by Wikipedia's contributors and licensed CC BY-SA 4.0. Editing it here creates a Quire copy with its own history.

Synced with Wikipedia revision 1348506890 · just now