യൂണിക്കോഡ് പത്താം പതിപ്പ്: മലയാളത്തിന് മൂന്നു പുതിയ കോഡ്പോയിന്റുകൾ കൂടി

യൂണിക്കോഡിന്റെ പത്താം പതിപ്പ് പുറത്തിറങ്ങി. മലയാളത്തിന്റെ കോഡ് ബ്ലോക്കിലേയ്ക്ക് പുതിയ മൂന്നു അക്ഷരങ്ങൾ കൂടി ഔദ്യോഗികമായി ചേർന്നിരിക്കുന്നു. അങ്ങനെ മലയാളത്തിന്റെ കോഡ് ബ്ലോക്കിൽ  117 അക്ഷരങ്ങൾ ആയി.

പുതിയ അക്ഷരങ്ങൾ ഇവയാണ്:

  1. D00 – Combining Anuswara Above
  2. 0D3B – Malayalam Sign Vertical Bar Virama
  3. 0D3C- Malayalam Sign Circular Viramaപ്രാചീനരേഖകളിൽ കണ്ടുവരുന്നവയാണ് ഈ ചിഹ്നങ്ങൾ. അത്തരം ഗ്രന്ഥങ്ങളുടെ ഡിജിറ്റൈസേഷനിലും, പ്രാചീനലിപിസംബന്ധമായ പഠനഗവേഷണങ്ങളിലുമൊക്കെ ഇവ ഉപയോഗിക്കപ്പെട്ടേക്കാം.

0D00 – Combining Anusvara Above

ആദ്യത്തേത് ‘മുകളിലുള്ള അനുസ്വാരമാണ്’.

മലയാളത്തിൽ നാമിന്നുപയോഗിക്കുന്ന അനുസ്വാരത്തിനു തുല്യമായ ഉപയോഗമാണ് പ്രാചീനമലയാളലിപിയിൽ ഈ ചിഹ്നത്തിനുള്ളത്. അതായത് നാമിന്നുപയോഗിക്കുന്ന അനുസ്വാരം മറ്റക്ഷരങ്ങളുടെ അതേ നിരപ്പിൽ തന്നെ കിടന്ന് അതിനിടതുവശത്തുള്ള അക്ഷരത്തോട് ‘മകാരം’ ചേർക്കുമ്പോളുള്ള ഉച്ചാരണം നൽകുന്നു. പുതിയതായി നിർവ്വചിച്ചിരിക്കുന്ന ‘മുകളിലുള്ള അനുസ്വാരം’ അതുനുചുവട്ടിലുള്ള അക്ഷരത്തോടു ‘മകാരം’ ചേരുമ്പോഴുള്ള ഉച്ചാരണം നൽകുന്നു.

പ്രാകൃതഭാഷയിലെ നാടകസംഭാഷണങ്ങൾ മലയാളലിപിയിലെഴുതിയിരുന്നു. നാനൂറോളം വർഷം പഴക്കമുള്ള കയ്യെഴുത്തുപ്രതികൾ ഇതിനെ സാധൂകരിക്കുന്ന തെളിവുകൾ നൽകുന്നുണ്ട്. യൂണിക്കോഡിലേയ്ക്ക് ഇതു ചേർക്കാനുള്ള ശ്രീരമണശർമ്മയുടെ നിർദ്ദേശത്തിൽ ഇവ ലഭ്യമാണ്. പക്ഷേ തെളിവിനായുപയോഗിച്ചിരിക്കുന്ന കയ്യെഴുത്തുപ്രതികളിൽ തന്നെ അക്ഷരത്തോടൊപ്പം നിരന്നു കിടക്കുന്ന ‘അനുസ്വാരസമാനമായ ചിഹ്നങ്ങളും’ കാണാം. പക്ഷേ അവയ്ക്കു മറ്റൊരർത്ഥമാണ് പ്രാകൃതഭാഷ മലയാളലിപിയിൽ എഴുതുമ്പോഴുള്ളത്. ഈ സന്ദർഭത്തിൽ അതിന്റെ വലതുവശത്തുള്ള അക്ഷരത്തെ ഇരട്ടിപ്പിക്കുകയാണു ചെയ്യുക. നാം സ്ഥിരമായി ഉപയോഗിക്കുന്ന അനുസ്വാരത്തിന്റെ ഈ പ്രാചീന ഉപയോഗത്തെപ്പറ്റി യൂണിക്കോഡ് ചാർട്ടിൽ സൂചിപ്പിക്കുന്നുമുണ്ട്.

അതായത് പ്രാകൃതഭാഷ എഴുതാനായി മലയാളലിപി ഉപയോഗിക്കുമ്പോൾ ‘അനുസ്വാരം’ അതിന്റെ പിന്നാലെ വരുന്ന വ്യഞ്ജനത്തെ ഇരട്ടിപ്പിക്കുന്ന ഉച്ചാരണം നൽകുന്നു. ‘പത്തി’ എന്ന ഉച്ചാരണത്തിനായി ‘പംതി’ എന്നാവും എഴുതുക. എന്നുവെച്ചാൽ ‘പ + ം + തി’ എന്ന യൂണിക്കോഡ് സീക്വൻസിന് സാന്ദർഭികമായി രണ്ടു വ്യത്യസ്ഥ അർത്ഥവും ഉച്ചാരണവും വരുന്നുവെന്നാണ് സാരം. ഈ ഒരു സമീപനം യൂണിക്കോഡിന്റെ രീതിശാസ്ത്രത്തിനു നിരക്കുന്നതാണോയെന്ന സംശയം ബാക്കിവെയ്ക്കുന്നു. പിന്നാലെ വരുന്ന അക്ഷരത്തെ ഇരട്ടിപ്പിയ്ക്കുന്ന, കാഴ്ചയിൽ അനുസ്വാരം പോലെ തന്നെ തോന്നിപ്പിയ്ക്കുന്ന ഈ ചിഹ്നത്തെ പ്രത്യേകം എൻകോഡ് ചെയ്യേണ്ടതാണെന്നാണ് ഈ പ്രൊപ്പോസലിലെ തന്നെ തെളിവുകൾ വെച്ച് എനിക്കു തോന്നുന്നത്.

