കമ്പ്യൂട്ടറുകളിലുള്ള ആവിഷ്‌കാരത്തിനായി ലോകഭാഷകളിലെ ലിപികള്‍ നിര്‍മ്മിച്ചിരിക്കുന്ന ഒരു മാനദണ്ഡമാണ് യൂണികോഡ്. ഇംഗ്ലീഷ് അറിയുന്നവര്‍ക്കുള്ളതാണ് കമ്പ്യൂട്ടറെന്ന അബദ്ധധാരണ പൊളിച്ചെഴുതിയതാണ് യൂണീകോഡിന്റെ നേട്ടം. പുതിയ പല ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റങ്ങളും, എക്‌സ്.എം.എല്‍., ജാവാ തുടങ്ങിയ സാങ്കേതിക വിദ്യകളും യൂണീകോഡിനെ പിന്തുണക്കുന്നു. യൂണികോഡ് കണ്‍സോര്‍ഷ്യം എന്ന ലാഭരഹിത സംഘടനയാണ് ഇതിന്റെ നിര്‍മ്മാണത്തിനു പിന്നില്‍. ലോകത്തുള്ള എല്ലാഭാഷകളേയും ഒരുമിച്ചവതരിപ്പിക്കുക എന്നതാണ് സംഘടനയുടെ പ്രഖ്യാപിത ലക്ഷ്യം. എല്ലാ പ്രാദേശികഭാഷകളിലും കമ്പ്യൂട്ടര്‍ ഉപയോഗിക്കാനുള്ള അവസരം സൃഷ്ടിച്ചതാണ് യൂണീകോഡ് കണ്‍സോര്‍ഷ്യത്തിന്റെ സംഭാവന. ഈ സംഘടനയുടെ ഔദ്യോഗികസൈറ്റാണ് യൂണീകോഡ് ഡോട്ട് ഓര്‍ഗ്. യൂണിക്കോഡിനെ യൂണികോഡ് കണ്‍സോര്‍ഷ്യം കാലാകാലങ്ങളില്‍ പരിഷ്‌ക്കരിക്കാറുണ്ട്. ഇപ്പോള്‍ യൂണിക്കോഡിന്റെ വെര്‍ഷന്‍ 6.3 ആണ്.

ചരിത്രം