0D3B – Malayalam Sign Vertical Bar Virama

പുതിയ യൂണിക്കോഡ് പതിപ്പിൽ അടുത്തതായി എൻകോഡ് ചെയ്യപ്പെട്ടത് ‘കുത്തനെയുള്ള വിരാമചിഹ്നമാണ്’. 0D3B ആണിതിന്റെ കോഡ് പോയിന്റ്.

ഇത് സാധാരണയായി നാമുപയോഗിക്കുന്ന വിരാമചിഹ്നത്തിൽ നിന്നും വ്യത്യസ്ഥമാണ്. വിരാമചിഹ്നം അഥവാ ചന്ദ്രക്കല (0D4D) സംവൃതോകാരത്തെക്കുറിക്കാനും വ്യഞ്ജങ്ങളിലെ സ്വരസാന്നിദ്ധ്യമില്ലാത്തെ ശുദ്ധരൂപത്തെക്കുറിക്കാനുമാണുപയോഗിക്കുന്നത്. സംവൃതോകാരത്തെക്കുറിക്കുവാനായി ഇതുപയോഗിച്ചുതുടങ്ങിയത് 1847ൽ  ഡോക്ടർ ഹെർമൻ ഗുണ്ടർട്ടാണ്. 1900ത്തോടുകൂടിയാണ് സ്വരസാന്നിദ്ധ്യം ഒഴിവാക്കാനായുള്ള ചിഹ്നമായിക്കൂടി ഇതിനെ ഉപയോഗിച്ചു തുടങ്ങിയത്.

ഇതിനൊക്കെ വളരെ മുമ്പുതന്നെ (1700കൾ മുതൽ) സംസ്കൃതത്തിൽ നിന്നും യൂറോപ്യൻ ഭാഷയിൽ നിന്നുമുള്ള ലിപിമാറ്റ എഴുത്തുകളിൽ സ്വരസാന്നിദ്ധ്യമില്ലാത്ത വ്യഞ്ജനത്തെ സൂചിപ്പിക്കുവാൻ ഉപയോഗിച്ചിരുന്ന ചിഹ്നമാണ് ‘കുത്തനെയുള്ള വിരാമചിഹ്നം’. ഇതിനെയാണ് ഇപ്പോൾ 0D3B എന്ന കോഡ് പോയിന്റോടെ എൻകോഡ് ചെയ്തിരിക്കുന്നത്. ചന്ദ്രക്കലയുടെ ഉപയോഗം സാർവത്രികമായപ്പോൾ ‘കുത്തനെയുള്ള വിരമചിഹ്നത്തിന്റെ’ ഉപയോഗം തീർത്തും ഇല്ലാതായി എന്നു തന്നെ പറയാം. കൂടുതൽ വിശദാംശങ്ങൾ ഷിജു അലക്സ്, വി.എസ്. സുനിൽ, സിബു ജോണി എന്നിവർ ചേർന്നു തയ്യാറാക്കിയ എൻകോഡിങ്ങ് പ്രൊപ്പോസലിൽ കാണാം.

0D3C- Malayalam Sign Circular Virama

‘വട്ടത്തിലുള്ള വിരമചിഹ്നമാണ്’ 0D3C എന്ന കോഡ്പോയിന്റോടു കൂടി അടുത്തതായി എൻകോഡ് ചെയ്യപ്പെട്ടത്. ഇത് പ്രൊപ്പോസ് ചെയ്തിരിക്കുന്നതും ഷിജു അലക്സ്, വി.എസ്. സുനിൽ, സിബു ജോണി എന്നിവർ ചേർന്നു തന്നെയാണ്.

സ്വരസാന്നിദ്ധ്യമില്ലാത്ത വ്യഞ്ജനത്തെക്കുറിക്കുവാനായിക്കൂടി ചന്ദ്രക്കല ഉപയോഗിച്ചു തുടങ്ങുന്നത് 1900ങ്ങൾ മുതലാണെന്ന് ‘കുത്തനെയുള്ള വിരാമചിഹ്ന’ത്തിന്റെ പ്രൊപ്പോസലിൽ തന്നെ കണ്ടുവല്ലോ. അങ്ങനെയൊരു ഉപയോഗം ചന്ദ്രക്കലയ്ക്ക് ഉണ്ടാവുന്നതിനു മുമ്പുള്ള ( ഏകദേശം 1850-1900) കാലത്ത്  മലയാളത്തിൽ ‘വട്ടത്തിലുള്ള വിരാമചിഹ്നം’  ശുദ്ധവ്യഞ്ജനത്തെക്കുറിക്കാനായി ഉപയോഗിച്ചിരുന്നു.