അക്ഷരങ്ങളെയും അക്കങ്ങളെയും ചിഹ്നങ്ങളെയും പൂജ്യത്തിന്റെയും ഒന്നിന്റേയും കൂട്ടങ്ങളായി മാറ്റിയാണ് കമ്പ്യൂട്ടറില്‍ ശേഖരിച്ചുവയ്ക്കുന്നത്. ഇങ്ങനെ ശേഖരിക്കുന്നതിന് ഓരോന്നിനും അതിന്റേതായ കോഡുകള്‍ ഉണ്ടായിരിക്കണം. ഇപ്പോള്‍ ഇത് കൂടുതലായും ASCII (അമേരിക്കന്‍ സ്റ്റാന്‍ഡാര്‍ഡ് കോഡ് ഫോര്‍ ഇന്‍ഫര്‍മേഷന്‍ ഇന്റര്‍ചേഞ്ച്) കോഡുപയോഗിച്ചാണ് നിര്‍വ്വഹിച്ചുവരുന്നത്. ഇതുപയോഗിച്ചുണ്ടാക്കാവുന്ന അക്ഷരാദികളുടെ എണ്ണം (256) പരിമിതമായതുകൊണ്ട് രണ്ടുഭാഷകളിലെ അക്ഷരങ്ങളേ ഒരേസമയം ഉപയോഗിക്കാന്‍ സാധിക്കുകയുള്ളു. ഇതില്‍ ആദ്യത്തെ 128 എണ്ണം ഇംഗ്‌ളീഷിനും അടുത്ത 128 എണ്ണം വേറെ ഏതെങ്കിലും ഭാഷക്കും ഉപയോഗിക്കാം.

    ലോകമാസകലം കമ്പ്യുട്ടറുകള്‍ വരുകയും അവയെയെല്ലാം ബന്ധിപ്പിക്കുന്ന ഇന്റര്‍നെറ്റ് വരുകയും ചെയ്തതോടെ ലോകഭാഷകള്‍ എല്ലാം അടങ്ങുന്ന ഒരു കോഡിംഗ് സിസ്റ്റം ആവശ്യമായിവന്നു. അങ്ങനെയാണ് കമ്പ്യൂട്ടര്‍ കോര്‍പ്പറേഷനുകളും സോഫ്റ്റ്‌വേര്‍ ഡാറ്റാബേസ് കച്ചവടക്കാരും, അന്താരാഷ്ട്ര ഏജന്‍സികളും ഉപയോക്താക്കളും ചേര്‍ന്ന് 1991ല്‍ ദി യുണിക്കോഡ് കണ്‌സോര്‍ഷ്യം എന്ന സംഘടന രൂപീകരിച്ചത്. ഇന്ത്യാ ഗവണ്‍മെന്റിന്റെ ഇന്‍ഫര്‍മേഷന്‍ ടെക്‌നോളജി ഡിപ്പാര്‍ട്ട്‌മെന്റ് ഇതിലെ ഒരു മുഴുവന്‍ സമയ അംഗമാണ്. ലോകഭാഷകളെല്ലാം പിന്തുണയ്ക്കുന്ന ഒരു ഇന്റര്‍നാഷണല്‍ സ്റ്റാന്‍ഡേര്‍ഡ് വികസിപ്പിച്ചെടുക്കാനും ഇതിനായുള്ള വിവിധതലങ്ങളിലെ പ്രവര്‍ത്തനങ്ങള്‍ ഏകോപിപ്പിക്കാനും ഉണ്ടാക്കിയ സംഘടനയാണ് യൂണീകോഡ് കണ്‍സോര്‍ഷ്യം. ഇന്റര്‍നാഷണല്‍ സ്റ്റാന്റേര്‍ഡ് ഓര്‍ഗനൈസേഷനും (ഐ.എസ്.ഒ) യുണിക്കോഡും ചേര്‍ന്ന് 1992ല്‍ യൂണിക്കോഡ് വേര്‍ഷന്‍ 1.0 പുറത്തിറക്കി. ഇതു പരിഷ്‌കരിച്ച് 2.0ഉം 2000 ഫെബ്രുവരിയില്‍ 3.0യും പുറത്തിറങ്ങി. പ്രധാനപ്പെട്ട ലോകഭാഷകള്‍ മിക്കവാറും എല്ലാം തന്നെ ഉള്‍പ്പെടുത്തി 49194 അക്ഷരാദികള്‍ക്ക് ഇതിനകം കോഡുകള്‍ നല്‍കിക്കഴിഞ്ഞു. ഇതില്‍ ചൈനീസും ജാപ്പനീസും ഉള്‍പ്പെടും. അടുത്തുതന്നെ ബര്‍മീസ്, സിന്‍ഹാളീസ്, സിറിയക് മുതലായ ഭാഷകളും ഇതിന്റെ കീഴില്‍ കൊണ്ടുവരുന്നതാണ്.
    ആഗോളമായി നടക്കുന്ന സകല ഭാഷാ കമ്പ്യൂട്ടിംഗ് പ്രവര്‍ത്തനങ്ങളുടെയും മൂലക്കല്ലാണ് യൂണീകോഡ്. വിവിധ സോഫ്റ്റ്‌വെയറുകള്‍ പ്രാദേശികവല്‍ക്കരിക്കാന്‍ (ലോക്കലൈസ് ചെയ്യാന്‍) ഇതല്ലാതെ മറ്റൊരു വഴിയില്ല. ഭാഷയിലെ അക്ഷരങ്ങള്‍ക്ക് യൂണിക്കോഡ് കോഡുകള്‍ നല്കിയെങ്കിലും അവ എങ്ങനെ സ്‌ക്രീനില്‍ കാണണമെന്ന് ഹാര്‍ഡ്‌വേറും സോഫ്റ്റ്‌വെയറും ഇറക്കുന്നവരാണ് തീരുമാനിക്കുന്നത്. ലോകഭാഷകള്‍ ഒരേ സ്‌ക്രീനില്‍ പ്രത്യക്ഷപ്പെടേണ്ടി വരുമ്പോള്‍ ലോക പ്രശസ്തരായ ഐ.ബി.എം, മൈക്രോസോഫ്റ്റ്, ഒറാക്കിള്‍, ആപ്പിള്‍ ഇത്യാദി വമ്പന്‍മാരെല്ലാം യൂണിക്കോഡിനെ ആശ്രയിക്കുന്നു. ഇന്റര്‍നെറ്റിന്റേ ലോകവ്യാപകമായ പ്രചാരത്തോടെ യൂണിക്കോഡും ആഗോളലിപികളുടെ കോഡായിമാറിക്കഴിഞ്ഞു.

    ഒമ്പത് ഇന്ത്യന്‍ ഭാഷകള്‍ക്കായി 128 X 9 = 1152 കോഡുകള്‍ (2304 മുതല്‍ 3455 വരെ) അലോട്ടുചെയ്തിരിക്കുന്നതില്‍ 3328 മുതല്‍ 3455 വരെയുള്ള 128 എണ്ണം മലയാള ലിപികള്‍ക്കാണ് തന്നിരിക്കുന്നത്.
    യൂണിക്കോഡിനു മുമ്പ് ഇത്ര നാളും ഇംഗ്ലീഷായിരുന്നു കമ്പ്യൂട്ടര്‍ രംഗത്ത് എല്ലാ കാര്യങ്ങള്‍ക്കും ഉപയോഗിച്ചിരുന്നത്. പ്രോഗ്രാമുകളും, പ്രമാണങ്ങളും, ഇന്റര്‍നെറ്റിലെ വിവിധ ആവശ്യങ്ങള്‍ക്കുമെല്ലാം ഇംഗ്ലീഷാണ് ഉപയോഗിച്ചിരുന്നത്.

    ആദ്യകാലത്ത് കമ്പ്യൂട്ടറുകള്‍ കൂടുതലും കണക്കുകൂട്ടലുകള്‍ക്കാണ് കൂടുതലും ഉപയോഗിച്ചിരുന്നത്, അക്കങ്ങളും അക്ഷരങ്ങളും രേഖപ്പെടുത്തേണ്ട അവസരങ്ങള്‍ അക്കാലത്തും ഉണ്ടായിരുന്നു. ടൈപ്പ്‌റൈറ്ററുകളായിരുന്നു ലിഖിതങ്ങളായ പ്രമാണങ്ങളും മറ്റും ഉണ്ടാക്കാന്‍ അധികം ഉപയോഗിച്ചിരുന്നത്. പതുക്കെ കമ്പ്യൂട്ടറുകള്‍ ടൈപ്പ്‌റൈറ്ററുകളെ പിന്തള്ളി. ലിഖിതങ്ങളും അല്ലാത്തതുമായ പ്രമാണങ്ങള്‍, ചിത്രങ്ങള്‍ എന്നിവ സൃഷ്ടിക്കാനുള്ള കമ്പ്യൂട്ടറിന്റെ കഴിവ് വര്‍ദ്ധിച്ചു വന്നു. അച്ചടിക്കുന്നതിനു മുമ്പ് തിരുത്താനുള്ള സൗകര്യവും കമ്പ്യൂട്ടര്‍ പ്രമാണങ്ങള്‍ക്കുണ്ടായിരുന്നു. പക്ഷേ വളരെ ചുരുക്കം അക്ഷരങ്ങളും , ചിഹ്നങ്ങളും മറ്റുമേ ഉപയോഗിക്കാന്‍ പറ്റുമായിരുന്നുള്ളൂ. ശരിക്കും പറഞ്ഞാല്‍ സംഖ്യകളും, സാധാരണ ഉപയോഗിക്കുന്ന ആംഗലേയ അക്ഷരങ്ങളും ചിഹ്നങ്ങളും മാത്രമേ ശരിയായി കമ്പ്യൂട്ടറില്‍ പ്രയോഗിക്കാന്‍ സാധിക്കുമായിരുന്നുള്ളൂ. ലോകത്ത് മനുഷ്യര്‍ എഴുതാനും വായിക്കാനും ഉപയോഗിക്കുന്ന പതിനായിരക്കണക്കിനു അക്ഷരങ്ങളും ചിഹ്നങ്ങളും കൈകാര്യം ചെയ്യുവാന്‍ കമ്പ്യൂട്ടറുകള്‍ക്ക് സാധിച്ചിരുന്നില്ല. എന്നു പറഞ്ഞാല്‍ വിവിധപ്രദേശങ്ങളില്‍ ജീവിക്കുന്ന മനുഷ്യര്‍ക്ക് അവരുടെ ഭാഷയില്‍ പ്രമാണങ്ങള്‍ സൃഷ്ടിക്കുകയോ, തിരുത്തുകയോ, മാറ്റിയെഴുതുകയോ, അച്ചടിക്കുകയോ ചെയ്യുക അസാധ്യമായിരുന്നു. ഈ സമസ്യകള്‍ക്കെല്ലാമുള്ള ഉത്തരമാണ് യുണിക്കോഡ്. കമ്പ്യൂട്ടറുകള്‍ ബൈനറി സംഖ്യകളാണ് ഉപയോഗിക്കുന്നത്. ബൈനറി സമ്പ്രദായത്തില്‍ രണ്ട് അക്കങ്ങളെയുള്ളൂ- പൂജ്യവും ഒന്നും, അതിനാല്‍ ശേഖരിച്ചു വയ്ക്കാന്‍ എളുപ്പമാണ്. അതായത് അക്ഷരങ്ങളെ സംഖ്യകളായി രേഖപ്പെടുത്താം.