കാഴ്ചയിൽ ‘മുകളിലുള്ള അനുസ്വാരം’ എന്ന ആദ്യം പറഞ്ഞ ചിഹ്നവുമായി ഇതിന് സാദൃശ്യം തോന്നാം. പക്ഷേ രണ്ടും തമ്മിൽ പ്രയോഗത്തിൽ വലിയ വ്യത്യാസമുണ്ട്. ‘മുകളിലുള്ള അനുസ്വാരം’ അതുചേരുന്ന വ്യഞ്ജനാക്ഷരത്തിന്റെ നേരെ മുകളിലായി കാണുമ്പോൾ  ‘വട്ടത്തിലുള്ള വിരമചിഹ്നം’ അതുചേരുന്ന വ്യഞ്ജനാക്ഷരത്തിന്റെ വലതുമുകളിലായിട്ടാവും ഉണ്ടാവുക.

പ്രായോഗിക ഉപയോഗം

യൂണിക്കോഡിൽ എൻകോഡ് ചെയ്യപ്പെട്ടതുകൊണ്ടു മാത്രം കാര്യമില്ല. പ്രാചീന ഗ്രന്ഥങ്ങളുടെ ഡിഗിറ്റൈസേഷൻ ആവശ്യങ്ങൾക്കായിട്ടൊക്കെ ഈ ചിഹ്നങ്ങൾ ഉപയോഗിക്കണമെങ്കിൽ ഫോണ്ടുകളിൽ അവ വരച്ചു കോഡ്പോയിന്റ് അതുമായി ചേർക്കണം. അപ്പോഴേ ഇതു ഉപയോക്താവിലേയ്ക്ക് എത്തുകയുള്ളൂ.

തേങ്ങയ്ക്കും കോഡ്പോയിന്റ്

മലയാളഭാഷയുമായി ബന്ധമില്ലെങ്കിലും മലയാളികളുടെ സ്വന്തം തേങ്ങ ഒരു ഭക്ഷ്യവിഭവമെന്ന നിലയിൽ ഒരു ഇമോജിയായി കോഡ്പോയിന്റ് സ്വന്തമാക്കിയിരിക്കുന്നു. U+1F965 ആണ് തേങ്ങ ഇമോജിയുടെ കോഡ്പോയിന്റ്.

Coconut Emoji. Image from http://emojipedia.org

 

 

On Kerala IT Policy Draft 2017

The Kerala IT Policy Draft 2017(draft) was published in March 2017 for public feedback. It has many progressive elements in it and are crucial for the rapidly changing IT ecosystem in the context of  Government  IT Policy.

Continuing earlier Kerala gov. policy on Free and Open source software, this version also emphasis the usage and promotion of free and opensource software. The policy also mentions about the importance of Malayalam computing and local language content. These are all good, even though planning and implementation of specific items in these sections need wider discussions.

One important topic I wanted to comment in this post is about e-governance. There are detailed mentions about e-governance in the policy. There is a plan to have single government poral for participatory e-governance. About government service delivery, it says:

State is embarking on its journey to offer an “Omni-channel experience” of all its e-Governance services through web portal, mobile applications, Akshaya / CSCs and through Integrated Citizen call centres. The objective is to setup and operationalise an effective Single Window for services supported by the core infrastructure and systems.
It shall be ensured that all government applications are compliant to Deity guidelines and thereby interoperable.

In my experience with government services and their digital services, one important issue is lack of high level information system planning. I often see each department develop websites, service portal and mobile apps and release with lot of PR every time a government changes or even under same government. A state goverment has serveral departments and the amount of data it handles and kind of services it provides is huge. By nature, these departments share a lot of data mostly interdependent. Every digital service on top of this is not connected. A citizen need to register and login to multiple government websites. A central web portal is the quick solution that comes out in every IT polciy acknowledging the above issue. Even then we see lot of apps for government, lot of websites inauguarated now and then.

I think it is time to think about the information system of all these departments and see how we can architect them. Having scattered information systems is natural in the early developing stage of a government IT infrastructure. But at one stage, they should get a strucutre and start communicating each other avoiding the need to rebuild every year or 5 years.

Of course it is not trivial to have a clarity on such system. But I don’t see an effort in IT policy in this direction. I feel that each departments will continue running their IT systems independently and the connection between each department will be the responsibility of the citizen. For example, get the certificate with sign and seal from this department, go to the other department office, submit the application with the previous ceritificate, get the approval , go to other department, get the stuff done(And as people always say, have a nice chappel). Oh, have your copy of ID proof in every department and prove that it is you and nobody else paying your tax. This happens when each of these department is completely digital.

The wish for well connected IT infrastructure for goverments is nothing new. This wish always ends up in centralized citizen data repositories with unique citizen ids.  That is the traditional modeling of this problem. Now a days it is very clear that this kind of system attracts lot of interest from govenrment and non-goverment entities. Surveillance is becoming the primary goal of the systems, replacing the goal of better citizen service.

There are lot of things to learn from the deficiencies of existing e-governance system. This is not a time to go silient about this in IT policy. The vulnerability of this centralized IT systems with Aadhaar like primary key systems is widely discussed in media now a days. These systems are highly insecure with exclusion and mistrust of citizen. This will infiltrate to state IT systems soon, lack of political will will accelerate it.  There are lot of e-governance space in Kerala in developing stage. Can this be better modelled?

One of the biggest problems in e-governance is the security which demands the greatest protection to be government information from the third party attacker or opponents.  It is of no doubt that it can not be secured with another highly insecure authentication systems like Aadhaar as widely promoted. The need of a well modelled e-Authentication framework is required and that need to learn from mistakes.

 

നമ്മളെല്ലാം നമ്മളല്ലാതാവുന്ന കാലം

എന്റെ പാൻകാർഡിലെ പേരല്ല പാസ്‌പോർട്ടിലുള്ളതു്. വോട്ടേഴ്സ് ഐഡിയിലെ വീട്ടുപേരല്ല പാൻകാർഡിൽ. വീട്ടുപേരാകട്ടെ ഓരോന്നിലും ഓരോന്നാണു്. ചിലതിൽ ഇനിഷ്യൽ മാത്രം. ചിലതിൽ ഇനിഷ്യൽ ചുരുക്കാതെ എഴുതിയതു്. ചിലതു് മലയാളത്തിൽ. ചിലതു് ഇംഗ്ലീഷിൽ. ചിലവയിൽ അക്ഷരത്തെറ്റ്. കുത്തുള്ള ഇനിഷ്യൽ. കുത്തില്ലാത്ത ഇനിഷ്യൽ. തോട്ടിങ്ങൽ, തോട്ടുങ്ങൽ, തോട്ടിങ്ങല്…

ആധാറിലെ എന്റെ പേരു് ഉത്തരമില്ലാത്ത ഒരു ചോദ്യമാണു്. “സന്തോഷ് ടീ ആര്”. ആരാണെന്നറിയാൻ കാർഡിലെ ഫോട്ടോ ഒട്ടും സഹായകരമല്ല.

വലിയ പ്രശ്നമൊന്നും ഇതുവരെ നേരിട്ടിട്ടില്ല. പക്ഷേ കുറച്ചു ദിവസം മുമ്പു് എന്റെ പ്രൊവിഡന്റ് ഫണ്ട് KYC ഡോക്യുമെന്റുകളിൽ പാൻ കാർഡ് ചേർക്കാൻ പറ്റിയില്ല. എന്റെ എംപ്ലോയറുടെ റെക്കോർഡിലുള്ള പേരും പാൻ കാർഡിലെ പേരും ഒന്നല്ലാത്തതുകൊണ്ടാണത്രെ. കാര്യം ശരിയാണു്, പാൻ കാർഡിലെ പേരിൽ ഇനിഷ്യലുകളാണ്, എംപ്ലോയറുടെ കയ്യിൽ ഇനിഷ്യൻ നീട്ടിയെഴുതിയതും. ഇതിപ്പൊ പേരെന്തിനാ അങ്ങനെ മാച്ച് ചെയ്യുന്നതു്, അതൊക്കെ ഒഴിവാക്കാനല്ലേ ഈ ഡോക്യുമെന്റുകൾക്ക് നമ്പറുകൾ?

നമ്മൾ നമ്മളാണെന്നു തെളിയിക്കാൻ പെടാപാടുപെടുന്ന വിചിത്രരാജ്യമാണു് ഇന്ത്യ. ഐഡിപ്രൂഫുകളില്ലാതെ ഒരു ഓഫീസിലും പോകേണ്ടകാര്യമില്ല. നമ്മൾ അങ്ങോട്ട് പണം കൊടുക്കാനാണെങ്കിലും പോലും ഐഡിയില്ലാതെ വാങ്ങില്ല. ഈ ഐഡി പ്രൂഫ് എന്ന പേപ്പർ മാത്രമേ ആവശ്യമുള്ളൂ, അതിലെ പേരോ, ഫോട്ടോയോ ആരും പരിശോധിച്ചുറപ്പിക്കുന്നതു ഞാൻ കണ്ടിട്ടില്ല. ബൈ ഡിഫോൾട്ട്, നമ്മൾ നമ്മളല്ല എന്നതാണ് പൊതുവിലുള്ള നയം. അല്ലെങ്കിൽ തെളിയിക്കണം.

ആധാർ “യുണീക്(!) ഐഡി” ഇതിനൊക്കെ പരിഹാരമല്ലേന്നു ചിന്തിക്കുന്നവരുണ്ടാകം. എങ്കിൽ തെറ്റി.  നമ്പറുകൾക്കപ്പുറം  സോഫ്റ്റ്‌വെയറുകൾ ഇന്ത്യൻ പേരുകൾ കമ്പെയർ ചെയ്യുന്ന ഒരു ദുരന്തനാടകത്തിനെല്ലാരും തയ്യാറാവുക.

ആധാറും പാൻകാർഡും ലിങ്ക് ചെയ്തില്ലെങ്കിൽ പാൻകാർഡ് കാൻസലാവും എന്നൊരു സന്തോഷവാർത്ത കേട്ടിരുന്നല്ലോ.  ഈ ലിങ്ക് ചെയ്യൽ അത്ര എളുപ്പമാവില്ല പോലും.

The income tax department has recently started accepting initials that can be put on the PAN card. However, you will be required to put your full name while applying for a verification of data. For instance, if your official name is M Ramamurthy where the full name is Madurai Ramamurthy where Ramamurthy is the first name, I-T will allow initials only for the first name. Hence, you can either print your name on the PAN card as either Ramamurthy or R Madurai.

Once you try to link PAN to your Aadhaar card which accepts initials, there is bound to be a name mismatch. This will lead to a rejection of request for linking Aadhaar card. In several parts of the country, especially the south of India, the names of villages are often suffixed or prefixed to the name of an individual. Here, any name except the first name of the person is considered as surname and will have to be mentioned in full on the PAN card.