ഒരു സാധാരണ രീതി ഇതാണ്- 0 തൊട്ട് 255 വരെയുള്ള സംഖ്യകളുപയോഗിക്കുക. മൊത്തം 256 അക്ഷരങ്ങള്‍ രേഖപ്പെടുത്തിവയ്ക്കാന്‍ സാധിക്കും. ഒരു ബൈറ്റ് ഉപയോഗിച്ചാണ് ഓരോ അക്ഷരവും രേഖപ്പെടുത്തുന്നത്. ഒരു ബൈറ്റ് എന്നാല്‍ 8 ബിറ്റുകളുടെ ഒരു കൂട്ടമാണ്. എട്ടെണ്ണത്തെ സൂചിപ്പിക്കുന്നതിനാല്‍ ബൈറ്റിന് ഒക്ടറ്റ് എന്നും പറയും.
    ഉദാഹരണത്തിന് പൂജ്യം എന്ന് എഴുതണമെങ്കിൽ ‘ 00000000 ’ എന്നാണ് എഴുതുക
                           ഒന്നിന്  ‘ 00000001 ’ എന്നും
                           രണ്ടിന് ‘ 00000010 ’ എന്നിങ്ങനെ ബൈനറിയിൽ ഒക്ടറ്റ് ആയി എഴുതാം.