ഈ പേരുകൾ ഒത്തുനോക്കൽ സോഫ്റ്റ്‌വെയർ ഏറ്റെടുക്കുകയാണു്. വെറും string comparison ആണെങ്കിൽ മിക്കവരുടെയും പേരുകൾ തള്ളും. തള്ളിപ്പോയവർ പേരുകൾ മാറ്റാൻ, ശരിയാക്കാൻ മെനക്കെടേണ്ടിവരും.  ഇനിയിപ്പൊ ഇന്ത്യൻ പേരുകൾ മാച്ച് ചെയ്തു നോക്കാൻ ഒരു അൽഗോരിതം തയ്യാറാക്കാൻ ശ്രമിച്ചെന്നിരിക്കട്ടെ. എന്തൊക്കെയായിരിക്കണം അതിൽ ശ്രദ്ധിക്കേണ്ടതു്? ഇംഗ്ലീഷിലെഴുതിയ പേരാണെന്നെരിക്കട്ടെ. ഇന്ത്യൻ ഭാഷകളെക്കൂടിപരിഗണിച്ചാൽ ഇതു് വളരെ സങ്കീർണ്ണമാകും.

  • അപ്പർ കേസ്, ലോവർ കേസ് മാറ്റങ്ങൾ കണക്കിലെടുക്കരുതു്. Anand Chandran, ANAND Chandran, Anand CHANDRAN, anand chandran, ANAND CHANDRAN ഒക്കെ ഒന്നാണല്ലോ.
  • കുത്ത് കോമ ഒക്കെ വിടണം. Rama C, Rama C.
  • സ്പേസ് വെറുതെ വിടണം. Rama Chandran, Ramachandran ഇവ ഒന്നല്ലേ
  • സ്പെല്ലിങ്ങ് വ്യത്യാസങ്ങൾ. Pradeep, Pradip, Pradeeb, Pradeeb, Prathib, Pratheeb, Prathib, Prathib ഇതൊക്കെ വേറേ വേറെ ആളുകളാവാം, ഒരാളാവാം
  • First name, Last name, Middle name പേരുകൾ നമുക്ക് വളരെ ആശയക്കുഴപ്പമുള്ളവയാണു്. പ്രേതേകിച്ചും ദക്ഷിണേന്ത്യൻ പേരുകളിൽ. M Sudhakaran, Sudhakaran M, Sudhakaran Manoharan ഒക്കെ ഒരാളാവാമല്ലോ.
  • വേറുതേ ഒരു സ്പേസ് അധികമായതുകൊണ്ട് പേരു മാച്ച് ആവാതെ ആളുകളെ ഓഫീസുകൾ കേറിയിറക്കാനും ഈ അൽഗോരിതങ്ങളെക്കൊണ്ടു സാധിക്കും എന്നും ഓർക്കാം.

ഇംഗ്ലീഷിൽ ഇത്തരം അൽഗോരിതങ്ങളൊക്കെ ഉണ്ടു്. Soundex, MetaphoneNew York State Identification and Intelligence System ഒക്കെ ഉദാഹരണങ്ങൾ. നമ്മുടെ പേരുകളുടെ പ്രത്യേകതകൾ കൂടി പരിഗണിച്ചു് അതുപോലൊരു അൽഗോരിതം നമുക്കും വേണ്ടേ?

ഇംഗ്ലീഷിൽ മാത്രം പോരാ, ഇന്ത്യൻ ഭാഷകളിലും വേണ്ടേ? നേരത്തെപ്പറഞ്ഞ Soundex അൽഗോരിതത്തിനെപ്പോലെയൊന്നു് ഇന്ത്യൻ ഭാഷകൾക്കു വേണ്ടി ഇൻഡിക് സൌണ്ടെക്സ് എന്ന പേരിൽ തയ്യാറാക്കിയിരുന്നു. വിവിധ ഇന്ത്യൻ ഭാഷകളിലെഴുതിയാലും പരസ്പരം ഒത്തുനോക്കാൻ അതിനു കഴിയും. ഉദാഹരണത്തിനു് സന്തോഷ്, सन्तोष എന്നിവ ഒരേ പേരാണെന്നു പറയുന്ന വിധത്തിൽ.

ഇമോജികളും ചില്ലക്ഷരങ്ങളും തമ്മിലെന്തു്?

ഈയിടെ XKCD യിൽ വന്ന ഒരു തമാശയാണു് മുകളിൽ കൊടുത്തിരിക്കുന്നതു്. ഇമോജികളെ പരിചയമുള്ളവർക്കു കാര്യം പിടികിട്ടിക്കാണും. എന്തെങ്കിലും ആശയം പ്രകടിപ്പിക്കാനുള്ള ചെറുചിത്രങ്ങളെയും സ്മൈലികളെയുമാണു് ഇമോജികൾ എന്നുവിളിക്കുന്നതു്. ചാറ്റു ചെയ്യുമ്പോഴൊക്കെ നമ്മൾ ഉപയോഗിക്കുന്ന ചിരിക്കുന്നതും സങ്കടഭാവത്തിലുള്ളതും നാക്കുനീട്ടുന്നതുമായ ചെറുചിത്രങ്ങളുടെ നിര ഇന്നു് വളർന്നു് ആയിരക്കണക്കിനായിട്ടുണ്ട്. ചിത്രങ്ങൾക്കു പകരം അവയെ അക്ഷരങ്ങളെന്നപോലെ കണക്കാക്കാൻ യുണിക്കോഡ് ഇപ്പോൾ ഇവയെ എൻകോഡ് ചെയ്യുന്നുണ്ടു്. ഉദാഹരണത്തിനു് 😀 എന്ന സ്മൈലിക്ക് U+1F60x എന്ന കോഡ്പോയിന്റാണുള്ളതു്. അടുപോലെ 👨 പുരുഷൻ, 👩 സ്ത്രീ എന്നിവയൊക്കെ പ്രത്യേക കോഡ് പോയിന്റുകളുള്ള ഇമോജികളാണു്.