എട്ട് ബിറ്റുകൾ ഉപയോഗിച്ച് പരമാവധി 256 അക്ഷരങ്ങൾ മാത്രമേ രേഖപ്പെടുത്തിവക്കാൻ സാധിക്കൂ, കാരണം എട്ടു ബിറ്റുകൾ കൊണ്ട് അടയാളപ്പെടുത്താൻ പറ്റുന്ന ഏറ്റവും വലിയ ബൈനറി സംഖ്യ ഇതാണ് ‘ 11111111 ’ , ദശാംശ സംഖ്യാരീതിയിൽ (Decimal numbersystem) 255 ആണിത്. ഏതുരീതി ഉപയോഗിച്ചായാലും അക്ഷരങ്ങളെ (characters) ഏതെങ്കിലും ഒരു സംഖ്യ ഉപയോഗിച്ചു രേഖപ്പെടുത്തുന്നതിന് ‘ ക്യാരക്ട്ർ എൻകോഡിങ്ങ് ‘ (character encoding) എന്നു പറയുന്നു, പ്രസ്തുത അക്ഷരങ്ങളുടെ സംഖ്യാരൂപത്തിന് ' ക്യാരക്ട്ർ കോഡ് ' (character code) എന്നും പറയുന്നു. ലോകത്തിൽ കുറെയധികം ക്യാരക്ടർ കോഡുകൾ ഉപയോഗത്തിലുണ്ട്. മിക്ക ക്യാരക്ടർ എൻകോഡിങ് രീതികൾക്കും ഒരു സാമ്യത ഉണ്ട്, 0 മുതൽ 127 വരെ ഉള്ള സംഖ്യകൾ ഒരേ അക്ഷരങ്ങളെയായിരിക്കും അടയാളപ്പെടുത്തുന്നത്. ഈ അക്ഷരങ്ങൾ ആംഗലേയ അക്ഷരമാലയിലെ 26 അക്ഷരങ്ങൾ, അവയുടെ വലിയക്ഷരങ്ങൾ (Capital Letters), 0 തൊട്ട് 9 വരെയുള്ള സംഖ്യകൾ, ചിഹ്നങ്ങൾ എന്നിവയാ‍ണ്. 0 തൊട്ട് 127 വരെയുള്ള സംഖ്യകൾ മാത്രം ഉപയോഗിച്ചുള്ള ക്യാരക്ടർ എൻകോഡിങ്ങ് രീതിക്ക് ആസ്‌കി (എ.സ്.സി.ഐ.ഐ – ASCII) എന്നു പറയുന്നു.
    പക്ഷേ ആസ്‌കി ഉപയോഗിച്ച് തൽക്കാലം ആംഗലേയഭാഷമാത്രമേ അടയാളപ്പെടുത്തുവാൻ സാധിക്കൂ, ഉദാഹരണത്തിന് ഫ്രഞ്ചു ഭാഷയിലെ ചില അക്ഷരങ്ങൾ (é , ô) രേഖപ്പെടുത്തുവാനുള്ള വിസ്താരം ആസ്‌കിക്കില്ല. ആ സ്ഥിതിക്ക് 127 നു മുകളിലോട്ട് സംഖ്യകളുള്ള ഒരു എൻകോഡിങ്ങ് രീതി ആവശ്യമാണ് കൂടുതൽ അക്ഷരങ്ങൾ അടയാളപ്പെടുത്തുവാനായി. ഇങ്ങനെ ഒരു സമസ്യ വന്നപ്പോൾ ഉണ്ടാക്കപ്പെട്ട ഒരു ക്യാരക്ടർ എൻകോഡിങ്ങ് രീതിയാണ് ലാറ്റിൻ 1 (Latin 1). ഈ രീതിയിൽ 0 തൊട്ട് 255 വരെയുള്ള സംഖ്യകളുപയോഗിച്ചാണ് എൻകോഡിങ്ങ് ചെയ്യുന്നത്, 0 തൊട്ട് 127 വരെ ആസ്‌കി അക്ഷരങ്ങൾ തന്നെയാണ്, 128 തൊട്ട് 255 വരെയുള്ള സംഖ്യകളുപയോഗിച്ച് ആവശ്യമായ ലാറ്റിൻ അക്ഷരങ്ങളും ചിഹ്നങ്ങളും അടയാളപ്പെടുത്തിയിരിക്കുന്നു. ഇവിടെയും പ്രശ്നങ്ങളുണ്ട് ലാറ്റിൻ 1 ഉപയോഗിച്ച് പടിഞ്ഞാറൻ യൂറോപ്പിയൻ ഭാഷകളായ ആംഗലേയം, ഫ്രെഞ്ച്, സ്പാനിഷ്, ജർമ്മൻ എന്നീ ഭാഷാക്ഷരങ്ങൾ മാത്രമേ രേഖപ്പെടുത്തുവാൻ സാധിച്ചിരുന്നുള്ളൂ. മദ്ധ്യ-കിഴക്കൻ യൂറോപ്പിയൻ പ്രദേശങ്ങളിലെ ഭാഷകൾക്കും, ഗ്രീക്ക്, സിറില്ലിക്, അറബിക്, എന്നീ ഭാഷകൾക്കും വേണ്ടി ലാറ്റിൻ 2 (Latin 2) എന്ന എൻകോഡിങ്ങ് രീതി നിലവിലുണ്ട്. ഏതെങ്കിലും ഒരു ഭാഷ ഉപയോഗിക്കുമ്പോൾ ആ ഭാഷയിലെ അക്ഷരങ്ങളും ചിഹ്നങ്ങളും അടയാളപ്പെടുത്തിയിട്ടുള്ള എൻകോഡിങ്ങ് രീതി നാം തെരഞ്ഞെടുക്കണം. ക്യാരക്ടർ എൻകോഡിങ്ങ് രീതികൾ ആവശ്യമനുസരിച്ച് മാറ്റുവാനുള്ള സംവിധാനം മിക്ക സോഫ്റ്റ്വെയറുകളിലും ഉണ്ട്.
    പക്ഷേ പ്രശ്നം ഉണ്ടാവുക ഒരേ സമയത്ത് വിവിധ ഭാഷകൾ ഉപയോഗിക്കേണ്ടി വരുമ്പോളാണ്. ഉദാഹരണത്തിന് ഫ്രഞ്ചും ഗ്രീക്കും ഒരു സ്ഥലത്ത് വേണമെന്നു കരുതുക, ഫ്രെഞ്ചിനെ പിന്താങ്ങുന്ന എൻകോഡിങ്ങ് രീതി ലാറ്റിൻ 1 ആണ് എന്നാൽ ഗ്രീക്ക് അക്ഷരങ്ങൾ ലാറ്റിൻ 2 എൻകോഡിങ്ങിലേ കാണുകയുള്ളൂ. ഒരേ പ്രമാണത്തിൽ രണ്ട് എൻകോഡിങ്ങ് രീതികൾ ഉപയോഗിക്കാൻ സാധ്യമല്ല, അപ്പോൾ പിന്നെ 0 തൊട്ട് 255 വരെയുള്ള സംഖ്യകൾ ഉപയോഗിച്ച് വിവിധ ഭാഷകൾക്ക് വേണ്ടി വ്യത്യസ്ത എൻകോഡിങ്ങ് രീതികൾ വികസിപ്പിക്കുന്നത് ശാ‍ശ്വതമല്ല എന്നു വേണം പറയാൻ. മറ്റൊരു പ്രശ്നം കൂടിയുണ്ട്, ചൈനീസ്, ജാപ്പനീസ് പോലുള്ള ഭാഷകളിലുള്ള അക്ഷരങ്ങളുടെ എണ്ണം വളരെക്കൂടുതലാണ്, 256 ൽ അവ ഒതുങ്ങില്ല.