ഇമോജികൾ അക്ഷരങ്ങളെപ്പോലെയായാൽ അവ ചേർന്നു് കൂട്ടക്ഷരങ്ങളുണ്ടാവുമോ? 😀

ഇമോജികളെ കൂട്ടിയിണക്കി പുതിയ അർത്ഥമുള്ള ഇമോജികൾ ഉണ്ടാക്കാനുള്ള സംവിധാനം യുണിക്കോഡ് ഒരുക്കിയിട്ടുണ്ടു്. 👪 എന്ന ഇമോജി കുടുംബത്തെ സൂചിപ്പിക്കുന്നു. അച്ഛൻ, അമ്മ, മക്കൾ എന്നിവരടങ്ങിയ കുടുംബം. ഇതുപക്ഷേ അച്ഛൻ അമ്മ, മകൻ, മകൾ എന്നിവ കൂട്ടിച്ചേർത്തും ഉണ്ടാക്കാം. 👨‍👩‍👧‍👦  എന്ന ഇമോജി അങ്ങനെ 👨‍ + 👩‍ + 👧‍ + 👦 എന്നീ ഇമോജികൾ കൂട്ടിയുണ്ടാക്കിയതാണു്. വെറുതെ അടുപ്പിച്ചെഴുതിയതല്ല, നമ്മൾ ക്ക  എന്നു് എഴുതാൻ ക കഴിഞ്ഞ ചന്ദ്രക്കലയിട്ട് അടുത്ത കയുമായി യോജിപ്പിക്കില്ലേ, അങ്ങനെ യോജിപ്പിക്കണം. അതായതു് U+1F468 U+200D U+1F469 U+200D U+1F466 എന്ന ശ്രേണി ഉപയോഗിക്കണം. ഇവിടെ കൂട്ടിയോജിപ്പിക്കാൻ ഉപയോഗിച്ചിരിക്കുന്നതു് U+200D എന്ന അക്ഷരമാണു്.

എന്താണു് U+200D? Zero Width Joiner എന്ന ഒരു അദൃശ്യ അക്ഷരമാണതു്. അതിനു രൂപമില്ല, സ്വഭാവമേ ഉള്ളൂ. അതിനിരുവശവമുള്ള അക്ഷരങ്ങളെ കൂട്ടിയോജിപ്പിക്കുക എന്ന സ്വഭാവം. ഒരു ഫോണ്ടിനു് ഇങ്ങനെയുള്ള ഒരു ശ്രേണിവന്നാൽ പകരം ഒരു ഒറ്റ ഇമോജിയുടെ ചിത്രം വെയ്ക്കണം എന്നറിയാം. നമ്മുടെ ക + ് + ക എന്ന അക്ഷരശ്രേണിവന്നാൽ അതു് ക്ക എന്നാക്കണം മലയാളം ഫോണ്ടുകൾക്കറിയാമെന്നപോലെ.

ഇനിയിപ്പോൾ ഒരു ഇമോജി ഫോണ്ടിനകത്തു് അങ്ങനെ കൂട്ടിയോജിപ്പിക്കണമെന്ന നിയമമില്ലെങ്കിലോ, വെറുതെ വിട്ടാലും മതി, ‘കുടുംബം’ ഇമോജി ഒറ്റ ചിത്രമല്ലാതെ നാലുപേർ നിരന്നു നിൽക്കുന്ന ചിത്രമാവും. എങ്ങനെ? നമ്മുടെ പ്ന എന്ന കൂട്ടക്ഷരം പ്‌ന എന്ന രീതിയിൽ പിരിഞ്ഞുവന്നാലും നമുക്ക് പ്ന തന്നെയാണല്ലോ, അതുപോലെ.

അങ്ങനെ ഇമോജികളെ ഇഷ്ടാനുസരണം ചേർത്തു് വിചിത്രമായ ഇമോജികൾ ഉണ്ടാക്കുന്നതിനെപ്പറ്റിയാണു് മുകളിലെ XKCD തമാശ. പക്ഷേ അങ്ങനെ എല്ലാ ഇമോജികളെയും തോന്നിയപടി ചേർക്കാൻ പറ്റില്ല കെട്ടോ, യുണിക്കോഡ് പ്രത്യേകം നിർവചിക്കണം. ഇതുവരെ നിർവചിച്ചിരിക്കുന്നവയുടെ ചാർട്ട് യുണിക്കോഡ് പുറത്തിറക്കിയിട്ടുണ്ടു്. അതിപ്പോൾ, മലയാളത്തിലും ഞ യും പയും ചന്ദ്രക്കലയിട്ടാലും കൂട്ടക്ഷരമുണ്ടാക്കില്ലല്ലോ, ചില അക്ഷരങ്ങൾ ചില ക്രമത്തിൽ ചേർന്നാലല്ലേ കൂട്ടക്ഷരമുണ്ടാക്കൂ.

നേരത്തെപറഞ്ഞ ZWJ യെ എവിടെയോ കണ്ട പരിചയമുണ്ടോ? 😀