ഈ പ്രശ്നങ്ങൾക്കുള്ള ഒരു പോംവഴി എല്ലാഭാഷകളിലേയും ഓരോ അക്ഷരവും ചിഹ്നവും, അനന്യമായ ഒരു സംഖ്യയാൽ അടയാളപ്പെടുത്താൻ പറ്റിയ ഒരു എൻകോഡിങ്ങ് രീതി വികസിപ്പിക്കുകയാണ്. ഈ സംഖ്യ ഏതെങ്കിലും ഭാഷയെയോ, ഫോണ്ടിനെയോ, സോഫ്റ്റ്വെയറിനെയോ, ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തെയോ, ഉപകരണത്തെയോ അടിസ്ഥാനപ്പെടുത്തിയുള്ളതാവില്ല. ഇതൊരു സാർവത്രികമായ സംഖ്യയായിരിക്കും. ലോകത്തിൽ ഇപ്പോൾ നിലവിലുള്ള എല്ലാ ഭാഷകളും ഉൾക്കൊള്ളുന്നതും, അവയുടെ ഭാവിയിൽ വരാവുന്ന എല്ലാ ആവശ്യങ്ങൾക്കും ഉതകുന്നതുമായിരിക്കണം ഇത്. ഈ പറഞ്ഞപ്രകാരമുള്ള ഒരു എൻകോഡിങ്ങ് രീതിയാ‍ണ് യുണിക്കോഡ്.