മലയാളത്തിലെ ചില്ലക്ഷരങ്ങൾ എങ്ങനെയാണെഴുതുന്നതു്? ൻ എന്ന ചില്ലക്ഷരത്തിനു് U+0D7B എന്ന കോഡ്പോയിന്റ് ഉണ്ടു്. ഒറ്റയ്ക്കൊരു കോഡ് പോയിന്റുള്ളതുകൊണ്ടു് ചില്ലക്ഷരം ൻ അറ്റോമിക് ആയി എൻകോഡ് ചെയ്യപ്പെട്ടിരിക്കുന്നു എന്നും പറയാം. പക്ഷേ ഇങ്ങനെയുള്ള ഒരൊറ്റ കോഡ് പോയിന്റ് ചില്ലക്ഷരങ്ങൾക്കില്ലായിരുന്നു. സ്വരം ചേരാത്തു വ്യഞ്ജനം എന്ന അർത്ഥമാണല്ലോ ചില്ലക്ഷരങ്ങൾക്കുള്ളതു്. ൻ എന്നാൽ ന് എന്ന് സ്വരമൊന്നും ചേരാതെ ഉച്ചരിക്കുന്നു. അവൻ എന്ന വാക്ക് ഉദാഹരണം. ൻ എന്നെഴുതാൻ യൂനിക്കോഡ് 5.1 പതിപ്പിനുമുമ്പു വരെ ന + ്  + ZWJ എന്ന ശ്രേണിയാണു് ഉപയോഗിച്ചിരുന്നതു്. പിന്നീടു് അറ്റോമിക് കോഡ് പോയിന്റ് വന്നപ്പോൾ അതുപയോഗിച്ചും എഴുതിത്തുടങ്ങി. ZWJ യ്ക്കിവിടെ നേരത്തെ പറഞ്ഞ അദൃശ്യരൂപം തന്നെയാണ്. ന് എന്നതിനെ മോഡിഫൈ ചെയ്യുന്ന സ്വഭാവമാണു് ഈ സന്ദർഭത്തിലുള്ളതു്. ന് എന്നതിന്റെ ദൃശ്യരൂപം മാറ്റുക എന്ന സ്വഭാവം. അർത്ഥത്തിൽ മാറ്റം വരുത്തുന്നില്ല, ദൃശ്യത്തിൽ മാത്രം. നൻമ, നന്മ എന്നീ വാക്കുകളിൽ മയുടെ മുമ്പിലത്തെ ൻന്റെ ഉച്ചാരണം ഒന്നു തന്നെയാണല്ലോ. ഈ രണ്ടുവാക്കുകളും ഒന്നുതന്നെയാണെന്നും ZWJ എന്ന അദൃശ്യാക്ഷരംകൊണ്ടു് രൂപത്തിൽ മാത്രം വ്യത്യാസപ്പെട്ടിരിക്കുന്നുവെന്നും ഉദ്ദേശിക്കുന്നു.

ZWJ യുടെ നിർവചനമനുസരിച്ചു് ഡാറ്റാപ്രൊസസ്സിങ്ങിൽ വേണമെങ്കിൽ അവയെ അവഗണിയ്ക്കാം എന്നാണ് – ignorable character. ഇമോജികളുടെ കാര്യം പറയുമ്പോഴും ഇവ വേണമെങ്കിൽ ഒഴിവാക്കി കാണിക്കാം എന്നാണല്ലോ പറഞ്ഞതു്.

“When not available, the ZWJ characters are ignored and a fallback sequence of separate emoji is displayed. Thus an emoji zwj sequence should only be supported where the fallback sequence would also make sense to a viewer.”

ഇതുപോലെത്തന്നെയാണു് മലയാളത്തിലെ ZWJ യുടെ ഉപയോഗവും അർത്ഥവ്യത്യാസം ഉണ്ടാക്കാത്ത വാക്കുകളിൽ ദൃശ്യരൂപത്തിനു മാറ്റം വരുത്താൻ മാത്രം ZWJ ഉപയോഗിക്കാമെന്നായിരുന്നു പൊതുവിലുള്ള മനസ്സിലാക്കാൽ.

മലയാളത്തിലെ ചില്ലുകൾ – യുണിക്കോഡ് എൻകോഡ് ചെയ്തതു്

മലയാളത്തിൽ പക്ഷേ കാര്യങ്ങൾ അത്ര എളുപ്പമായിരുന്നില്ല. ഇങ്ങനെ ZWJ കൊണ്ട് ദൃശ്യരൂപത്തിനു മാറ്റം ഉണ്ടാക്കണമെന്ന നിർദ്ദേശം അനുസരിക്കാത്ത ബഗ്ഗുകളുള്ള അപ്ലിക്കേഷനുകളുണ്ടായിരുന്നു. ഉദാഹരണം ഫയർഫോക്സിന്റെ ആദ്യപതിപ്പുകൾ. “അവൻ കൊടുത്തു” എന്ന വാക്യം “അവന് കൊടുത്തു” എന്ന രീതിയിൽ തെറ്റിക്കാണിച്ചാൽ തെറ്റിപ്പോകില്ലേ? ഈ ചോദ്യം ചോദിച്ചാൽ അത്യാവശ്യം ഭാഷാവബോധമുള്ളവർ സംവൃതോകാരം ഉപയോഗിക്കാത്തതിന്റെ പ്രശ്നങ്ങൾ ചൂണ്ടിക്കാണിക്കും. “അവന് കൊടുത്തു” എന്നതു് “അവനു് കൊടുത്തു” എന്നു് മീത്തൽ മാത്രമല്ലാതെ സംവൃതോകാരം ഉ ചിഹ്നം കൂട്ടി എഴുതിയാൽ ഈ ആശയക്കുഴപ്പം വരില്ലയെന്നു്.

എന്തായാലും ചില്ലക്ഷരങ്ങളെ ഇങ്ങനെ ZWJ ചേർത്തെഴുതാതെ സ്വന്തമായി കോഡ് പോയിന്റ് കൊടുത്തു് അറ്റോമിക് ആയി നിർവചിക്കണമെന്ന വാദം യുണിക്കോഡ് അംഗീകരിക്കുകയാണുണ്ടായതു്. അതാണു് ഇന്നത്തെ ചില്ലുകളുടെ അംഗീകൃത/റെക്കമെന്റഡ് രീതി. എന്നാൽ ZWJ ചേർത്തെഴുതിയ ചില്ലുകൾ വ്യാപകമായി അപ്പോഴേക്കും മലയാളത്തിൽ വന്നിരുന്നതിനാൽ അപ്ലിക്കേഷനുകൾ അവയെ ചില്ലുകൾക്കു തുല്യമായി പരിഗണിക്കണമെന്ന നിർദേശവും ഉണ്ടു്.

കൌതുകകരമായ ഒരു കാര്യം, ഈ ചില്ലക്ഷരവിവാദമൊക്കെ നടക്കുമ്പോൾ ZWJ യ്ക്ക് ഇത്ര പ്രശസ്തിയൊന്നും ഉണ്ടായിരുന്നില്ല. മലയാളം, സിംഹള, അറബിക്ക് എന്നീ ഭാഷകളിലെ കുഴപ്പം പിടിച്ച, ആർക്കും മനസ്സിലാക്കാൻ പെട്ടെന്നു കഴിയാത്ത, അക്ഷരമാലയിലേക്കു് കടന്നുകയറിയ ഒരു അന്യാക്ഷരം ആയിരുന്നു അന്നതു്. അതുകൊണ്ടുതന്നെ അപ്പ്ലിക്കേഷനുകളൊന്നും ഇവ നേരാംവണ്ണം പ്രൊസസ്സ് ചെയ്യില്ല, നമുക്ക് ചില്ലുകൾക്ക് പ്രത്യേകം കോഡ് പോയിന്റ് വേണമെന്നൊക്കെ വാദമുണ്ടായിരുന്നു. പക്ഷേ വർഷങ്ങൾ കഴിഞ്ഞപ്പോൾ zwj യെ നമ്മൾ കൂടുതൽ കൂടുതലിടങ്ങളിൽ കാണുകയാണു്.

കൂടുതൽ വായനക്ക്:

Proposal for Malayalam language subtags for orthography variants rejected

The Internet Engineering Task Force (IETF) – Languages is responsible for the registration of language tags, subtags and script variants. These registered language tags are used in a wide set of internet standards and applications to identify and annotate language uniquely.

script-reformation-gov-order-1971

Recently Sascha Brawer(currently working at Google) submitted a proposal to register two new language subtags for Malayalam to denote the orthography variations. Malayalam orthography had a diverging moment in history when Kerala government decided to script reformation in 1971. The decision was to accommodate the Malayalam orthography for the then existing typewriters and typesetting devices. These devices had limitations to accomodate the wide character set of Malayalam at that time.

So, the proposal was to introduce two subtags as follows:

  1. ml-puthiya:  Reformed Malayalam orthography-Malayalam that is  w ritten in the orthography of the 1971 reform. In Malayalam (transcribed to English), the term for this variant is “puthiya lipi”.
  2. ml-pazhaya:  Traditional Malayalam orthography- Malayalam that is written using the orthographic conventions that were in place before the 1971 reform. In Malayalam (transcribed to English), the term for this variant is “pazhaya lipi”.

Sascha Brawer correctly explained the missing part in this classification:

According to my contact, this reform was a continuum; the Kerala government order of 1971 did not immediately affect the common practice. Instead, the transition from traditional to reformed has happened over the period of 20-30 years. There is a lot of variation in the specifics for any year one could pick in the last century.

Again according to my contact, there is a common overall understanding among Malayalam speakers that the orthography of the language has moved from ‘traditional’ to ‘reformed.’ However, my contact did not know of an authoritative reference that would describe this transition in more detail.

I replied to the proposal as follows:

Mathrubhumi-title
Mathrubhumi daily uses a mixed orthography, except the ു sign, it mostly follows traditional writing style with many conjuncts and stacked ligatures
Manorama-Title
Malayala Manoarma daily follows a style more close to reformed orthography and avoids many ligatures.

[…] This is true, there is no defnition or authoritative reference about this
differences. And that is my concern. Given a set of printed samples from
say, todays news paper in Malayalam, one cannot say this is new'(puthiya) or this is ‘old'(pazhaya). The contemporary Malayalam usage is a mixed one. It borrows some reformation from 1971 order and some from the practices that existed before

The reason for mixed mode is because the main intention behind the 1971
reformation was to get Malayalam ‘usable’ with then type writers and composing machines. As technology progressed and when these limitations vanished, nothing stopped people from using the types similar to what they will write using pen on paper. The modern opentype technology completely removed this limitation and many modern and famous typefaces of Malayalam uses this ‘old’/ml-pazhaya style.

So defining two variants ml-puthiya, ml-pazhaya without a clear way to
distinguish one from another and having a wide range of ununamed variants exist, is concerning.[…]

Later,  Michael Everson, the registrar for IETF language tags said he is rejecting the proposals.

For a Malayalam subtag to be approvable, it really should refer to an orthographic standard. So far it appears that there isn’t anything very precise for either the traditional or the newer spelling to be specified, so it would be best to reject this now (rather than extending it little by little) until revised proposals with solid references can be put forward.