മലയാളം യുണീക്കോഡ്

    മലയാളഅക്ഷരങ്ങള്‍ യുണീക്കോഡില്‍ സ്ഥാനം പിടിക്കുന്നത് ജൂണ്‍ 1993ല്‍ വെര്‍ഷന്‍ 1.1 ല്‍ ആണ്. ISCII എന്ന ഇന്ത്യന്‍ എന്‍കോഡിംഗ് സ്റ്റാന്റേര്‍ഡിനെ യുണീക്കോഡിലേയ്ക്ക് പകര്‍ത്തുകയാണ് അന്നുണ്ടായത്.
മലയാളം ഭാഷ കംപ്യൂട്ടറില്‍ ഉപയോഗിക്കുന്നുണ്ടായിരുന്നെങ്കിലും ലിപിവ്യവസ്ഥകളില്‍ പൊതുമാനദണ്ഡം ഇല്ലായിരുന്നു. അതിനാല്‍ ഓരോ കംപ്യൂട്ടറിലും അതിന്റെ വ്യവസ്ഥയും ഫോണ്ടും അനുസരിച്ചുമാത്രമേ മലയാളം ഉപയോഗിക്കാന്‍ കഴിഞ്ഞിരുന്നുള്ളൂ. മലയാളം ഇന്റര്‍നെറ്റില്‍ വ്യാപിക്കാന്‍ ഇതു തടസ്സമായി. ഈ പരിമിതിയെ അതിജീവിക്കാന്‍ ലിപിവ്യവസ്ഥയില്‍ ഒരു പൊതുമാനദണ്ഡം ആവശ്യമായി വന്നു. ഇതിനായി ഭാഷാസ്‌നേഹികളുടെ കൂട്ടായ പരിശ്രമഫലമായാണ് മലയാളം യൂണികോഡ് രൂപം കൊണ്ടത്. 2004ല്‍ആണ് മലയാളം യൂണികോഡ് എന്ന ഏകീകൃതലിപിവ്യവസ്ഥ നിലവില്‍ വന്നത്. ഇതോടെ ലോകത്തെവിടെനിന്നും ഇന്റര്‍നെറ്റില്‍ മലയാളം പോസ്റ്റുചെയ്യാനും വായിക്കാനും സാദ്ധ്യമാവുന്ന അവസ്ഥ നിലവില്‍വന്നു. വിവരസാങ്കേതികരംഗത്തും സാഹിത്യരംഗത്തും മലയാളത്തില്‍ ഒരു കുതിച്ചുചാട്ടത്തിനുതന്നെ ഇതു കാരണമായി. അതിനുശേഷം, മാര്‍ച്ച് 2008ല്‍ വെര്‍ഷന്‍ 5.1ല്‍, ഋ, ല്‍, എന്നിവയുടെയും അവയുടെ ദീര്‍ഘങ്ങളുടേയും ചിഹ്നങ്ങളും, ള്‍ ഉള്‍പ്പെടെയുള്ള മലയാളം ചില്ലക്ഷരങ്ങളും, പ്രശ്ലേഷവും, പ്രാചീനസംഖ്യാചിഹ്നങ്ങളും ചേര്‍ക്കുകയുണ്ടായി. രണ്ടുകൊല്ലത്തിനുശേഷം, ഒക്ടോബര്‍ 2010ല്‍ കുത്തിട്ടെഴുതുന്ന ര്‍ എന്ന ചില്ലും ഏ. ആര്‍.രാജരാജവര്‍മ്മ ഉപയോഗിച്ചിരുന്ന 'റ്റ' എന്നതിന്റെ പകുതിയും, 'നന'എന്നതിലെ രണ്ടാമത്തെ നയും യുണീക്കോഡിലെത്തി. 'ഈ' എന്നതിന്റെ പ്രാചീനരൂപവും എന്‍കോഡിംഗിന്റെ പാതയിലാണ്.