0
I Use This!
Activity Not Available

News

Posted over 9 years ago by Anivar Aravind
സ്വതന്ത്ര 2014 കോണ്‍ഫറന്‍സില്‍ ഡോ. റിച്ചാര്‍ഡ് സ്റ്റാള്‍മാന്‍ നടത്തിയ മുഖ്യപ്രഭാഷണത്തിന്റെ പൂര്‍ണ്ണരൂപം മൂന്നുഭാഗങ്ങളായി പ്രസിദ്ധീകരിയ്ക്കുന്നു . ആദ്യഭാഗം | രണ്ടാം ഭാഗം | മൂന്നാം ഭാഗം നിങ്ങളോടൊരു അഭ്യര്‍ത്ഥനയോടുകൂടി ഞാന്‍ തുടങ്ങട്ടെ. ... [More] നിങ്ങളെന്റെ ചിത്രങ്ങളെടുക്കുകയാണെങ്കില്‍ ദയവുചെയ്തു് അവ ഫേസ്‌ബുക്കിലോ ഇന്‍സ്റ്റാഗ്രാമിലോ ഇടരുതു്. ആ കമ്പനിയൊരു ഭീമാകാരമായ നിരീക്ഷണയന്ത്രമാണു്. അതു് ഉപയോഗിക്കുന്നവരെ അതു് തുടര്‍ച്ചയായി നിരീക്ഷിക്കുന്നു. കമ്പനി മറ്റുള്ളവരെയാണു് ഉപയോഗിക്കുന്നതു്, മറിച്ചല്ല. അതുകൊണ്ടു്, കമ്പനിയുടെ ഉപയോക്താക്കള്‍ എന്നല്ല, കമ്പനിയാല്‍ ഉപയോഗിക്കപ്പെടുന്നവര്‍ എന്നാണു് ഞാനവരെ വിളിക്കുന്നതു്. കൂടാതെ നെറ്റിലുള്ള മറ്റെല്ലാവരെയും നിരീക്ഷിക്കാന്‍ കമ്പനി ശ്രമിക്കുന്നു. ആരുടെയെങ്കിലും ചിത്രം നിങ്ങള്‍ ഫേസ്‌ബുക്കിലിട്ടാല്‍ ആ വ്യക്തിയെ നിരീക്ഷിക്കാനുള്ള ഒരു മാര്‍ഗ്ഗംകൂടി നിങ്ങള്‍ അവര്‍ക്കു് നല്‍കുകയാണു്. അതുകൊണ്ടു് അങ്ങനെ ചെയ്യുന്നതു് നിങ്ങളുടെ സുഹൃത്തിനോടുള്ള മോശമായ പെരുമാറ്റമാവുന്നുണ്ടു്, എന്നോടും മോശമായ പെരുമാറ്റമാവുമതു്. അതുകൊണ്ടു്, ദയവുചെയ്തു് ഫേസ്‌ബുക്കിലോ ഇന്‍സ്റ്റാഗ്രാമിലോ ചിത്രം വേണ്ട. കൂടാതെ ഫേസ്‌ബുക്കിനാല്‍ ഉപയോഗിക്കപ്പെടുന്നവരാകാതിരിക്കാന്‍ ഞാന്‍ നിങ്ങളെ ഉപദേശിക്കുന്നു. രണ്ടാമതായി, ഈ പ്രസംഗത്തിന്റെ ശബ്ദമോ വിഡിയോയോ നിങ്ങള്‍ രേഖപ്പെടുത്തുന്നുണ്ടെങ്കില്‍ ദയവുചെയ്തു് സ്വതന്ത്രസോഫ്റ്റ്‌വെയറിനെ അനുകൂലിക്കുന്ന ഫോര്‍മാറ്റുകളില്‍ മാത്രം അതു വിതരണം ചെയ്യുക. ഒജിജി, അഥവാ ഓഗ് (ogg) ഫോര്‍മാറ്റുകളോ വെബെം (webm) ഫോര്‍മാറ്റുകളോ മാത്രം ഉപയോഗിയ്ക്കുക. 'എംപി' എന്നതില്‍തുടങ്ങുന്ന ഫോര്‍മ്മാറ്റുകളിലൊന്നിലും ദയവുചെയ്തു് ഈ പ്രസംഗത്തിന്റെ പകര്‍പ്പുകള്‍ വിതരണം ചെയ്യാതിരിയ്ക്കുക. കാരണം ആ ഫോര്‍മാറ്റുകള്‍ പല രാജ്യങ്ങളിലും പേറ്റന്റ് ചെയ്തിരിക്കുകയാണു്. മറ്റെല്ലാത്തിനും പുറമെ പകര്‍പ്പുകള്‍ ഫ്ലാഷ് ഫോര്‍മാറ്റില്‍ വിതരണം ചെയ്യുന്നതൊഴിവാക്കൂ. ദയവുചെയ്തു് ഈ പ്രസംഗം യൂട്യൂബില്‍ ഇടരുതേ. വിന്‍ഡോസ് മീഡിയ പ്ലെയര്‍, റിയല്‍ പ്ലെയര്‍, ക്വിക്‌ടൈം എന്നീ രീതികളിലുള്ള വിതരണവും ദയവായി ഒഴിവാക്കൂ. വിശേഷിച്ചു് ക്വിക‌്ടൈമില്‍. ദയവുചെയ്തു് ഐട്യൂണ്‍സില്‍ ഈ പ്രസംഗം ലഭ്യമാക്കരുതേ. ഐട്യൂണ്‍സ് കേള്‍ക്കാനായി സ്വതന്ത്രമല്ലാത്ത സോഫ്റ്റ്‌വെയര്‍ പ്രവര്‍ത്തിപ്പിക്കാന്‍ മനുഷ്യര്‍ നിര്‍ബ്ബന്ധിതരാകുന്നു. ജനങ്ങള്‍ക്കു് ഐട്യൂണ്‍സ് പ്രവര്‍ത്തിപ്പിക്കാനായി വികസിപ്പിച്ച സ്വതന്ത്രസോഫ്റ്റ്‌വെയര്‍ ആപ്പിള്‍ മനഃപൂര്‍വ്വം ഉപയോഗശൂന്യമാക്കി. അതുകൊണ്ടു് യാതൊന്നും ഐട്യൂണ്‍സിലൂടെ വിതരണം ചെയ്യാന്‍ പാടില്ല. അതു് മഹാ ചീത്തയാണു്. ഇവ അടുത്ത കാര്യത്തിലേയ്ക്ക് നമ്മെ എത്തിക്കുന്നു. സ്വതന്ത്രമല്ലാത്ത സോഫ്റ്റ്‌വെയര്‍ പ്രവര്‍ത്തിപ്പിക്കാന്‍ ഈ പ്രസംഗം വിതരണംചെയ്യാനുപയോഗിക്കുന്ന വെബ്സൈറ്റ് ഉപയോക്താക്കളെ നിര്‍ബ്ബന്ധിക്കുന്നില്ല എന്നും തികച്ചും സ്വതന്ത്രമായ സോഫ്റ്റ്‌വെയറുപയോഗിച്ചു് തങ്ങളുടെ കമ്പ്യൂട്ടറിലേക്കു് പകര്‍ത്താന്‍ അനുവദിക്കുകയും ചെയ്യുമെന്നു് ഉറപ്പുവരുത്തണേ. അതായതു് ഇതു് യൂട്യൂബില്‍ ഇടരുതെന്നു തന്നെ. നോക്കൂ, യൂട്യൂബില്‍ രണ്ടു് സാധ്യതകളുണ്ടു്, ഓരോന്നിനും ഓരോ പ്രശ്നവുമുണ്ടു്. അതിലെ എച്ടിഎമ്മെല്‍ സാധ്യത നിങ്ങളെ സ്വതന്ത്രമല്ലാത്ത ജാവാസ്ക്രിപ്റ്റ് കോഡ് പ്രവര്‍ത്തിപ്പിക്കാന്‍ ആവശ്യപ്പെടുന്നു. ഫ്ലാഷിന്റെ പ്രശ്നം പറഞ്ഞല്ലോ. പിന്നെ ദയവുചെയ്തു് ഈ പ്രസംഗം ക്രിയേറ്റീവ് കോമണ്‍സ് നോ ഡെറിവേറ്റിവ്സ് ലൈസന്‍സില്‍ വിതരണം ചെയ്യൂ, കാരണം ഇതു് ഒരു പ്രത്യേക കാഴ്ചപ്പാടിന്റെ അവതരണമാണു്. അപ്പോള്‍, കമ്പ്യൂട്ടിങ് പ്രവര്‍ത്തനത്തിന്റെ തുടക്കമെന്നു പറയുന്നതു് നിങ്ങളുപയോഗിക്കുന്ന എല്ലാ സോഫ്റ്റ്‌വെയറും സ്വതന്ത്രമെന്നു് ഉറപ്പാക്കുകയാണു്. ഫ്രീ സോഫ്റ്റ്‌വെയറെന്നു ഞാന്‍ പറയുമ്പോള്‍, ഞാന്‍ സംസാരിക്കുന്നതു് സ്വാതന്ത്ര്യത്തെക്കുറിച്ചാണു്, വിലയെക്കുറിച്ചല്ല. വെറുതെ ലഭിക്കുന്ന സോഫ്റ്റ്‌വെയറിനെക്കുറിച്ചല്ല ഞാന്‍ സംസാരിയ്ക്കുന്നതു്. പണം കൊടുക്കാതെ നിങ്ങള്‍ക്കു് ഒരു പകര്‍പ്പുകിട്ടി എന്നല്ല ഞാനുദ്ദേശിച്ചതു്. വാസ്തവത്തില്‍, ഒരു പകര്‍പ്പു ലഭിക്കാനായി പണംകൊടുത്തോ ഇല്ലയോ എന്നതു് ധാര്‍മ്മികമായി പ്രസക്തമേയല്ല; രണ്ടിലും തെറ്റില്ല. ധാര്‍മ്മികമായി നിര്‍ണ്ണായകമായിട്ടുള്ളതു് സോഫ്റ്റ്‌വെയര്‍ നിങ്ങള്‍ക്കു് ലഭിച്ചുകഴിയുമ്പോള്‍ അതു് നിങ്ങളുടെ സ്വാതന്ത്ര്യത്തെ ബഹുമാനിക്കുന്നുണ്ടോ എന്നുള്ളതാണു്. അതുകൊണ്ടു് ഫ്രീ സോഫ്റ്റ്‌വെയര്‍ എന്നു പറയുന്നതു് സ്വാതന്ത്ര്യത്തെ ബഹുമാനിക്കുന്ന സോഫ്റ്റ്‌വെയറാണു്. നമുക്കതിനെ 'മുക്ത് 'എന്നോ 'മുക്തോ' എന്നോ 'സ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍' എന്നോ വിളിക്കാം. ഇംഗ്ലിഷില്‍ ഈ ആശയം വ്യക്തമാക്കുന്നതിനു്, ഫ്രീ എന്ന പദത്തിനു് അവ്യക്തതയുള്ളതുകൊണ്ടു്, ഫ്രീ എന്നു പറയുമ്പോള്‍ ഫ്രീ സ്പീച് (സ്വതന്ത്രമായ ആശയവിനിമയം) എന്നാണു് ചിന്തിക്കുക, ഫ്രീ ബീയര്‍ (പണംകൊടുക്കാതെ ലഭിക്കുന്ന ബിയര്‍) എന്നല്ല. ഒരു പ്രോഗ്രാം സ്വതന്ത്രമല്ലാത്തപ്പോള്‍ നാമതിനെ 'അസ്വതന്ത്രവും, കുത്തവകാശമുള്ളതും, ഉപയോക്താവിനെ കീഴ്‌പെടുത്തുന്നതുമായ സോഫ്റ്റ്‌വെയര്‍' എന്നു വിളിക്കും, കാരണം ഓരോ അസ്വതന്ത്ര സോഫ്റ്റ്‌വെയറും അന്യായമായ അധികാരം സൃഷ്ടിക്കുന്നു. അതു് പ്രോഗ്രാമിന്റെ ഉപയോക്താവിന്റെ മേല്‍ പ്രോഗ്രാമിന്റെ നിര്‍മ്മാതാവിനു് അധികാരം നല്‍കുന്നു. ഇതു തീര്‍ത്തും അന്യായമാണു്. അസ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍ നിലനില്‍ക്കരുതു്. ഒരു അസ്വതന്ത്ര പ്രോഗ്രാം ഒരുതരം ഡിജിറ്റല്‍ കോളനിവല്‍ക്കരണം സൃഷ്ടിക്കുന്നു. ഏതു് കോളനിസംവിധാനവുമെന്നപോലെ ഇതും ഇരകളെ വേര്‍തിരിച്ചും നിസ്സഹായരായും നിര്‍ത്തുന്നു. ഈ കാര്യത്തില്‍, അവര്‍ വേര്‍തിരിയ്ക്കപ്പെടുന്നതിനു കാരണം പ്രോഗ്രാം മറ്റുള്ളവര്‍ക്കു് നല്‍കുന്നതില്‍നിന്നു് ഉപയോക്താക്കള്‍ വിലക്കപ്പെട്ടിരിക്കുന്നു എന്നതാണു്. പ്രോഗ്രാമിന്റെ മൂലരൂപം (source code) ഇല്ലാത്തതുകൊണ്ടാനു് അവര്‍ നിസ്സഹായരാകുന്നതു്. അവര്‍ക്കതില്‍ മാറ്റംവരുത്താനുള്ള അധികാരവും ഇല്ല. അതു് യഥാര്‍ത്ഥത്തില്‍ എന്താണു ചെയ്യുന്നതു് എന്നു പഠിക്കാന്‍പോലും ആവില്ല. അതുകൊണ്ടു് സോഫ്റ്റ്‌വെയര്‍ സ്വതന്ത്രമാവണം. പക്ഷെ എന്തുകൊണ്ടു്? സ്വാതന്ത്ര്യമെന്നാല്‍ സ്വന്തം ജീവിതത്തെ സ്വയം നിയന്ത്രിയ്ക്കാനാകുകയെന്നതാണു്. അതായതു് നിങ്ങളുടെ ജീവിതത്തില്‍ എന്തുചെയ്യണമെന്നു് നിങ്ങള്‍ തീരുമാനിക്കുന്നു. എന്നാല്‍ നിങ്ങള്‍ക്കു് തോന്നിയതെന്തും ചെയ്യാമെന്നു് ഇതര്‍ത്ഥമാക്കുന്നുമില്ല. കാരണം വേറെയും മനുഷ്യരുണ്ടു്, അവര്‍ക്കുമുണ്ടു് അവകാശങ്ങള്‍. പക്ഷെ നിങ്ങളുടെ ജീവിതത്തില്‍ എന്തു ചെയ്യണമെന്നു് നിങ്ങളാണു് തീരുമാനിക്കുന്നതെന്ന അര്‍ത്ഥമതിനുണ്ടു്. നിങ്ങളുടെ ജീവിതത്തിലെ പ്രവര്‍ത്തനങ്ങളെ സ്വയംനിയന്ത്രിക്കാനാകുക എന്നതും അതിന്റെ ഭാഗമാണു്. കമ്പ്യൂട്ടറും സോഫ്റ്റ്‍വെയറുമുപയോഗിച്ചാണു് നിങ്ങളുടെ പ്രവര്‍ത്തനങ്ങളെങ്കിലോ? പ്രവര്‍ത്തനങ്ങളെ സ്വയം നിയന്ത്രിക്കാനാകുകയെന്നാല്‍ സോഫ്റ്റ്‍വെയറിനെ നിയന്ത്രിക്കാനാകേണ്ടിയിരിക്കുന്നു. അതാണിവിടെ നിര്‍ണ്ണായകമായ കാര്യം. ഉപയോക്താക്കള്‍ നിയന്ത്രിക്കുന്ന സോഫ്റ്റ്‍വെയറാണു് സ്വതന്ത്രസോഫ്റ്റ്‌വെയര്‍. ഉപയോക്താക്കളെ നിയന്ത്രിക്കുന്നതാണു് കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയര്‍. സോഫ്റ്റ്‌വെയറിനെ സംബന്ധിച്ചു് ഈ രണ്ടു സാധ്യതകളേയുള്ളൂ. ഏതു പ്രോഗ്രാമിനും ഒന്നുകില്‍ ഉപയോക്താക്കള്‍ അതിനെ നിയന്ത്രിക്കുന്നു, അല്ലെങ്കില്‍ അതു് ഉപയോക്താക്കളെ നിയന്ത്രിക്കുന്നു. മറ്റൊരു സാധ്യതയില്ല. ഉപയോക്താവ് പ്രോഗ്രാമിനെ നിയന്ത്രിക്കുമ്പോള്‍ അതു് സ്വതന്ത്ര സോഫ്റ്റ്‌വെയറാണു്. സ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍ എന്ന പേരു് ഉചിതമാകുന്നതു് ഈ അര്‍ത്ഥത്തിലാണു്. കാരണം ഉപയോക്താക്കള്‍ക്കു് പ്രോഗ്രാമിനെ നിയന്ത്രിക്കാനാകണമെങ്കില്‍ അവര്‍ക്കു് സ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍ നല്‍കുന്ന നാല് സ്വാതന്ത്ര്യങ്ങള്‍ അവശ്യമാണു്. സ്വാതന്ത്ര്യം-പൂജ്യം എന്നതു് നിങ്ങള്‍ക്കിഷ്ടമുള്ളതുപോലെ എന്താവശ്യത്തിനും പ്രോഗ്രാം പ്രവര്‍ത്തിപ്പിക്കാനുള്ള സ്വാതന്ത്ര്യമാണു്. പ്രോഗ്രാമിന്റെ മൂലരൂപം പഠിച്ചു് നിങ്ങള്‍ക്കിഷ്ടമുള്ള രീതിയില്‍ പ്രവര്‍ത്തിപ്പിക്കാനായി മാറ്റം വരുത്താനുള്ളതാണു് സ്വാതന്ത്ര്യം-ഒന്നു്. ഈ രണ്ടു് സ്വാതന്ത്ര്യങ്ങളുമുണ്ടെങ്കില്‍ ഓരോ ഉപയോക്താവിനും സ്വന്തമായി പ്രോഗ്രാമിന്റെമേല്‍ നിയന്ത്രണം ലഭിക്കും. അതുകൊണ്ടു് നിങ്ങളുടെ കൈവശമുള്ള പകര്‍പ്പിന്റെമേല്‍ നിങ്ങള്‍ക്കും എന്റെ കൈവശമുള്ള പകര്‍പ്പിന്റെമേല്‍ എനിക്കും പൂര്‍ണ്ണമായ നിയന്ത്രണം ലഭിക്കുന്നു. നിങ്ങളുടെ കൈവശമുള്ള പകര്‍പ്പില്‍ എനിക്കു് മാറ്റംവരുത്താനാവില്ല. അതുപോലെ എന്റെ കൈവശമുള്ള പകര്‍പ്പില്‍ നിങ്ങള്‍ക്കും മാറ്റംവരുത്താനാവില്ല. നിങ്ങള്‍ക്കു് നിങ്ങളുടെ പകര്‍പ്പില്‍ മാറ്റംവരുത്താനാകും എന്നതാണു് കാര്യം. ഇതു നിങ്ങള്‍ക്കു് നിങ്ങളുടെ പ്രോഗ്രാമിനു മുകളിലുള്ള പ്രത്യേകനിയന്ത്രണം സാദ്ധ്യമാക്കുന്നു. പക്ഷെ പ്രത്യേകനിയന്ത്രണംകൊണ്ടുമാത്രം പ്രയോജനമില്ല. കാരണം മിക്ക ഉപയോക്താക്കളും പ്രോഗ്രാമര്‍മാരല്ല. മൂലരൂപം പഠിച്ചു് മാറ്റംവരുത്തേണ്ടതെങ്ങിനെ എന്നവര്‍ക്കറിയില്ല. അതുകൊണ്ടുതന്നെ സ്വാതന്ത്ര്യം-പൂജ്യവും ഒന്നും ചേര്‍ന്നു നല്‍കുന്ന നിയന്ത്രണാധികാരം കൊണ്ടുമാത്രം അവര്‍ക്കു് വലിയ പ്രയോജനമൊന്നുമില്ല. ഇതുകൊണ്ടു് ഞാനെന്തുചെയ്യാനാണെന്നു് അവര്‍ ചോദിച്ചേയ്ക്കും. പക്ഷെ, എന്നേപ്പോലൊരു പ്രോഗ്രാമര്‍ക്കുപോലും, ഞങ്ങള്‍ക്കുപോലും, പ്രത്യേകമായ നിയന്ത്രണം മാത്രം പോര, കാരണം നമ്മളോരോരുത്തരും നൂറുകണക്കിനോ ആയിരക്കണക്കിനോ പ്രോഗ്രാമുകളുപയോഗിക്കുന്നുണ്ടു്. അത്രവളരെ പ്രോഗ്രാമുകളുടെ മൂലരൂപം പഠിക്കാനും അവയില്‍ നൈപുണ്യം നേടാനും ആര്‍ക്കുമാവില്ല. ഒരാള്‍ക്കു് ചെയ്യാന്‍ കഴിയുന്നതിനപ്പുറമാണതു്. അതുകൊണ്ടുതന്നെ നമുക്കു് കൂട്ടായ നിയന്ത്രണം ആവശ്യമാണു്; അതായതു് ഉപയോക്താക്കളുടെ കൂട്ടായ്മകള്‍ക്കു് ഒത്തുചേര്‍ന്നു് ഒരു പ്രോഗ്രാമിന്റെ മേല്‍ നിയന്ത്രണം കൊണ്ടുവരാനും അവര്‍ക്കാവശ്യമുള്ള രീതിയില്‍ അതിനെ പ്രവര്‍ത്തിപ്പിക്കാനുമുള്ള സ്വാതന്ത്ര്യം ആവശ്യമായി വരുന്നു. അതിനായി മറ്റുരണ്ടു് സ്വാതന്ത്ര്യങ്ങള്‍ക്കൂടി അവശ്യമായിവരുന്നു. അതേപടിയുള്ള പകര്‍പ്പുകളെടുക്കാനുള്ളതാണു് സ്വാതന്ത്ര്യം-രണ്ടു്, എന്നിട്ടു് അവ ആര്‍ക്കെങ്കിലും നല്‍കുകയോ വില്‍ക്കുകയോ ചെയ്യാം. മറ്റാര്‍ക്കെങ്കിലും നല്‍കാനോ വില്‍ക്കാനോ വേണ്ടി മാറ്റംവരുത്തിയ പതിപ്പുകളുടെ പകര്‍പ്പെടുക്കാനുള്ളതാണു് സ്വാതന്ത്ര്യം-മൂന്നു്. ഈ രണ്ടു് സ്വാതന്ത്ര്യങ്ങളും ചേരുമ്പോള്‍ കൂട്ടായി പ്രവര്‍ത്തിക്കാനുള്ള സ്വാതന്ത്ര്യം ഉപയോക്താക്കള്‍ക്കു ലഭിക്കുന്നു. കാരണം അവരിലൊരാള്‍ ഒരു മാറ്റം വരുത്തിയാല്‍ അതു മറ്റുള്ളവരുമായി പങ്കുവെയ്ക്കാനുള്ള സ്വാതന്ത്ര്യമുണ്ടു്. അവര്‍ക്കു് കൂടുതല്‍ മാറ്റങ്ങള്‍ വരുത്തി തിരിച്ചയയ്ക്കുകയും ചെയ്യാം. അങ്ങനെ ഈ ഉപയോക്താക്കള്‍ക്കു് ഒരുമിച്ചുപ്രവര്‍ത്തിച്ചു് അവരുടെ ആവശ്യമനുസരിച്ചു് പ്രോഗ്രാമിനെ മാറ്റാനും അവര്‍ക്കാവശ്യമുള്ള രീതിയില്‍ പ്രോഗ്രാം പ്രവര്‍ത്തിപ്പിക്കാനുമാകും. മാത്രമല്ല, വേണമെങ്കില്‍ അവരുടെ പതിപ്പിന്റെ പകര്‍പ്പുകള്‍ മറ്റുള്ളവര്‍ക്കും പൊതുജനത്തിനുപോലും വേണമെങ്കില്‍ നല്‍കുകയുമാകാം. ഉപയോക്താക്കള്‍ക്കു് ഒരു പ്രാഗാമിനു മേല്‍ വ്യക്തിപരമായും കൂട്ടമായും നിയന്ത്രണം സാദ്ധ്യമാകുമ്പോഴാണു് പ്രോഗ്രാമിന്റെ പൂര്‍ണ്ണ നിയന്ത്രണം ഉപയോക്താക്കള്‍ക്കാവുന്നതു്. അങ്ങനെയാണു് വേണ്ടതും. എന്നാല്‍ ഈ സ്വാതന്ത്ര്യങ്ങളില്‍ ഏതെങ്കിലും ലഭ്യമല്ലാതിരിയ്ക്കുകയോ തികയാതെവരികയോ ചെയ്താല്‍ ഉപയോക്താക്കള്‍ പ്രോഗ്രാമിനെ പൂര്‍ണ്ണമായി നിയന്ത്രിക്കുന്നുവെന്നു പറയാനാകില്ല. അതായതു് അപ്പോള്‍ പ്രോഗ്രാം ഉപയോക്താക്കളെ നിയന്ത്രിക്കുന്നു. നിര്‍മ്മാതാവ് പ്രോഗ്രാമിനെയും. അപ്പോള്‍ ഉപയോക്താക്കളുടെമേല്‍ സോഫ്റ്റ്‌വെയര്‍നിര്‍മ്മാതാവിനു് അധികാരം നല്‍കുന്ന പ്രോഗ്രാമാണതു്. ഇതൊരു നുകമാണു്. ഒരന്യായമാണു്. അതുകൊണ്ടാണു് അസ്വതന്ത്രമായ പ്രോഗ്രാം അനീതിയാകുന്നതു്. അതുകൊണ്ടുതന്നെയാണു് അസ്വതന്ത്രമായ പ്രോഗ്രാം നിലനില്‍ക്കാന്‍ പാടില്ലാത്തതും. സ്വതന്ത്ര സോഫ്റ്റ്‌വെയറും കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയറും തമ്മിലുള്ള വ്യത്യാസം സാങ്കേതികമല്ല എന്നു് നിങ്ങള്‍ക്കു് കാണാമല്ലോ. പ്രോഗ്രാമിനു് എന്തെല്ലാം സവിശേഷതകളുണ്ടു് എന്നതല്ല പ്രശ്നം. അതെങ്ങനെ പ്രവര്‍ത്തിക്കുന്നു എന്നതുമല്ല. അതിന്റെ മൂലരൂപം എങ്ങനെയാണു് എഴുതിയിരിക്കുന്നെന്നതുമല്ല പ്രശ്നം. ഈ ചോദ്യവുമായി യാതൊരു ബന്ധവുമില്ലാത്ത സാങ്കേതികമായ വിശദാംശങ്ങളാണു് അവയെല്ലാം; എന്തായാലും ഈ പ്രശ്നവുമായി നേരിട്ടു് നിര്‍ണ്ണായകമായി ബന്ധപ്പെട്ടവയല്ല. അവതമ്മില്‍ ബന്ധങ്ങളുണ്ടാവാനുള്ള നേരിട്ടല്ലാതെയുള്ള പ്രവണതയുണ്ടാവാം പക്ഷെ അവ പ്രശ്നത്തിന്റെ ഭാഗമല്ല. ധാര്‍മ്മികവും സാമൂഹ്യവും രാഷ്ട്രീയവുമായ വ്യത്യാസമാണു് സ്വതന്ത്രവും കുത്തകാവകാശമുള്ളതും തമ്മിലുള്ളതു്. അതുകൊണ്ടാണു് അതിത്രവളരെ പ്രധാനമാകുന്നതും. ഒരു സ്വതന്ത്രമായ പ്രോഗ്രാമുപയോഗിക്കുന്നതു് സാമൂഹികവികസനമാണു്. അതൊരു നല്ല കാര്യമാണു്. ഓരോ പ്രോഗ്രാമിങ് കൂട്ടത്തിന്റെയും അറിവ്, അതു് സ്വതന്ത്രമാണെങ്കില്‍, ആ അറിവ് ഉപയോക്താക്കള്‍ക്കു് പഠിക്കാനും മനസ്സിലാക്കാനും ലഭ്യമാവും. അപ്പോള്‍ ആ പ്രോഗ്രാം അവര്‍ക്കു് നിലനിര്‍ത്തുകയും ആവശ്യമനുസരിച്ചു് മാറ്റാനും വിപുലപ്പെടുത്താനും കഴിയും. അവരുടെ അറിവ് മറ്റുവിധങ്ങളിലും ഉപയോഗിക്കാനാകും. പക്ഷെ കുത്തകാവകാശമുള്ള പ്രോഗ്രാമിന്റെ ഉപയോഗം വികസനമല്ല. കാരണം ഒരു പ്രത്യേക സ്ഥാപനത്തോടുള്ള വിധേയത്വമാക്കി അതു പാരതന്ത്ര്യം അടിച്ചേല്പിക്കുകയാണു്. അതു് സമൂഹത്തിനു് ദോഷം ചെയ്യുകയാണു്. അതൊരു സാമൂഹികപ്രശ്നമാണു്. അതിനാല്‍ ആ അസ്വതന്ത്ര പ്രോഗ്രാമിനെ ഇല്ലാതാക്കുക എന്നതാവണം നമ്മുടെ ലക്ഷ്യം. ആരും അതുപയോഗിക്കാതാവണം. ഒരു സ്വതന്ത്രമായ പ്രോഗ്രാം വികസിപ്പിക്കുക എന്നതു് സമൂഹത്തിനു നല്‍കുന്ന സംഭാവനതന്നെയാണു്. എന്നാല്‍ അതെത്രമാത്രമാണെന്നതു് പ്രോഗ്രാമിന്റെ വിശദാംശങ്ങളെ ആശ്രയിച്ചിരിക്കുന്നു. പ്രോഗ്രാം ഉപയോഗപ്രദമാണെങ്കില്‍ അതു് വലിയ സംഭാവനയാണു്. അതു് തീരെ ഉപയോഗപ്രദമല്ലെങ്കില്‍ അതിന്റെ സംഭാവന തീരെ കുറവാണു്. പക്ഷെ കഴിയുന്നത്ര സമൂഹത്തിനു സംഭാവനകള്‍ നല്‍കാന്‍ തക്കവണ്ണമാണു് ആ സോഫ്റ്റ്‌വെയര്‍ വിതരണംചെയ്യുന്നതെന്നാണു് അതു് സ്വതന്ത്രസോഫ്റ്റ്‌വെയറാണെങ്കില്‍ അര്‍ത്ഥമാക്കുന്നതു്. കുത്തകാവകാശമുള്ള പ്രോഗ്രാം വികസിപ്പിക്കുന്നതു് യാതൊന്നും സംഭാവനചെയ്യുന്നില്ല കാരണം അതു് അധികാരം പിടിച്ചെടുക്കലാണു് ജനങ്ങളെ കീഴടക്കാനുള്ള ശ്രമവുമാനു്. അതു് സമൂഹത്തിനോടുള്ള ദ്രോഹമാണു്. സാമൂഹികമായി പറയുകയാണെങ്കില്‍ അസ്വതന്ത്രമായ പ്രോഗ്രാം ഒരുതരം കെണിയാണു്. അതിനു് ആകര്‍ഷകമായ സവിശേഷതകളുണ്ടെങ്കില്‍ അവയാണു് പ്രലോഭനം. വിരോധാഭാസമെന്നു തോന്നാമെങ്കിലും ആകര്‍ഷകമായ സവിശേഷതകള്‍ കുത്തകാവകാശമുള്ള ഒരു പ്രോഗ്രാമിനെ കൂടുതല്‍ മെച്ചപ്പെട്ടതാക്കുന്നില്ല. മറിച്ചു് കൂടുതല്‍ ദോഷകരമാക്കുകയാണു് ചെയ്യുന്നതു്. അതുകൊണ്ടു് കുത്തകാവകാശമുള്ള ഒരു പ്രോഗ്രാമിന്റെ വികസനത്തില്‍ സഹായിക്കാനോ വെറുതെയിരിക്കാനോ ചെയ്യാനുള്ള അവസരമുണ്ടെങ്കില്‍, ധാര്‍മ്മികമായി നിങ്ങളുടെ കടമ വെറുതെയിരിക്കുക എന്നതാണു്. കാരണം ആ വിധത്തില്‍ നിങ്ങള്‍ ദ്രോഹമൊന്നും ചെയ്യുന്നില്ല. ഒന്നുമില്ലെങ്കിലും ദ്രോഹമൊന്നും ചെയ്യാതിരിക്കുക. യഥാര്‍ത്ഥജീവിതത്തില്‍ തീര്‍ച്ചയായും നിങ്ങള്‍ക്കു് മറ്റുമാര്‍ഗ്ഗങ്ങളും ലഭ്യമായിരിക്കും; അതുകൊണ്ടു് അവ തിരഞ്ഞെടുക്കുക. പക്ഷെ നാം ഈ രണ്ടു് സാധ്യതകളെ സൈദ്ധാന്തികമായി താരതമ്യപ്പെടുത്തുകയാണെങ്കില്‍, ശരിയായ കാര്യം ഒന്നും ചെയ്യാതിരിക്കുകയാണു് , സമൂഹത്തിനു് ദോ‍ഷം ചെയ്യുന്നതല്ല. ജനങ്ങളെ അടിമപ്പെടുത്താന്‍ സഹായിക്കുന്നതല്ല. അതുകൊണ്ടു് സ്വതന്ത്രസോഫ്റ്റ്‌വെയറും കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയറും തമ്മിലുള്ള വ്യത്യാസം പ്രോഗ്രാമിലടങ്ങിയിരിക്കുന്നതിലല്ല അതെങ്ങനെ വിതരണംചെയ്യുന്നു എന്നതിലാണു് , എന്തെല്ലാം നിബന്ധനകളോടെയാണു് എന്നതിലാണു്. ഏതു് പ്രോഗ്രാമും സ്വതന്ത്രസോഫ്റ്റ്‌വെയറായി പുറത്തിറക്കാം. ഏതു് പ്രോഗ്രാമും കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയറായി പുറത്തിറക്കാം. ചിലപ്പോള്‍ ഒരേ മൂലരൂപംതന്നെ സമാന്തരമായി രണ്ടുവിധത്തിലും വിതരണം ചെയ്യുന്നുണ്ടു്. അതുകൊണ്ടു് ഉപയോക്താക്കള്‍ക്കു് എങ്ങനെ വിതരണംചെയ്യുന്നു എന്നതാണു് കാര്യം, അവരുടെ സ്വാതന്ത്ര്യത്തെ ബഹുമാനിച്ചുകൊണ്ടോ അതിനെ നിരാകരിച്ചുകൊണ്ടോ. പക്ഷെ കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയറിനൊപ്പം മറ്റൊരു അന്യായവുമുണ്ടു്, അതിന്റെ പേരാണു് മാല്‍വെയര്‍ (malware). ഉപയോക്താക്കളെ ദ്രോഹിക്കുന്ന വിധത്തില്‍ പ്രവര്‍ത്തിക്കാനായി രൂപകല്പന ചെയ്ത ദുഷ്ടപ്രോഗ്രാമാണു് മാല്‍വെയര്‍. അതായതു് പ്രോഗ്രാമിന്റെ കോഡ് (മൂലരൂപം) എന്തുചെയ്യുന്നു എന്നതിന്റെ പ്രശ്നം മാത്രമാണതു്. അതുകൊണ്ടു് താത്വികമായി കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയറും മാല്‍വെയറും വ്യത്യസ്ഥമാണു്. ഒന്നു്, പ്രോഗ്രാമെങ്ങനെ വിതരണംചെയ്യുന്നു എന്നതിനേക്കുറിച്ചാണു്. മറ്റേതു് പ്രോഗ്രാം എന്ത് ചെയ്യുന്നു എന്നതിനേക്കുറിച്ചും. പക്ഷെ പ്രായോഗികമായി അവ ഒരുമിച്ചു വരുന്നതായാണു് കാണുന്നതു്. അസ്വതന്ത്ര സോഫ്റ്റ്‍വെയര്‍ പലപ്പോഴും മാല്‍വെയര്‍ കൂടിയാവുന്നുണ്ടു്. ഈ പ്രോഗ്രാമുകള്‍ ചെയ്യുന്ന ദ്രോഹങ്ങളെന്തെല്ലാമാണു്? പലപ്പോഴും അവ ഉപയോക്താവിനുമേല്‍ നിരീക്ഷണം നടത്തുകയും ലഭിക്കുന്ന വിവരങ്ങള്‍ ഒരു സെര്‍വറിലേക്കു് അയയ്ക്കുകയും ചെയ്യുന്നു. ഉപയോക്താക്കള്‍ക്കു് ചെയ്യേണ്ട കാര്യങ്ങള്‍ ചെയ്യുന്നതില്‍നിന്നും അവരെ തടയാനായി അവ പലപ്പോഴും രൂപകല്പന ചെയ്തിരിക്കുന്നു. ചിലപ്പോള്‍ അവയ്ക്ക് പിന്‍വാതിലുകള്‍ കാണാറുണ്ടു്. മറ്റാരോ നല്കുന്ന ഉത്തരവനുസരിച്ചു് എന്തെങ്കിലും ചെയ്യാനായി സൃഷ്ടിച്ചിരിക്കുന്ന ദുഷ്ടകഴിവിനെയാണു് പിന്‍വാതിലെന്നു പറയുന്നതു്: അതു് ഉപയോക്താവിന്റെ അനുവാദം ചോദിക്കുന്നില്ല. ദൂരത്തിരിക്കുന്ന അധികാരി പറയുന്നതെന്തും അതു് ചെയ്യും. അടുത്തകാലത്ത് കാണുന്ന അരോചകമായ മറ്റൊരു കാര്യം സെന്‍സര്‍ഷിപ്പാണു്. കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയറില്‍ ഇതു് സാധാരണമാണു്. വാസ്തവത്തില്‍ കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയറുകളുടെ മിക്കവാറും എല്ലാ ഉപയോക്താക്കളും കുത്തകാവകാശമുള്ള ദുഷ്ടസോഫ്റ്റ്‌വെയറുകളുടെ അറിയപ്പെടുന്ന പതിപ്പുകള്‍ ഉപയോഗിക്കുന്നുണ്ടു്. ഇതു് തെളിയിക്കാനായി നിങ്ങള്‍ക്കു് ഒരു പട്ടിക തന്നാല്‍ മതിയാകും. ഈ ദുഷ്‌പ്രവൃത്തികളെല്ലാം ചെയ്യുന്ന നിങ്ങള്‍ കേട്ടിരിക്കാനിടയുള്ള ഒരു സോഫ്റ്റ്‌വെയറാണു് മൈക്രോസോഫ്റ്റ് വിന്‍ഡോസ്. അച്ചടിയില്‍ പ്രസിദ്ധീകരിച്ചുവന്നിട്ടുള്ള ദുഷ്ട പ്രവൃത്തികളുടെ കാര്യം മാത്രമാണിവിടെ പറയുന്നതു്. ഇതു് ഊഹമല്ല. ഉപയോക്താവിനെ വിന്‍ഡോസ് രഹസ്യമായി നിരീക്ഷിക്കുന്നു. ഉപയോക്താവിന്റെ പ്രവൃത്തികള്‍ പരിമിതപ്പെടുത്താനായി അതില്‍ മാര്‍ഗ്ഗങ്ങളൊരുക്കിയിട്ടുണ്ടു്. ഇവയെ ഡിജിറ്റല്‍ കൈവിലങ്ങുകളെന്നോ ഡിആര്‍എം- ഡിജിറ്റല്‍ നിയന്ത്രണ പരിപാലനം (Digital Restrictions Management) – എന്നോ വിളിക്കാം. അതിനു് അറിയപ്പെടുന്ന മൂന്നു് പിന്‍വാതിലുകളുണ്ടു്; മൊബൈലുകള്‍ക്കുള്ള പുതിയ വിന്‍ഡോസ് 8ലെ ദുഷ്‌പ്രവൃത്തിയാണു് സെന്‍സര്‍ഷിപ്. നമ്മുടെ പ്രയോഗങ്ങളുടെ (ആപ്ലിക്കേഷനുകളുടെ) സെന്‍സര്‍ഷിപ്പാണതു്. ഉപയോക്താവിനു് ഇ‍‍ഷ്ടമുള്ള പ്രയോഗങ്ങള്‍ അതില്‍ സ്ഥാപിക്കാനാവില്ല. മൈക്രോസോഫ്റ്റ് അംഗീകരിച്ച പ്രയോഗങ്ങള്‍ മാത്രമേ അതില്‍ സ്ഥാപിക്കാനാവുള്ളൂ. അതുകൊണ്ടു് വിന്‍ഡോസ് മാല്‍വെയറാണു്. പക്ഷെ അതു് ഇനിയും വഷളാണു്. പിന്‍വാതിലുകളിലൊന്നു് ആഗോളമാണു്. ആഗോളപിന്‍വാതിലെന്നാല്‍ മറ്റൊരാളിനു് സോഫ്റ്റ്‌വെയറിന്റെ മൂലരൂപം ബലമായി മാറ്റാനുള്ള സൗകര്യമൊരുക്കുന്ന ഒന്നാണു്. വിന്‍ഡോസ് പ്രവര്‍ത്തിപ്പിക്കുന്ന എന്റെ കമ്പ്യൂട്ടറിലെ പ്രോഗ്രാം മാറ്റാന്‍ മൈക്രോസോഫ്റ്റിനാകും. അതുകൊണ്ടു് അവര്‍ക്കതില്‍ എന്തുമാറ്റം വേണമെങ്കിലും വരുത്താം. ഇന്നു് വിന്‍ഡോസിലില്ലാത്ത എന്തെങ്കിലും ദുഷ്ടസാധ്യത അവര്‍ക്കു് നാളെ ബലമായി ചേര്‍ക്കാനാകും. അതുകൊണ്ടു് വിന്‍ഡോസ് ആഗോള മാല്‍വെയറാണു്. ആപ്പിളിന്റെ ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങള്‍ മാല്‍വെയറാണു്. മാക് ഓയെസ്സില്‍ ഡിജിറ്റല്‍ കൈവിലങ്ങുകളുണ്ടെന്നു മാത്രമല്ല, ഉപയോക്താക്കളുണ്ടാക്കുന്ന ഫയലുകള്‍ ആപ്പിളിന്റെ സെര്‍വറുകളിലേക്കു് അയയ്ക്കുന്നുണ്ടു് എന്നു് ഒരുവര്‍ഷംമുമ്പു് ചിലര്‍ കണ്ടുപിടിച്ചു. ഇതു് ചാരപ്രവൃത്തിയാണു്. പക്ഷെ ആപ്പിളിന്റെ ഐസാധനങ്ങളെന്ന മൊബൈല്‍ രാക്ഷസന്മാരിലെ സോഫ്റ്റ്‌വെയര്‍ ഇതിനേക്കാള്‍ വളരെ വഷളാണു്. ഐഒഎസ്സില്‍ (iOS) പല ചാരപ്രവൃത്തികളും ജനങ്ങള്‍ കണ്ടെത്തിയിട്ടുണ്ടു്. ഏതു് ഐഫോണില്‍നിന്നും ദൂരെനിന്നുതന്നെ വ്യക്തിപരമായ വിവരങ്ങള്‍ ആപ്പിളിനു് പിടിച്ചെടുക്കാന്‍ കഴിയും. അവര്‍ക്കു് തീര്‍ച്ചയായും ഡിജിറ്റല്‍ റിസ്‌ട്രിക്‌ഷന്‍സ് മാനേജ്‌മെന്റുണ്ടു് (DRM). അവര്‍ക്കൊരു പിന്‍വാതിലുണ്ടു്. പ്രയോഗങ്ങളുടെ സെന്‍സര്‍ഷിപ്പ് ആദ്യമായി ഐഫോണിലാണു് തുടങ്ങിയതു്, ഇക്കാര്യം ആപ്പിള്‍തന്നെ സമ്മതിക്കുന്നതുമാണു്. ഉപയോക്താവിനു് ഇഷ്ടമുള്ള ആപ്ലിക്കേഷനുകള്‍ സ്ഥാപിക്കാന്‍ സ്വാതന്ത്ര്യമില്ലാത്ത ഒരു പൊതുഉപയോഗ കമ്പ്യൂട്ടര്‍ ആദ്യമായാണു് അവര്‍ കച്ചവടം ചെയ്തതു്. ആപ്പിള്‍ അംഗീകരിച്ച ആപ്ലിക്കേഷനുകള്‍ മാത്രമേ അവര്‍ക്കു് അതില്‍ സ്ഥാപിക്കാനാവുമായിരുന്നുള്ളൂ. ഈ നിയന്ത്രണം ഭേദിക്കാനുള്ള മാര്‍ഗ്ഗം ഉപയോക്താക്കള്‍ കണ്ടുപിടിച്ചപ്പോള്‍ അവരതിനെ ജയില്‍ഭേദനം (jail breaking) എന്നുവിളിച്ചു. ഈ കമ്പ്യൂട്ടറുകളുടെ യഥാര്‍ത്ഥസ്വഭാവം വിളിച്ചോതുന്ന പേരാണതു്. ഉപയോക്താക്കള്‍ക്കു് തടവറയാവാനായി രൂപകല്പന ചെയ്ത കമ്പ്യൂട്ടറുകളാണവ. അതുകൊണ്ടു് ആപ്പിളിന്റെ ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റങ്ങള്‍ മാല്‍വെയറാണു്. ആന്‍ഡ്രോയ്ഡ് മാല്‍വെയറാണു്. ആന്‍ഡ്രോയ്ഡിന്റെ ഒരുപാടു് ഭാഗങ്ങള്‍ സ്വതന്ത്രസോഫ്റ്റ്‌വെയറാണു്. ചില ഭാഗങ്ങള്‍ കുത്തകാവകാശമുള്ളതും. കുത്തകാവകാശമുള്ള ഒരു ഭാഗത്തിന്റെ പേര് ഗൂഗിള്‍ പ്ലേ എന്നാണു്. ഗൂഗിളിന്റെ ആപ് സ്റ്റോറിലേക്കു് പ്രവേശിക്കാനുള്ള പ്രോഗ്രാമാണതു്. അതിനു് ആഗോളമായ ഒരു പിന്‍വാതിലുമുണ്ടു്, ഓട്ടോ അപ്ഗ്രേഡ് എന്നാണതിന്റെ പേര്. എപ്പോഴൊക്കെ ഒരു പ്രോഗ്രാമിനു് ഓട്ടോ അപ്ഗ്രേഡുണ്ടായിരിക്കുകയും ഉപയോക്താവിനു് അതു് തടയാന്‍ മാര്‍ഗമില്ലാതിരിക്കുകയും ചെയ്യുന്നുവോ അപ്പോഴെല്ലാം അതൊരു ആഗോള പിന്‍വാതിലാണു്. ഫ്ലാഷ് പ്ലേയര്‍ മാല്‍വെയറാണു്. അതിനു് ഡിജിറ്റല്‍ കൈവിലങ്ങുകളുണ്ടെന്നു മാത്രമല്ല വെബ്‌സൈറ്റുകള്‍ക്കു് സന്ദര്‍ശകരെ പിന്‍തുടരാനും തിരിച്ചറിയാനുമുള്ള സംവിധാനവുമുണ്ടു്. ഫ്ലാഷ് പ്ലെയര്‍ ഒരു രസകരമായ ഉദാഹരണമാണു് കാരണം അതു് വെറുതെ കിട്ടുന്നതാണു് എന്നാല്‍ സ്വതന്ത്രമല്ല. ഒരു പ്രോഗ്രാം പണംനല്‍കാതെ ലഭിക്കുന്നതാണു് എന്നതു് ധാര്‍മ്മികമായി പ്രസക്തമല്ല എന്നാണിതു് സൂചിപ്പിക്കുന്നതു്. അതു് വെറുമൊരു പാര്‍ശ്വവിഷയമാണു്. പ്രസക്തമായ കാര്യം പ്രോഗ്രാം സ്വതന്ത്രമാണോ കുത്തകാവകാശമുള്ളതാണോ എന്നതുമാത്രമാണു്. കുത്തകാവകാശമുള്ള ഫ്ലാഷ് പ്ലെയറിന്റെ കാര്യത്തില്‍ ഉപയോക്താക്കളോടുള്ള മോശമായ പെരുമാറ്റത്തിനു അഡോബി പണം മേടിക്കുന്നില്ല എന്നതുമാത്രമാണു് അതു് വെറുതെ ലഭിക്കുന്നതാണു് എന്നതിന്റെ അര്‍ത്ഥം. ആമസോണ്‍ 'സ്വിന്‍ഡിലി'ലുള്ള സോഫ്റ്റ്‌വെയര്‍ മാല്‍വെയറാണു്. ആമസോണിന്റെ ഇ-ബുക് റീഡറിനെക്കുറിച്ചാണു് ഞാന്‍ സംസാരിക്കുന്നതു്. 'സ്വിന്‍ഡില്‍' എന്നതു് അതിന്റെ ഔദ്യോഗിക പേരല്ല പക്ഷെ അതു് ചെയ്യുന്ന കര്‍മ്മത്തിനു് യോജിക്കുന്ന പേരാണു്. പരമ്പരാഗതമായി ലഭിച്ചിരുന്ന സ്വാതന്ത്ര്യങ്ങളില്‍നിന്നു് അതു് പുസ്തകവായനക്കാരെ കബളിപ്പിക്കുന്നു. ഉദാഹരണമായി, വാങ്ങുന്നയാളേക്കുറിച്ചു് യാതൊന്നും അറിയിക്കാതെ ഒരു പുസ്തകം പണംനല്‍കി വാങ്ങാന്‍ സാധിക്കും. ഞാന്‍ ആ രീതിയില്‍ മാത്രമേ പുസ്തകം വാങ്ങൂ. പക്ഷെ ആമസോണ്‍ പണം റൊക്കമായി സ്വീകരിക്കില്ല. ഉപയോക്താവ് ആരാണെന്നു് വെളിപ്പെടുത്താന്‍ അതു് നിര്‍ബന്ധിക്കുന്നു, അങ്ങനെ ഓരോ ഉപയോക്താവും വായിച്ച പുസ്തകങ്ങളുടെ ഒരു കൂറ്റന്‍ ഡാറ്റാബേസ് അവര്‍ക്കു നിര്‍മ്മിക്കാനായി. ഇത്തരം ഡാറ്റാബേസിന്റെ നിലനില്‍പ്പ് മനുഷ്യാവകാശങ്ങളെ അപകടപ്പെടുത്തുന്നു. അതിനെ നമുക്കു് നശിപ്പിക്കണം. അതു് നിലനില്‍ക്കാന്‍ നാമനുവദിച്ചുകൂട. പക്ഷെ വാസ്തവത്തില്‍ അതിനേക്കാള്‍ വളരെക്കൂടുതല്‍ ചാരപ്രവൃത്തി ചെയ്യുന്നുണ്ടു് സ്വിന്‍ഡില്‍. ഏതു് പുസ്തകത്തിന്റെ ഏതു് പേജാണു് ഉപയോക്താവ് വായിക്കുന്നതു് എന്നു് അതു് ആമസോണിനെ അറിയിക്കുന്നു. നിങ്ങള്‍ വായിച്ചുകഴിഞ്ഞ് പുസ്തകം മറ്റാര്‍ക്കെങ്കിലും വായിക്കാന്‍ കൊടുക്കാനുള്ള സ്വാതന്ത്ര്യത്തിന്റെ കാര്യമാണു് മറ്റൊന്നു്. അല്ലെങ്കില്‍ പല സമയങ്ങളിലായി പലര്‍ക്കും വായിക്കാന്‍ കൊടുക്കാനുള്ള സ്വാതന്ത്ര്യം. അല്ലെങ്കില്‍ പഴയ പുസ്തകങ്ങള്‍ വില്‍ക്കുന്നവര്‍ക്കു് കൊടുക്കാനുള്ള സ്വാതന്ത്ര്യം. 'സ്വിന്‍ഡിലി'ലെ സോഫ്റ്റ്‌വെയറിലുള്ള ഡിജിറ്റല്‍ കൈവിലങ്ങളുകള്‍കൊണ്ടു് ആമസോണ്‍ ഇതെല്ലാം ഇല്ലാതാക്കുന്നു. അതോടൊപ്പം അവര്‍ ഉപയോക്താക്കള്‍ക്കുമേല്‍ അടിച്ചേല്‍പ്പിക്കുന്ന ഉടമ്പടിയില്‍ സ്വകാര്യസ്വത്തിനോടുള്ള പൂര്‍ണ്ണമായ അവജ്ഞയുമുണ്ടു്. ഈ ഉടമ്പടിയില്‍ പറയുന്നതു് ഉപയോക്താവിന്റെ സ്വന്തമല്ല പുസ്തകങ്ങള്‍ എന്നാണു്. അവയെല്ലാം ആമസോണിന്റെ സ്വത്താണു്. സോവിയറ്റ് യൂണിയന്‍ പോലും ഇത്രകണ്ടു് തീവ്രവാദപരമായിരുന്നില്ല. സോവിയറ്റ് യൂണിയനില്‍ പുസ്തകങ്ങള്‍ സ്വന്തമാക്കാന്‍ ആള്‍ക്കാരെ അനുവദിച്ചിരുന്നു. എന്തായാലും. പിന്നെ, ഇഷ്ടമുള്ളിടത്തോളം കാലം പുസ്തകം കയ്യില്‍ വച്ചിരിക്കാനുള്ള സ്വാതന്ത്ര്യമുണ്ടു്. നിരീക്ഷണത്തിലൂടെ നാം മനസ്സിലാക്കിയ ഒരു പിന്‍വാതിലിലൂടെ ആമസോണ്‍ അതും റദ്ദാക്കുന്നു. ഓര്‍വെല്ലിനെ അനുസ്മരിപ്പിക്കുന്ന ഒരു പ്രവൃത്തിയിലൂടെ ഒരു പിന്‍വാതിലിന്റെ സഹായത്തോടെ 2009ല്‍ ഒരു പ്രത്യേക പുസ്തകത്തിന്റെ ആയിരക്കണക്കിനു് പ്രതികള്‍ ആമസോണ്‍ തുടച്ചുമാറ്റി. ഏതായിരുന്നു ആ പുസ്തകമെന്നോ? ജോര്‍ജ് ഓര്‍വെല്ലിന്റെ 1984! ‘Big brother is watching you’ എന്ന പ്രയോഗം നമുക്കു നല്‍കിയ പുസ്തകം തന്നെ. ഈ പ്രവര്‍ത്തിയോടു് ഒരുപാട് വിമര്‍ശനമുണ്ടാകുകയും ഇനി സര്‍ക്കാര്‍ ഉത്തരവിടാതെ ഇങ്ങനെ ചെയ്യില്ല എന്നു് ആമസോണ്‍ പ്രഖ്യാപിക്കുകയും ചെയ്യേണ്ടിവന്നു. നിങ്ങള്‍ 1984 വായിച്ചിട്ടുണ്ടെങ്കില്‍ തീരെ സമാധാനം നല്‍കുന്ന പ്രസ്താവനയേയല്ല ഇതു്. 1984 അവതരിപ്പിക്കുന്നതു്, തങ്ങള്‍ക്കിഷ്ടമില്ലാത്ത പുസ്തകങ്ങള്‍ കത്തിച്ചുകൊണ്ടു് കുറ്റകൃത്യങ്ങള്‍ തുടങ്ങിയ ഒരു സമഗ്രാധിപത്യത്തെയാണു്. അവിടെനിന്നങ്ങോട്ടു് കാര്യങ്ങള്‍ കൂടുതല്‍ വഷളാവുകയായിരുന്നു. ഈ ഉല്പന്നത്തിന്റെ ഔദ്യോഗികനാമം 'കിന്‍ഡില്‍' എന്നാണു്. 'കിന്‍ഡില്‍' എന്നാല്‍ 'തീ പിടിപ്പിക്കുക' എന്നാണു്. ഉപയോക്താക്കളുടെ പുസ്തകങ്ങള്‍ വിദൂരെ നിന്നു് കത്തിക്കുക എന്നതാണു് അതിന്റെ യഥാര്‍ത്ഥ ലക്ഷ്യം എന്ന സൂചനയായിരിക്കാം അതു് നല്‍കുന്നതു്. എന്നാല്‍ ആമസോണ്‍ പറയുന്നതു് പുസ്തകങ്ങളുടെ ഉടമസ്ഥര്‍ ഉപയോക്താക്കളല്ല എന്നാണെന്നൊരു പ്രശ്നം മാത്രം. വലിയ ഒഴികഴിവ്! വാസ്തവത്തില്‍, ആമസോണിനു് എന്തു വൃത്തികേടും കാട്ടാനായി 'സ്വിന്‍ഡിലി'ന്റെ സോഫ്റ്റ്‌വെയറില്‍ ഒരു പിന്‍വാതിലുണ്ടു്. പിന്നെ, പറഞ്ഞതുപോലെ, ആമസോണ്‍ അവരുടെ വാക്കു പാലിച്ചില്ല. അവര്‍ക്കു് തോന്നുന്നതുപോലെ വിദൂരത്തുനിന്നു് പുസ്തകങ്ങള്‍ മായ്‌ച്ചുകളയുന്ന പണി അവര്‍ വീണ്ടും തുടങ്ങി. പിന്നെ മിക്കവാറും എല്ലാ മൊബൈല്‍ ഫോണുകളുടെയും ഉദാഹരണമുണ്ടു്. ഓരോ മൊബൈല്‍ഫോണും മാറ്റാവുന്ന സോഫ്റ്റ്‌വെയറുള്ള കമ്പ്യൂട്ടറാണു്, ഒരുപക്ഷെ ഉപയോക്താവിനു് അതുചെയ്യാനായി എന്നു വരില്ല, പക്ഷെ ഒരു കമ്പനിക്കാവും. അതെ, അതു് വിദൂരത്തുനിന്നു് മാറ്റാനാവും. ആഗോള പിന്‍വാതിലോടുകൂടിയാണു് അവ നിര്‍മ്മിച്ചിരിക്കുന്നതു്. കൂടാതെ ഉപയോക്താവിനെ പിന്തുടരാനുള്ള ഉപകരണമായാണു് അതു് നിര്‍മ്മിച്ചിരിക്കുന്നതു്. അതു് എവിടെയാണെന്നു് അതിന്റെ റേഡിയോ പ്രവര്‍ത്തിക്കുമ്പോഴെല്ലാം അതിനു് പറയാന്‍ കഴിയും. വിദൂരത്തുനിന്നുള്ള നിര്‍ദ്ദേശം ലഭിക്കുമ്പോഴൊക്കെ അതു് കൃത്യമായ ജിപിഎസ് സ്ഥാനം അയയ്ക്കുമെന്നു മാത്രമല്ല ഉപയോക്താവിനു് ഇതു് തടയാനുമാവില്ല. ഈ പിന്തുടരല്‍തന്നെ മോശമാണു് പക്ഷെ അതിലെ പിന്‍വാതിലിനെ ഒരു ശ്രവണോപകരണമായി മാറ്റിയിരിക്കയാണു്. അതു് കേള്‍ക്കുന്നതെല്ലാം എല്ലാസമയത്തും പ്രക്ഷേപണം ചെയ്തുകൊണ്ടിരിക്കുകയുമാണു്. നിങ്ങള്‍ മൈക്രോഫോണിലേക്കു് സംസാരിക്കണമെന്നില്ല. മുറിയുടെ മറുഭാഗത്തുനിന്നു് സംസാരിക്കുന്നതുപോലും അതിനു് പിടിച്ചെടുത്ത് പ്രക്ഷേപണം ചെയ്യാനാകും. ഇനി ഫോണ്‍ സ്വിച്ചോഫ് ചെയ്തുകൊണ്ടു് നിങ്ങള്‍ക്കു് സ്വകാര്യത തിരിച്ചുപിടിക്കാമെന്നു് കരുതിയാല്‍ ഹഹഹ അതു് ഓഫാകുന്നതുപോലെ അഭിനയിക്കും. പക്ഷെ വാസ്തവത്തില്‍ അതു് ശ്രവിച്ചുകൊണ്ടിരിക്കും പ്രക്ഷേപണം ചെയ്തുകൊണ്ടും. ഇതു് ബാറ്ററി വേഗം തീരാന്‍ കാരണമാകും അതുകൊണ്ടു് കുറേക്കൂടി പുരോഗമിച്ച ഒരു പതിപ്പ് എന്‍എസ്എ ഉണ്ടാക്കി. അതു് ചില പ്രത്യേക പദങ്ങള്‍ക്കുവേണ്ടി ശ്രദ്ധിക്കുകയും ആ സംസാരം മാത്രം പ്രക്ഷേപണം ചെയ്യുകയും ചെയ്യുന്നു. അതിനെ കേള്‍ക്കാതാക്കാന്‍ ഒരു മാര്‍ഗമേയുള്ളൂ. അതിലെ എല്ലാ ബാറ്ററികളും മാറ്റുക – എല്ലാ ബാറ്ററികളും, പ്രകടമായി കാണുന്നതു മാത്രമല്ല. നിങ്ങള്‍ക്കു് പെട്ടെന്നു് തിരിച്ചറിയാനാകാത്തതും എടുത്തുമാറ്റാനാവാത്തതുമായ ചെറിയൊരു രണ്ടാമത്തെ ബാറ്ററി കൂടിയുണ്ടു്. കൊണ്ടുനടക്കാവുന്ന ഫോണുകളേക്കുറിച്ചുള്ള ഇക്കാര്യങ്ങള്‍ ഞാന്‍ മനസ്സിലാക്കിയപ്പോള്‍ ഇവ സ്റ്റാലിന്റെ സ്വപ്നമായിരുന്നിരിക്കണമെന്നു് ഞാന്‍ തീരുമാനിച്ചു. ഇവ മനുഷ്യാവകാശങ്ങളോടുള്ള ഒരു അപരാധമാണു്. അതുകൊണ്ടു് അത്തരമൊരെണ്ണം സ്വീകരിക്കാതിരിക്കുക എന്നതെന്റെ കടമയാണു്. അതുകൊണ്ടാണു് എനിയ്ക്ക് ഒരിക്കലും മൊബൈല്‍ഫോണ്‍ ഇല്ലാതിരുന്നതു്. അതുകൊണ്ടാണു് മൊബൈല്‍ഫോണ്‍ ‍‍ഞാന്‍ കൊണ്ടുനടക്കാത്തതു്. കാരണം വല്യേട്ടന്റെ കണ്ണില്‍ ഒരു കുത്തുകൊടുക്കുക എന്നതു് ഓരോ പൗരന്റെയും കടമയാണു്. സൗകര്യമെന്നു തോന്നിയാല്‍പ്പോലും നാം സ്വീകരിക്കാന്‍ പാടില്ലാത്ത ചില കാര്യങ്ങളുണ്ടു്. ഇവ ചില ഉദാഹരണങ്ങള്‍ മാത്രമാണു് പക്ഷെ ഞാന്‍ പറഞ്ഞുവന്നതു് തെളിയിക്കാന്‍ ഇതുമതി. കാരണം ഇവ അത്രയധികം ഉപയോഗിക്കപ്പെടുന്നതാണു്. കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയറിന്റെ ഓരോ ഉപയോക്താവും ഇവയിലേതെങ്കിലും ഉപയോഗിക്കുന്നുണ്ടാകും. അതായതു് അവരില്‍ ഏതാണ്ടു് എല്ലാവരുംതന്നെ കുത്തകാവകാശമുള്ള മാല്‍വെയറിന്റെ ഇരകളാണു്. ഈ ഉദാഹരണങ്ങളുടെയും മറ്റുള്ളവയുടെയും വിശദാംശങ്ങളറിയാന്‍ www.gnu.org/philosophy/proprietary എന്ന വെബ് പേജ് നോക്കുക. ഞാന്‍ പരാമര്‍ശിക്കാത്ത കുത്തകാവകാശമുള്ള മറ്റു പ്രോഗ്രാമുകളുടെ കാര്യമെങ്ങിനെ? അതു്, അവ മാല്‍വെയറാണോയെന്നു് മിക്കസമയത്തും നമുക്കറിയില്ല, നമുക്കു് പരിശോധിക്കാനുമാവില്ല. പക്ഷെ ഏതൊക്കെ മാല്‍വെയറാണു് ഏതൊക്കെയല്ല എന്നു നമുക്കു പറയാന്‍ പറ്റില്ല. കുത്തകാവകാശമുള്ള ഒരു പ്രത്യേക പ്രോഗ്രാം തെരഞ്ഞെടുത്തിട്ടു് അതു് മാല്‍വെയറല്ല എന്നു പറയാന്‍ നമുക്കാവില്ല, കാരണം അതു് പരിശോധിക്കാന്‍ നമുക്കു് മാര്‍ഗമില്ല. അതുകൊണ്ടു് കുത്തകാവകാശമുള്ള ഒരു പ്രോഗ്രാമിനെ അന്ധമായി വിശ്വസിക്കുകയേ മാര്‍ഗമേയുള്ളൂ. ഒരു കോര്‍പ്പറേഷനും മനുഷ്യരോട് മോശമായി പെരുമാറിയിട്ടില്ല എന്നു പറയുന്ന ഒരു കോര്‍പ്പറേഷനാണു് അതുണ്ടാക്കിയതു്. മറ്റൊരുവിധത്തില്‍ പറഞ്ഞാല്‍, മണ്ടന്മാര്‍ക്കുവേണ്ടിയാണു് കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയര്‍ നിര്‍മ്മിയ്ക്കപ്പെടുന്നതു്. ഒരു പ്രോഗ്രാമിനെ വിശ്വസിക്കാനുള്ള യുക്തിപരമായ ഏക മാര്‍ഗം അതു് സ്വതന്ത്രമായിരിക്കുമ്പോള്‍ മാത്രമാണു്. കാരണം സ്വതന്ത്രമായിരിക്കുമ്പോള്‍ അതിനെ നിയന്ത്രിക്കുന്നതു് ഉപയോക്താക്കളാണു്. അവര്‍ക്കു് അതിന്റെ മൂലരൂപം പരിശോധിക്കാന്‍ കഴിയും. അതു് മാറ്റാനും കഴിയും. ചില ഉപയോക്താക്കള്‍ക്കു് നിശ്ചയമായും അതു് ചെയ്യാനറിയില്ല. പക്ഷെ അവരില്‍ ചിലര്‍ പ്രോഗ്രാമര്‍മാരാണു്. അവര്‍ ഇടയ്ക്കിടയ്ക്ക് മൂലരൂപം പരിശോധിക്കുകയും പുതിയ സാധ്യതകള്‍ ചേര്‍ക്കുകയോ തെറ്റുകള്‍ തിരുത്തുകയോ ചെയ്യാന്‍ ആഗ്രഹിക്കുന്നു. ആ പ്രക്രിയയില്‍ അവര്‍ അതിന്റെ മൂലരൂപം വായിക്കുന്നു. അതുകൊണ്ടു് ദുഷ്ടമായ എന്തെങ്കിലും ഭാഗമുണ്ടെങ്കില്‍ അതു് തിരിച്ചറിയാന്‍ സാധിക്കുന്നു. പിന്നെ തീര്‍ച്ചയായും എന്തെങ്കിലും പിശകുകളുണ്ടെങ്കില്‍ അവയും കണ്ടെത്താന്‍ സാധ്യതയുണ്ടു്. ഇവിടെ കാര്യമെന്തെന്നാല്‍ ഉപയോക്താക്കള്‍ക്കു് ഇവിടെയൊരു പ്രതിരോധമുണ്ടു്, സ്വതന്ത്ര പ്രോഗ്രാമിന്റെ ഉപയോക്താക്കള്‍ക്കു് മാല്‍വെയറിനെതിരെ ഒരു പ്രതിരോധമുണ്ടു്. അതു് പൂര്‍ണ്ണമല്ല. അതിനു് ഉറപ്പൊന്നുമില്ല. പക്ഷെ അറിയാവുന്ന ഏക പ്രതിരോധം അതാണു്. കുത്തകാവകാശമുള്ള പ്രോഗ്രാമിന്റെ ഉപയോക്താക്കള്‍ യാതൊരു പ്രതിരോധവുമില്ലാത്തവരാണു്. പ്രോഗ്രാമിന്റെ ഉടമസ്ഥരുടെ കനിവിലാണവര്‍. നിര്‍മ്മാതാക്കള്‍ക്കു് അവരേക്കൊണ്ടു് നിലം തുടയ്ക്കാം (എന്തും ചെയ്യാം). ഒരു സ്വതന്ത്ര പ്രോഗ്രാമിന്റെ ഉപയോക്താക്കള്‍ക്കു് ഒരു പ്രതിരോധമെങ്കിലുമുണ്ടു്. മാത്രമല്ല, സ്വതന്ത്ര സോഫ്റ്റ്‍വെയര്‍ വികസിപ്പിക്കുന്ന ഡെവലപ്പര്‍മാരായ നമുക്കു് അതേ പ്രലോഭനം തോന്നാറില്ല. എന്തുകൊണ്ടാണു് കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയറില്‍ ഇത്രയധികം മാല്‍വെയറുള്ളതു്? കാരണം ഈ പാവം മണ്ടന്മാരായ ഉപയോക്താക്കളുടെമേല്‍ തങ്ങള്‍ക്കു് അധികാരമുണ്ടെന്നു് കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയര്‍ വികസിപ്പിക്കുന്നവര്‍ക്കറിയാം. ഇതുപോലത്തെ ദുഷ്ടസാധ്യതകള്‍ സോഫ്റ്റ്‌വെയറിലുള്‍പ്പെടുത്തിയാല്‍ അതു് നീക്കാനോ നിര്‍ജീവമാക്കാനോ ഉപയോക്താക്കള്‍ക്കു് കഴിയില്ല എന്നവര്‍ക്കറിയാം. അവര്‍ക്കു് അധികാരമുണ്ടെന്നു് അവര്‍ക്കറിയാവുന്നതുകൊണ്ടാണു് അവര്‍ക്കു് പ്രലോഭനമുണ്ടാകുന്നതു്. ഇനി, നമുക്കു് ഉറച്ച ധാര്‍മ്മിക മൂല്യങ്ങളുള്ള പ്രലോഭനങ്ങള്‍ക്കു വഴങ്ങാത്ത ഒരുകൂട്ടം ആള്‍ക്കാരെ നമുക്കു് സങ്കല്പിക്കാവുന്നതാണു്. എന്നാല്‍ കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയറിന്റെ ലോകത്ത് ഇന്നു നാം കാണുന്നതു് അതല്ല. അവരുടെ ധാര്‍മ്മിക നിലവാരം തറയില്‍ക്കൂടി താഴോട്ടു പോയിരിക്കുന്നു. അതു് സാധാരണ പതിവായിരിക്കുന്നു. അവര്‍ പരസ്യമായി അതേപ്പറ്റി സംസാരിക്കുന്നു. അവര്‍ നടത്തുന്ന സമ്മേളനങ്ങളില്‍ ഉപയോക്താക്കളെ മണ്ടന്മാരാക്കാനുള്ള ഏറ്റവും പുതിയ മാര്‍ഗങ്ങള്‍ അവതരിപ്പിക്കുന്നു. പക്ഷെ ഞങ്ങള്‍ സ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍ വികസിപ്പിക്കുന്നവര്‍ക്കു് ആരുടെമേലും അധികാരമില്ല, അതു് ഞങ്ങള്‍ക്കു് അറിയുകയും ചെയ്യാം. ഞങ്ങള്‍ക്കു് ആ പ്രലോഭനം തോന്നാറില്ല. ഞങ്ങള്‍ക്കു് അധികാരമില്ലാത്തതുകൊണ്ടു് ഞങ്ങള്‍ അഴിമതിക്കാരാവുന്നില്ല. അതാണു് കാര്യം. ആര്‍ക്കും ആ അധികാരമുണ്ടാവാന്‍ പാടില്ല. സ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍ ഒരാള്‍ക്കു് മറ്റൊരാളിന്റെമേല്‍ അധികാരം നല്‍കുന്നില്ല. സ്വാതന്ത്ര്യത്തെ ബഹുമാനിക്കുന്നതു് എന്നാല്‍ അതാണു് അര്‍ത്ഥം. അതുകൊണ്ടു് നിങ്ങള്‍ക്കു് സങ്കല്പിക്കാം, ഒരു യുവ ഡെവലപ്പര്‍ ഉപകാരപ്രദമായ സോഫ്റ്റ്‌വെയര്‍ വികസിപ്പിക്കാന്‍ ആഗ്രഹിക്കുന്നു എന്നു വയ്ക്കുക. ആ വ്യക്തി കുത്തകാവകാശമുള്ള സോഫ്റ്റ്‌വെയര്‍ വികസിപ്പിക്കുന്നതിലേക്കു് കടന്നാല്‍ എന്തു സംഭവിക്കും? ദുഷിയ്ക്കല്‍. ദുഷിച്ചുകഴിഞ്ഞ മറ്റുള്ളവരുടെ നടുക്കു പെട്ടുകഴിയുമ്പോള്‍, ഇഷ്ടമുള്ളപോലെ ഉപയോക്താക്കളോട് മോശമായി പെരുമാറുന്നതു് സ്വാഭാവികമായ ഒരന്തരീക്ഷത്തില്‍ അവരും അതൊക്കെ സാധാരണമായി കണക്കാക്കാന്‍ തുടങ്ങും. അവരുടെ സഹപ്രവര്‍ത്തകരേപ്പോലെ അവരും ദുഷിയ്ക്കും. അതേ വ്യക്തി സ്വതന്ത്ര സോഫ്റ്റ്‌വെയറിലേക്കു് കടന്നാല്‍ വ്യത്യസ്ഥമായ പാഠമാണു് പഠിക്കുക. ഉപയോക്താക്കളോട് മോശമായി പെരുമാറരുതെന്നും അങ്ങനെ ചെയ്യാന്‍ പറ്റില്ലെന്നും മനസ്സിലാക്കിയിട്ടുള്ള മറ്റുള്ളവരുടെ നടുക്കാകുമ്പോള്‍ അവരും ഉപയോക്താക്കളോട് സത്യസന്ധമായി പെരുമാറാന്‍ പഠിക്കും. അതുകൊണ്ടു് സ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍ പ്രസ്ഥാനത്തിന്റെ ലക്ഷ്യം സൈബര്‍സ്പേസിനെയും അതിന്റെ എല്ലാ ഉപയോക്താക്കളെയും വിമോചിപ്പിക്കുക എന്നതാണു്. [ തുടരും ] മൊഴിമാറ്റം : ഡോ. വി. ശശികുമാര്‍ പരിഭാഷാ സഹായം: അനിവര്‍ എ അരവിന്ദ് പകര്‍പ്പവകാശം : ഡോ റിച്ചാര്‍ഡ് സ്റ്റാള്‍മാന്‍ (ക്രിയേറ്റിവ് കോമണ്‍സ് ആട്രിബ്യൂഷന്‍ നോ ഡെറിവേറ്റിവ്സ് - CC-BY-ND-4.0 – ലൈസന്‍സില്‍ പ്രസിദ്ധീകരിച്ചിരിക്കുന്നു ) ഉപയോഗിച്ച ചിത്രങ്ങള്‍ CC-BY-SA- 4.0 ലൈസന്‍സ് അനുസരിച്ചാണു പ്രസിദ്ധീകരിച്ചിരിയ്ക്കുന്നതു് . പകര്‍പ്പവകാശം അതാതു ചിത്രങ്ങളില്‍ സൂചിപ്പിച്ചിരിയ്ക്കുന്നു [Less]
Posted over 9 years ago by Santhosh Thottingal
മലയാളം ഫോണ്ടുകളും ചിത്രീകരണവും - ലേഖന പരമ്പരയിലെ പുതിയ ലേഖനം സന്തോഷ് തോട്ടിങ്ങല്‍ ഭാര്യ, സൂര്യന്‍, കര്‍ത്താവു് തുടങ്ങിയ വാക്കുകളൊക്കെ ര്‍ എന്നതിനു പകരം അക്ഷരങ്ങള്‍ക്കു മുകളില്‍ കുത്തക്ഷരം ഇട്ടെഴുതുന്ന ശൈലി കണ്ടിട്ടുണ്ടാവുമല്ലോ. ര അടിസ്ഥാനമായ ... [More] അക്ഷരമായതുകൊണ്ടും അക്ഷരങ്ങള്‍ക്കു മുകളില്‍ കുറിപോലെ ഇടുന്നതുകൊണ്ടും ഗോപി രേഫം എന്ന പേരിതിനുണ്ടു്. കുത്തുരേഫം എന്നും വിളിക്കാം. ഇംഗ്ലീഷില്‍ Dot Reph എന്നും പറയും. ഈ അക്ഷരം ര്‍ എന്നതിനു തുല്യമായ ഉച്ചാരണമാണെങ്കിലും യുണിക്കോഡ് സ്വന്തമായി കോഡ് പോയിന്റ് കൊടുത്തിട്ടുണ്ടു്. അതുകൊണ്ടുതന്നെ കര്‍ത്താവു്, കൎത്താവു് എന്നീ രണ്ടുവാക്കുകള്‍ ഡേറ്റയില്‍ വ്യത്യാസപ്പെട്ടിരിക്കുന്നു. ഡേറ്റയില്‍ ഈ അക്ഷരം ഉച്ചരിക്കുന്ന പോലെത്തന്നെ വ്യഞ്ജനത്തിനു തൊട്ടുമുമ്പു് വരും. അഥര്‍വ്വം എന്നതു് അഥൎവ്വം എന്ന രീതിയില്‍ എഴുതുമ്പോള്‍ ഡേറ്റയില്‍ അതു് താഴെപ്പറയുന്ന ക്രമത്തിലാണു്: അ+ഥ+ ൎ + വ + ് + വ + ം ഡേറ്റയെ അടിസ്ഥാനമാക്കി ഫോണ്ടുകള്‍ ഉപയോഗിച്ചു് ലിപിയുടെ ചിത്രീകരണം സാധ്യമാക്കുന്നതു് ഷേപ്പിങ് എഞ്ചിനുകള്‍ ആണു്. ഷേപ്പിങ് എഞ്ചിനുകള്‍ ഇതു് ഡിസ്‌പ്ലേ ചെയ്യുന്നതു് പലരീതിയില്‍ ആണ്. ഓപ്പണ്‍ടൈപ്പ് എന്ന സ്റ്റാന്‍ഡേഡ് ഇക്കാര്യത്തില്‍ ഉണ്ടെങ്കിലും പ്രായോഗികമായി ആ സ്റ്റാന്‍ഡേഡിന്റെ നടപ്പാക്കലുകള്‍ താഴെപ്പറയുന്ന കാരണങ്ങള്‍ കൊണ്ടു് വ്യത്യസ്ത രീതിയില്‍ പ്രവര്‍ത്തിച്ചേക്കാം: ഷേപ്പിങ് എഞ്ചിന്റെ ബഗ്ഗ്. കുത്തു രേഫം മലയാളത്തില്‍ കഴിഞ്ഞ കുറച്ചു വര്‍ഷത്തിനുള്ളില്‍ എന്‍കോഡ് ചെയ്യപ്പെടുകയും റെൻഡറിങ് സ്റ്റാന്‍ഡേഡില്‍ വരികയും ചെയ്തതാണു്. അതുകൊണ്ടുതന്നെ ഷേപ്പിങ് എഞ്ചിനുകളില്‍ ബഗ്ഗുകളുണ്ടാവാം ഷേപ്പിങ് എഞ്ചിന്‍ പഴയ പതിപ്പായിരിക്കുക. പഴയ ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങളാണുപയോഗിക്കുന്നെങ്കില്‍ പഴയ ഷേപ്പിങ് എഞ്ചിനായിരിക്കും. കുത്തുരേഫം എങ്ങനെ കൈകാര്യം ചെയ്യണമെന്നു് അതിനറിയില്ലായിരിക്കും. ഒരു ജനറിക് ഷേപ്പിങ്ങിലേയ്ക്ക് അതു് ഫോള്‍ബാക്ക് ചെയ്യും. സ്റ്റാന്‍ഡേർഡനുസരിക്കുന്ന പുതിയ ഷേപ്പിങ് എഞ്ചിന്‍ ഇക്കാര്യത്തില്‍ ഹാര്‍ഫ്ബസ് ആണു് സ്റ്റാന്‍ഡേഡനുസരിക്കുന്നതും പുതിയതും. ഹാര്‍ഫ്ബസ് എന്ന സ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍ ആണു്. ആന്‍ഡ്രോയിഡ്, ലിനക്സ്, ക്രോം, ഫയര്‍ഫോക്സ്, ലിബ്രെഓഫീസ്/ഓപ്പണ്‍ഓഫീസ് എന്നിവയിലൊക്കെ മലയാളം ചിത്രീകരിക്കുന്നതു് ഹാർഫ്ബസ് ഉപയോഗിച്ചാണു്. ഹാര്‍ഫ്‌ബസ് ചെയ്യുന്നതു് ഇതാണു്: ആദ്യം, ഈ റെന്‍ഡര്‍ ചെയ്യാന്‍ കിട്ടിയ കോഡ്‌പോയിന്റുകളെ പുനഃക്രമീകരിക്കും. ആ സ്റ്റെപ്പുകള്‍ താഴെക്കൊടുക്കുന്നു. Data: അ+ഥ+ ൎ + വ + ് + വ + ം Reordering: അ+ഥ+ വ + ് + വ + ൎ + ം Apply akhn feature on വ+്+വ => അ+ഥ+ വ്വ + ൎ + ം എന്തിനാണു് കുത്തു രേഫത്തിനെ വ-യ്ക്കപ്പുറം കൊണ്ടുപോയിട്ടതു് എന്നു ചോദിച്ചാല്‍ സ്റ്റാന്‍ഡേഡിലങ്ങനെയാണെന്നേ ഉത്തരമുള്ളു. ഒരു മാര്‍ക്ക് (ചിഹ്നങ്ങള്‍, പൊതുവില്‍), അതു കഴിഞ്ഞുവരുന്ന ബേസ് ഡേറ്റയെ മാറ്റം വരുത്തുന്ന രീതി ഇന്‍ഡിക് ഷേപ്പിങ്ങില്‍ കണ്ടിട്ടില്ല. സ്വരചിഹ്നങ്ങളും്യ, ്ര, ്വ, ്ല, എന്നീ ചിഹ്നങ്ങളും ബേസ് ആയ വ്യഞ്ജനങ്ങള്‍ക്കു ശേഷമാണല്ലോ ഡേറ്റയിലും ഉള്ളതു്. മാര്‍ക്കുകള്‍ ബേസിനു ശേഷം കൊണ്ടുവന്നു് പ്രൊസസ്സ് ചെയ്യുന്ന രീതിയിലേക്കു് കൊണ്ടുവരാനാണു് ഇങ്ങനെ ചെയ്യുന്നതെന്നനുമാനിക്കുന്നു. ഇപ്പോള്‍ ഇനി ചെയ്യേണ്ടതു് കുത്തക്ഷരത്തിനെ വ്വയുടെ മുകളിലേക്ക് കൊണ്ടുവരലാണു്. അതിനായി കുത്തിനെ ഇടത്തോട്ട് നീക്കണം. ബേസില്‍ നിന്നും മൈനസ് പൊസിഷനില്‍ വരച്ചാലും മതി (ഒരു ഗ്രാഫ് പേപ്പറില്‍ x<0 ആയ സ്ഥലത്തു് വരയ്ക്കുന്നതു് ഓര്‍ക്കുക). ചിത്രത്തില്‍ കാണിച്ചിരിക്കുന്ന പോലെ ഒരു നെഗറ്റീവ് ഓഫ്സെറ്റ് കൊടുത്താൽ തൊട്ടു മുന്‍പുള്ള അക്ഷരങ്ങളുടെ മുകളില്‍ കയറി നില്‍ക്കുമെങ്കിലും ഈ ഓഫ്-സെറ്റ് ഒരു നിശ്ചിത സംഖ്യ ആയതുകൊണ്ടു് പല വീതിയിലുള്ള മലയാളം അക്ഷരങ്ങളുടെ കുത്തിടേണ്ട ഭാഗത്താവില്ല കുത്തുവരുന്നതു്. ക യുടെ കൃത്യം നടുക്കു് കുത്തു കൊണ്ടുവരാന്‍ വേണ്ടി ഓഫ്‌സെറ്റ് നിശ്ചയിച്ചാല്‍ ത്തയുടെ മുകളില്‍ അതു് നടുക്കല്ല, വലത്തു ഭാഗത്താണു് വരിക. ഇതു് ഭംഗികേടാണു്. ഓരോ അക്ഷരത്തിനും കുത്തു് എവിടെ വരണമെന്നു കൃത്യമായി പറയാന്‍ കഴിയണം. പൊതുവില്‍ ഇതു് അക്ഷരങ്ങളുടെ നടുക്കു മുകള്‍ ഭാഗത്താണെങ്കിലും എല്ലായ്പോഴും ആവണമെന്നില്ല. ഈ പ്രശ്നം പരിഹരിക്കാന്‍ മീര, രചന തുടങ്ങിയവയുടെ പഴയ പതിപ്പുകളില്‍ ചെയ്തിരുന്നതു് കുത്തുരേഫമടങ്ങിയ ഗ്ളിഫുകള്‍ പ്രത്യേകം ഫോണ്ടില്‍ ചേര്‍ക്കലാണു്. അതായതു് ൎക, ൎഖ, ..ൎക്ക, ൎത്ത തുടങ്ങി എല്ലാം ചേര്‍ക്കുക. ഫോണ്ടിന്റെ വലിപ്പം കൂടുമെന്നതൊരു പ്രശ്നമാണു്. ക + ൎഎന്നതു് akhn നിയമപ്രകാരം ൎക എന്ന ലിഗേച്ചര്‍ ഉണ്ടാക്കുക എന്നതായിരുന്നു നിയമം. akhn നിയമത്തിന്റെ ഒരു ദുരുപയോഗം കൂടിയായിരുന്നു ഇതു്. എല്ലാ ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങളിലും ഇതു് പ്രവര്‍ത്തിച്ചിരുന്നു. കുറേക്കൂടി മെച്ചപ്പെട്ട ഒരു രീതി പിന്നീടു് ഞങ്ങള്‍ കൊണ്ടുവരികയുണ്ടായി. ആങ്കര്‍പോയിന്റുകള്‍ എന്ന ഒരു ആശയം ഉപയോഗിക്കലായിരുന്നു ആ വിദ്യ. പ്രത്യേകം ഗ്ളിഫുകള്‍ വരയ്ക്കാതെ തന്നെ വേണ്ടിടത്തു് കുത്തുകള്‍ കൊണ്ടുവരുന്ന വിദ്യ. 2013 ഓഗസ്റ്റില്‍ ആണു് ഇതു ചെയ്യുന്നതു്. (https://github.com/smc/Meera/commit/fac6513e11b38eb65ede11d0c7e7e8db47c04836) സബ്‌സ്റ്റിറ്റ്യൂഷന്‍ നിയമങ്ങളും പൊസിഷനിങ് നിയമങ്ങളുമാണു് ഫോണ്ടിന്റെ ലുക്കപ്പ് ടേബിളില്‍ എഴുതാന്‍ സാധിക്കുന്നതു്. ഇവിടെ നമുക്ക് വേണ്ടതു് പൊസിഷനിങ് നിയമങ്ങളനുസരിച്ചുള്ള പ്രോഗ്രാമിങ്ങാണു്. ആപേക്ഷികമായി കുത്തുരേഫം എവിടെ വയ്ക്കാം എന്ന പ്രോഗ്രാമിങ്ങ് നിര്‍ദ്ദേശങ്ങള്‍. ഗ്ളിഫുകളുടെ പൊസിഷനിങ് നിര്‍ദ്ദേശങ്ങള്‍ GPOS ടേബിളിലാണു് എഴുതുന്നതു്. GPOS നിയമങ്ങളില്‍ Above Base Mark വിഭാഗത്തിലാണു് കുത്തുരേഫത്തിന്റെ പ്രോഗ്രാമിങ്ങ് നിര്‍ദ്ദേശങ്ങള്‍ വരുന്നതു്. ആങ്കര്‍ പോയിന്റുകള്‍ ഉപയോഗിച്ചാണു് ആപേക്ഷികമായി കുത്തക്ഷരം എന്ന മാര്‍ക്ക് ക്ലാസ് ഗ്ളിഫ് എവിടെ വയ്ക്കണം എന്നു തീരുമാനിക്കുന്നതു്. ആങ്കര്‍പോയിന്റുകളെ മനസ്സിലാക്കാന്‍ കാന്തവും ഇരുമ്പും എന്ന ആശയം ഉപയോഗിക്കാം.ൎച്ചഎന്ന ഉദാഹരണമെടുക്കുക. ച്ച എന്ന ഗ്ളിഫില്‍ നമ്മള്‍ ഒരു കാന്തം ഒട്ടിച്ചുവച്ചെന്നു കരുതുക. ച്ചയുടെ മുകളില്‍ കുത്തക്ഷരം വരേണ്ട സ്ഥലത്തു തന്നെ ഇതു് ഒട്ടിച്ചെന്നു കരുതുക. കുത്തുരേഫത്തിന്റെ മുകളില്‍ ഒരു ഇരുമ്പു കഷണം ഒട്ടിച്ചെന്നും കരുതുക. ച്ചകഴിഞ്ഞ്ൎവന്നാല്‍ എന്തു സംഭവിക്കും? ഇരുമ്പു പതിച്ച കുത്തുരേഫം ച്ചയുടെ മുകളില്‍ കാന്തം വച്ചിരിക്കുന്നിടത്തേയ്ക്ക് ചാടിപ്പിടിക്കും. മീര, രചന തുടങ്ങിയ ഫോണ്ടുകളില്‍ ആയിരത്തിലധികം ഗ്ളിഫുകളുണ്ടു്. ഈ ഗ്ളിഫുകള്‍ക്കെല്ലാം ആങ്കര്‍പോയിന്റുകള്‍ ഇടണോ എന്നു ചോദിച്ചാല്‍ അങ്ങനെ ഇടുകയാണെങ്കില്‍ വളരെ നന്നായിരിക്കും എന്നാണു് ഉത്തരം. പക്ഷേ പ്രായോഗികമായി അങ്ങനെ എല്ലാ അക്ഷരങ്ങളുടെ മുകളിലും കുത്തുരേഫം വരില്ല. എന്നു മാത്രമല്ല, എല്ലാ അക്ഷരങ്ങളുടെ മുകളിലും ഈ പോയിന്റുകള്‍ മാര്‍ക്കു ചെയ്യുന്നതേ മെനക്കേടുമാണു്. ഒരു ഗ്ളിഫിന്റെ മുകളില്‍ കുത്തുരേഫത്തിന്റെ ആങ്കര്‍പോയിന്റില്ലെങ്കില്‍ എന്തു സംഭവിക്കും? ഉദാഹരണത്തിനു റ്റ എന്നതിനു നമ്മള്‍ ആങ്കര്‍പോയിന്റൊന്നും ഇട്ടില്ല. റ്റ യുടെ മുകളില്‍ കുത്തുരേഫം സാധാരണയായി കാണാറില്ല എന്ന ന്യായം വച്ചു്. പക്ഷേ ൎറ്റ എന്നു് ഒരാള്‍ എഴുതിയാല്‍ സംഭവിക്കുന്നതു് ഇതാണു്: ൎ + റ്റ എന്നതിനെ ഷേപ്പിങ് എഞ്ചിന്‍റ്റ + ൎ എന്നു മാറ്റും. ഇവ രണ്ടും അടുത്തുവന്നാല്‍ ചെയ്യേണ്ട ഒരു പൊസിഷനിങ്ങ് നിയമവും ഇല്ലാത്തതിനാല്‍ അവ അടുപ്പിച്ചടുപ്പിച്ചു വയ്ക്കും. കുത്തു രേഫത്തിനു നെഗറ്റീവ് ഓഫ്‌സെറ്റ് ആയതിനാല്‍ അതു് റ്റയുടെ മുകളിലേയ്ക്ക് കയറി നില്‍ക്കും. മെച്ചപ്പെട്ട ഒരു fallback behavior ആണെന്നു പറയാം. പക്ഷേ കഥ ഇവിടെ തീരുന്നില്ല. മുകളില്‍ പറഞ്ഞതെല്ലാം ഹാര്‍ഫ്ബസ്സിനു മാത്രമേ ബാധകമാവുന്നുള്ളൂ. ഓപ്പണ്‍ ടൈപ്പ് സ്പെസിഫിക്കേഷനില്‍ കുത്തുരേഫത്തിന്റെ കാര്യത്തില്‍ പ്രത്യേകിച്ചൊന്നും പറഞ്ഞിട്ടില്ല. മൈക്രോസോഫ്റ്റിന്റെ യുണിസ്ക്രൈബ് ചെയ്യുന്നതെന്തോ അതേ പോലെ ചെയ്യുകയാണു് ഹാര്‍ഫ്‌ബസ്സ് ചെയ്തിരിക്കുന്നതു്. പ്രായോഗികമായി താഴെപ്പറയുന്ന പ്രശ്നങ്ങള്‍ ഉണ്ടു്. ഒന്നാമതായി, കുറച്ചു മുമ്പേ പറഞ്ഞ ൎറ്റ എന്നതില്‍ സംഭവിക്കുന്ന കാര്യങ്ങള്‍ അങ്ങനെ നടക്കണമെന്നില്ല. അവിടെ ഞാന്‍ പറഞ്ഞു, ൎ, റ്റ എന്നിവയുടെ കോമ്പിനേഷനു പൊസിഷനിങ് നിയമങ്ങള്‍ ഇല്ലാത്തതിനാല്‍ അവ അടുത്തടുത്തിരുന്നു് കുത്തുരേഫം റ്റയുടെ മുകളില്‍ കയറിയിരിക്കുമെന്നു്. പക്ഷേ ഇവിടെ റ്റ ഗ്ലിഫില്‍ ആങ്കര്‍പോയിന്റൊന്നും ഇല്ലെങ്കിലും, കുത്തുരേഫത്തിന്റെ ഗ്ളിഫില്‍ ആങ്കര്‍ പോയിന്റുണ്ടല്ലോ. കാന്തവും ഇരുമ്പും ഉദാഹരണം എടുക്കുകയാണെങ്കില്‍ ഇവിടെ കാന്തം ഇല്ല. പക്ഷേ ഇരുമ്പുണ്ടു്. കാന്തമില്ലാതെ ഇരുമ്പെങ്ങോട്ടും പോവില്ല. പക്ഷേ ആപ്പിളിന്റെ റെൻഡറിങ് എഞ്ചിനുകള്‍ കാന്തമില്ലെങ്കില്‍, കാന്തം 0 പൊസിഷനില്‍ ഉണ്ടെന്നു വയ്ക്കും. അതായതു് റ്റയുടെ കാര്യത്തില്‍ റ്റയുടെ ഇടത്തേ അറ്റത്തു് മുകളില്‍ കുത്തുരേഫം കൊണ്ടുപോയി ഇടും. രണ്ടാമതായി, ൎ + റ്റ എന്നതു് റ്റ+ ൎ എന്ന ക്രമത്തിലാക്കിയാണു് റെൻഡറിങ് എന്നു പറഞ്ഞു. അങ്ങനെ ചെയ്യാന്‍ ഷേപ്പിങ് എഞ്ചിനു മനസ്സില്ലെങ്കിലോ? ആപ്പിളിന്റെ ഷേപ്പിങ് എഞ്ചിനങ്ങനെ ചെയ്യാന്‍ മനസ്സില്ല. അപ്പോള്‍ [കുത്തുരേഫം][റ്റ] എന്നിങ്ങനെ അടുത്തുവെയ്ക്കും. കുത്തുരേഫത്തിനു നെഗറ്റീവ് ഓഫ്സെറ്റ് ഉള്ളതിനാല്‍ അതു് വീണ്ടും ഇടത്തോട്ട് ചാടി അതിന്റെ ഇടത്തുള്ള അക്ഷരത്തിന്റെ മുകളില്‍ പോയി കിടക്കും. കെ.ഡി.ഇ യില്‍ ഉപയോഗിക്കുന്ന Qt യുടെ (ക്യൂട്ട് എന്നാണു് വായിക്കേണ്ടതു്) ഷേപ്പിങ് എഞ്ചിനും മുകളില്‍ പറഞ്ഞ പണി ഒപ്പിക്കും. Qt 5.0 മുതല്‍ അതു് ഹാര്‍ഫ്‌ബസ്സ് ഉപയോഗിക്കുന്നതിനാല്‍ ഈ പ്രശ്നം ഉണ്ടാവില്ല. എങ്കിലും, ഏറ്റവും പുതിയ ഓപ്പറേറ്റിങ് സിസ്റ്റം മാത്രമല്ലല്ലോ ആളുകള്‍ ഉപയോഗിക്കുക. ഗൂഗിളിന്റെ നോട്ടോ സാന്‍സ് മലയാളം ഫോണ്ടു് മുകളില്‍ പറഞ്ഞ പ്രശ്നങ്ങളെ എല്ലാം കൈകാര്യം ചെയ്യുന്നതു് താഴെപ്പറയുന്ന രീതിലാണു്: കുത്തുരേഫം പോസിറ്റീവ് സ്പേസില്‍ തന്നെ വരയ്ക്കുക ഫോണ്ടിലുള്ള സകല ഗ്ളിഫുകള്‍ക്കും ആങ്കര്‍പോയിന്റ് വരയ്ക്കുക. നോട്ടോ സാന്‍സ് പുതിയ ലിപി ഫോണ്ടായതുകൊണ്ടു് കുറച്ചു ഗ്ളിഫുകളേ ഉള്ളു. 319 എണ്ണം. ഈ രണ്ടുകാര്യങ്ങള്‍ ചെയ്യുന്നതുകൊണ്ടു് കുത്തക്ഷരത്തിന്റെ ക്രമം മാറുമോ ഇല്ലയോ എന്നതു് നോട്ടോസാന്‍സ് മലയാളത്തിനു പ്രശ്നമല്ല. ഈ രീതി മീര, രചന തുടങ്ങിയ നമ്മുടെ ഫോണ്ടുകളിലും ചെയ്യേണ്ടിവരുമെന്നു തോന്നുന്നു, എല്ലാ ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റങ്ങളിലും കുത്തക്ഷരം നേരെ കാണാന്‍. ഇവിടെയും കുത്തക്ഷരത്തിന്റെ കഥ തീരുന്നില്ല. ൎത്തോ - എന്നതില്‍ എന്തു സംഭവിയ്കുന്നുവെന്നു നോക്കുക. ൎത്തോ = ൎ + ത + ് + ത + ോ = ൎ + ത + ് + ത + േ + ാ (Normalization- canonical decomposition) = ൎ + ത്ത + േ + ാ (akhn ) = േ + ത്ത + ൎ ‌+ ാ (reordering) = േ + ൎത്ത‌+ ാ = ൎത്തോ ഇവിടെ ഫൈനല്‍ റെൻഡറിങ് ശരിയാണു്. പക്ഷേ വൎത്തുളം, അൎജ്ജുനന്‍, നിൎഗ്ഗുണം തുടങ്ങിയ വാക്കുകള്‍ നോക്കുക. കുത്തുരേഫത്തോടൊപ്പം സ്വര ചിഹ്നങ്ങള്‍ കൂടി വരുന്നുണ്ടവയില്‍. ആ സ്വരചിഹ്നങ്ങളാവട്ടെ, അടിസ്ഥാനാക്ഷരത്തെ മാറ്റുന്നുമുണ്ടു്. ൎത്തു എന്നതു് ൎ + ത + ് + ത + ു ആണു്. ഇതില്‍ ത + ് + ത എന്നതു് akhn നിയമമനുസരിച്ചു് ആദ്യമേ ത്ത ആയി മാറും. അപ്പോള്‍ നമുക്ക് ൎ + ത്ത + ു എന്ന ശ്രേണി കിട്ടി. ഇനിയാണ് റീഓര്‍ഡറിങ്ങ് നടക്കുന്നതു് (നടക്കുമെങ്കില്‍). ത്ത+ ൎ + ു എന്നു വരും. ആദ്യത്തെ രണ്ടെണ്ണമെടുത്തു് ൎത്ത എന്നാക്കി മാറുമ്പോള്‍, ൎത്ത + ു ബാക്കിയായി. ത്ത+ ു = ത്തു എന്ന നിയമം അറിയാമെങ്കിലും കുത്തക്ഷരത്തോടു കൂടിയ ൎത്ത യ്ക്ക് ഉകാരം ചേര്‍ന്നാല്‍ എന്തു ചെയ്യണമെന്നു പിടിയില്ലാത്തതിനാല്‍ ൎത്ത‌ു എന്ന റെന്‍ഡറിങ്ങിലേക്ക് എത്തിച്ചേരുന്നു. അങ്ങനെ പഴയ ലിപി ഫോണ്ടു് ഉകാരം വേര്‍പെട്ട പുതിയ ലിപി ഫോണ്ടു് ആയിത്തീരുന്നു! ഷേപ്പിങ് എഞ്ചിന്‍ അതിന്റെ ഉള്ളില്‍ ചെയ്യുന്നതെന്തു് എന്നു മനസ്സിലായില്ലെങ്കില്‍ ഈ വക പ്രശ്നങ്ങള്‍ പരിഹരിക്കാന്‍ പറ്റില്ല. ഹാര്‍ഫ്‌ബസ്സ് വളരെ സങ്കീര്‍ണമായ ഷേപ്പിങ്ങ് എഞ്ചിനാണു്. അതു് ഫോണ്ടുകള്‍ ഡീബഗ്ഗ് ചെയ്യാന്‍ പ്രത്യേകം ഒരു സഹായവും ചെയ്യുന്നില്ല. ആകെയുള്ളതു് ഹാര്‍ഫ്ബസ്സിന്റെ കൂടെ വരുന്ന hb-shape എന്ന യൂട്ടിലിറ്റിയാണു്. അതുപയോഗിച്ച് ഫൈനല്‍ റെന്‍ഡറിങ്ങിനു് ഏതൊക്കെ ഗ്ളിഫുകളാണു് ഉപയോഗിച്ചതെന്നു മനസ്സിലാക്കാം ഈ ചിത്രം പറയുന്നതിതാണു്. ൎജ്ജു എന്നു റെന്‍ഡര്‍ ചെയ്യാന്‍ , ജ്ജ 0 മുതല്‍ 2753 പോയിന്റുവരെ സ്ഥലമെടുത്തു. അതിനു ശേഷം കുത്തുരേഫമാണു് എടുത്തതു്. ഓര്‍ക്കുക, ഇവിടെ ഉകാരമായിരുന്നു നമുക്ക് വേണ്ടിയിരുന്നതു്.കുത്തുരേഫം നെഗറ്റീവ് 723 പോയിന്റ് ഒന്നാമത്തെ ഗ്ളിഫിനുമുകളില്‍ കയറ്റിവച്ചു. പിന്നെ വെറുതെ ഉകാരചിഹ്നം ഇട്ടു. അതിനു് 639 പോയിന്റെടുത്തു. 2013 സെപ്റ്റംബറില്‍ സുരേഷ് സുറുമ, രജീഷ് എന്നിവര്‍ ഈ പ്രശ്നം ഹാര്‍ഫ്‌ബസ്സ് മെയിലിങ്ങ് ലിസ്റ്റില്‍ ഉന്നയിച്ചു. അവിടെ നിന്നു കിട്ടിയ നിര്‍ദ്ദേശങ്ങളുടെ അടിസ്ഥാനത്തില്‍ മാര്‍ക്ക് ക്ലാസ് എന്ന ഒരാശയത്തിന്റെ പുറത്തു് ഇതു് പരിഹരിച്ചു. അതു് താഴെ വിശദമാക്കുന്നു. മാര്‍ക്ക് ക്ലാസുകള്‍ ചിത്രീകരണ നിയമങ്ങളെ സംബന്ധിച്ചുള്ള ചില നിബന്ധനകള്‍ പറയാനുള്ള മാര്‍ഗമാണു്. കുറച്ചു ഗ്ലിഫുകളുടെ ഒരു കൂട്ടമാണു് മാര്‍ക്ക് ക്ലാസ്. ഈ ഗ്ലിഫുകളെല്ലാം മാര്‍ക്ക് ടൈപ്പാവുകയും ചെയ്യും. മലയാളത്തിനെ സംബന്ധിച്ചിടത്തോളം സ്വര ചിഹ്നങ്ങള്‍, ചന്ദ്രക്കല, കുത്തുരേഫം എന്നിവ മാര്‍ക്ക് ടൈപ്പ് ആണു്. ഒരു ചിത്രീകരണ നിര്‍ദ്ദേശത്തിന്റെ കൂടെ ആ പ്രോഗ്രാമിങ്ങ് നിര്‍ദ്ദേശം നടപ്പിലാക്കുമ്പോള്‍ പരിഗണിക്കേണ്ട ഇത്തരം ഗ്ലിഫുകളെ അവയുടെ ക്ലാസിന്റെ പേരു കൊടുത്തു് അടയാളപ്പെടുത്താം. നമുക്കിവിടെ വേണ്ടതു് കുത്തുരേഫം സബ്സ്‌റ്റിറ്റ്യൂഷന്‍ നിയമങ്ങളുടെ പ്രൊസസ്സില്‍ പങ്കെടുക്കാതെ വിട്ടുനില്‍ക്കലാണു്. ത്തയുടെയും ഉകാരത്തിന്റെ ഇടയില്‍ നിന്നാലും ത്തു ഉണ്ടാവുന്നതിനു് അതു് തടസ്സമാവരുതു്. ത്ത + ു ചേര്‍ന്നു് ത്തു ഉണ്ടാകുന്ന നിയമങ്ങള്‍ psts ഗണത്തിലാണു് വരുന്നതു്. psts നടക്കുമ്പോള്‍ ഇടയില്‍ കുത്തുരേഫം വന്നാലും അതിനെ അവഗണിച്ചു് ത്തു ഉണ്ടാകണം. അതിനര്‍ത്ഥം ഈ psts ന്റെ കൂടെ കുത്തുരേഫം ഇല്ലാത്ത ഒരു മാര്‍ക്ക് ക്ലാസ് പറയണം. നമുക്കതിനെ nomark എന്ന ഒരു പേരിട്ട് നിര്‍വചിക്കാം. ഈ ക്ലാസില്‍ കുത്തുരേഫം പാടില്ല എന്നു പറഞ്ഞുകഴിഞ്ഞല്ലോ. കാരണം ഈ ക്ലാസില്‍ ഉള്ള ഗ്ലിഫുകളെ ചിത്രീകരണ നിയമത്തില്‍ പങ്കെടുപ്പിക്കും. പിന്നെ ഏതൊക്കെ ഗ്ലിഫുകളാണു് നമുക്കിതില്‍ വേണ്ടതു്? ഏതൊക്കെ മാര്‍ക്ക് ക്ലാസുകളെയാണു് psts ല്‍ നമുക്ക് പങ്കെടുപ്പിക്കേണ്ടതു്? അങ്ങനെ പ്രത്യേകിച്ചു് ഒരു ഗ്ലിഫും നമുക്കു് ആവശ്യമില്ല. അപ്പോള്‍ ഈ ക്ലാസില്‍ ഒന്നുമില്ലാതാവില്ലേ? അതെ. ഈ ക്ലാസില്‍ ഒരു ഗ്ലിഫും ഇല്ല. psts അധിഷ്ഠിത നിര്‍ദ്ദേശത്തിന്റെ നിര്‍വ്വചനത്തിന്റെ കൂടെ നമ്മള്‍ ഈ nomark എന്നു പേരുള്ള ക്ലാസ് മാര്‍ക്ക് ക്ലാസ് ആയി ചേര്‍ത്തു. അതോടുകൂടി ൎത്തു -വിന്റെ ചിത്രീകരണം ശരിയായി വരുകയും ഉകാരം വേര്‍പെട്ടു നില്‍ക്കാതെ ത്തയോടു ചേര്‍ന്നു നില്‍ക്കുകയും ചെയ്യും. ഈ ആശയം ഒന്നുകൂടി മനസ്സിലാക്കാന്‍ ഫോണ്ട് ഫോര്‍ജിന്റെ ഡോക്യുമെന്റേഷനിലുള്ള വിവരണം താഴെക്കൊടുക്കുന്നു. In many lookups it is important to be able to ignore some mark glyphs, but not others. For example when forming an arabic ligature, the vowel marks are (usually) irrelevant to the ligature and you would want to ignore all marks. In situations where you are positioning marks on a base glyph you might in one case, want to ignore all marks that position on top of the glyph while paying attention to those underneath it. And then in another lookup, the reverse might be true. അറബിയില്‍ എഴുതുമ്പോള്‍ സ്വരചിഹ്നങ്ങള്‍ വാക്കിന്റെ എഴുത്തു തീര്‍ന്ന ശേഷം ആണു് ഇടുന്നതു്. വരയുടെ ഒഴുക്ക് സ്വരചിഹ്നങ്ങള്‍ മുറിക്കുന്നില്ല. കുത്തുരേഫവും ലിഗേച്ചര്‍ ഫോമേഷനെ ബാധിക്കരുതു് എന്നാണല്ലോ അൎജ്ജുനന്‍ എന്ന ഉദാഹരണത്തില്‍ നമ്മള്‍ കണ്ടതു്. രേഫത്തിന്റെ ചിത്രീകരണത്തിന്റെ സാങ്കേതികവശങ്ങള്‍ തത്കാലം ഇവിടെ നിര്‍ത്തുകയാണു്. ര്‍ ചില്ലിന്റെ കാര്യം മറ്റു ചില്ലക്ഷരങ്ങളുടെ കൂടെ വിശദീകരിക്കാം. മറ്റുള്ള അക്ഷരങ്ങളുടെ ചിത്രീകരണം അടുത്ത അദ്ധ്യായങ്ങളില്‍ ചര്‍ച്ച ചെയ്യാം. ഈ പരമ്പരയിലെ മുന്‍ലേഖനങ്ങള്‍ ആമുഖം മലയാളം ഫോണ്ടുകളും ചിത്രീകരണവും: ര-യുടെ ചിഹ്നങ്ങള്‍ രേഫത്തിന്റെ ചിത്രീകരണം പഴയ ആപ്ലിക്കേഷനുകളില്‍ [Less]
Posted over 9 years ago by ബാലശങ്കര്‍ സി
ഡയസ്പൊറ എന്ന സ്വതന്ത്രവികേന്ദ്രീകൃതസോഷ്യല്‍ നെറ്റ്‌വര്‍ക്കും ഡിജിറ്റല്‍ ആശയവിനിമയരംഗത്ത് സ്വകാര്യതയ്ക്കുള്ള പ്രാധാന്യവും പ്രചരിപ്പിയ്ക്കുന്നതിനായി ഡയസ്പോറ യാത്ര ജനുവരി 28നു തിരുവനന്തപുരത്തുനിന്നും തുടങ്ങുകയാണു്. ഈ സംരഭത്തിന്റെ ഔദ്യോഗിക ... [More] പങ്കാളിയാണു സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങ് . ഡയസ്പോറ യാത്രയ്ക്കു നേതൃത്വം നല്‍കുന്ന പ്രവീണ്‍ അരിമ്പ്രത്തൊടിയിലിന്റെ കുറിപ്പു് പങ്കുവെയ്ക്കുന്നു പ്രവീണ്‍ അരിമ്പ്രത്തൊടിയില്‍ ഇന്റര്‍നെറ്റ് ഇന്നു് നമുക്കു് ഒഴിച്ചുകൂടാനാവാത്തൊരു ആശയവിനിമയോപാധിയാണു്. നമ്മുടെ ജീവിതത്തിലെ പ്രധാനപ്പെട്ട പല വിവരങ്ങളും ഇന്നു് ഇന്റര്‍നെറ്റിലൂടെയാണു് പങ്കുവെയ്ക്കുന്നതു്. എന്നാല്‍ നമ്മള്‍ പങ്കുവയ്ക്കുന്ന വിവരങ്ങളെല്ലാം നമ്മള്‍ ഉദ്ദേശിക്കുന്നവര്‍ മാത്രമാണോ കാണുന്നതു്? ഫോണ്‍ സേവനത്തിനു് നമ്മള്‍ പണം മുടക്കുന്നു, ഒരു കത്തെഴുതണമെങ്കില്‍ സ്റ്റാമ്പ് ഒട്ടിക്കണം, എന്നാല്‍ ഫേസ്‌ബുക്ക്, ജിമെയില്‍, വാട്ട്സ്ആപ്പ് തുടങ്ങിയ അമേരിക്കന്‍ കമ്പനികള്‍ അവരുടെ സേവനം നമുക്കു് സൌജന്യമായി നല്‍കുന്നു. ഇവയെല്ലാം ജീവ കാരുണ്യ സംഘടനകളാണോ? എന്താണു് ഇവരുടെ വരുമാന മാര്‍ഗ്ഗം? ടിവിയിലും പത്രത്തിലും വരുന്ന പരസ്യങ്ങളില്‍ നിന്നും ഇന്റര്‍നെറ്റ് സേവനങ്ങളിലെ പരസ്യത്തിന്റെ വ്യത്യാസമെന്താണു്? നമ്മുടെ സ്വകാര്യവിവരങ്ങള്‍ നമ്മളുദ്ദേശിക്കുന്നവരുമായി മാത്രം പങ്കുവെയ്ക്കാന്‍ വഴികളുണ്ടോ? ഡയാസ്പൊറ, ജാബര്‍, ടെക്സ്റ്റ്സെക്യുവര്‍ തുടങ്ങി വികേന്ദ്രീകൃതവും സ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍ അടിസ്ഥാനമാക്കി പ്രവര്‍ത്തിക്കുന്നതുമായ സേവനങ്ങളുടെ മെച്ചങ്ങളെന്തെല്ലാം? ജിപിജി, ഓട്ടിആര്‍ തുടങ്ങിയ സംവിധാനങ്ങളുപയോഗിച്ചു് നിങ്ങള്‍ പങ്കിടുന്ന വിവരങ്ങള്‍ നിങ്ങളുദ്ദേശിക്കുന്ന ആളുകള്‍ക്കു് മാത്രം കിട്ടുന്നതാക്കുന്നതെങ്ങനെ? ഈ വിഷയങ്ങളില്‍ ഒരു തുറന്ന സംവാദവും സ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍ ഉപകരണങ്ങളുടേയും സേവനങ്ങളുടേയും പരിചയപ്പെടുത്തലും ഉള്‍പ്പെടുത്തിക്കൊണ്ട് കേരളത്തിലെ എല്ലാ ജില്ലകളില്‍ കൂടെയും ഞാന്‍ യാത്ര ചെയ്യുകയാണ്. ഞാന്‍ ഡയാസ്പൊറ പ്രചരിപ്പിക്കാന്‍ കേരളം മുഴുവനും ഒരു മാസം നീണ്ടു് നില്‍ക്കുന്ന യാത്ര ചെയ്യാനൊരുങ്ങുകയാണെന്നു് പറയുമ്പോള്‍ ചിലരെങ്കിലും ചോദ്യങ്ങളുമായി വരാറുണ്ടു്. ഡയാസ്പൊറ പ്രചരിപ്പിക്കുകയാണോ ഏറ്റവും പ്രധാനപ്പെട്ട കാര്യം അതിലും പ്രധാനപ്പെട്ട എത്രയോ കാര്യങ്ങളില്ലേ? എനിക്കു് പെട്ടെന്നു് ദേഷ്യം വരുന്നൊരു ചോദ്യമാണിതു്. ഇതൊരൊഴിഞ്ഞുമാറല്‍ തന്ത്രമാണു് പലപ്പോഴും. എന്തു് കാര്യം ചെയ്യാനിറങ്ങിയാലും മറ്റുള്ളവര്‍ക്കതിനേക്കാള്‍ പ്രധാനമെന്നു് തോന്നുന്ന കാര്യങ്ങള്‍ കണ്ടുപിടിക്കാനാകും. ഓരോരുത്തരും അവരവര്‍ക്കു് പ്രധാനമെന്നു് തോന്നുന്ന കാര്യങ്ങള്‍ ചെയ്യുകയും മറ്റുള്ളവരോടു് കൂടെ ചേരാന്‍ പറയുകയുമാണെങ്കില്‍ പ്രശ്നമില്ല. ഇനി എന്തുകൊണ്ടാണു് ഡയാസ്പൊറ യാത്ര പ്രധാനമെന്നെനിക്കു് തോന്നുന്നതെന്നു് പറയാം. സമൂഹത്തിലെ ഭൂരിപക്ഷ അഭിപ്രായത്തിനു് വിരുദ്ധമായ ആശയങ്ങള്‍ (dissent) ഒരു ജനാധിപത്യ സമൂഹത്തിനു് അത്യന്താപേക്ഷികമാണു്. ചരിത്രത്തിലെ ഓരോ മാറ്റവും എടുത്തു് നോക്കിയാല്‍ നമുക്കതു് ബോധ്യപ്പെടും. തൊട്ടുകൂടായ്മ, അടിമത്തം തുടങ്ങി സമൂഹത്തില്‍ നില നിന്നു് പോന്നിരുന്ന പലതിനെയും ഒരു ചെറുകൂട്ടമാണു് എതിര്‍ത്തിരുന്നതു്. അവര്‍ക്കു് ആ ആശയങ്ങള്‍ പുറത്തു് പറയാനും പ്രചരിപ്പിക്കാനും കഴിഞ്ഞില്ലായിരുന്നെങ്കില്‍ എന്തു് അവസ്ഥയിലായിരുന്നിരിക്കും നാം എത്തിപ്പെട്ടിട്ടുണ്ടാകുക. ചിന്തിക്കുവാനുള്ള സ്വാതന്ത്ര്യം (freedom of thought) ആവിഷ്കാരസ്വാതന്ത്ര്യത്തിനു് (free speech) അത്യാവശ്യമാണു്. നമ്മുടെ ഓരോ ചലനവും പ്രവൃത്തിയും നിരീക്ഷിക്കുകയും ഭൂരിപക്ഷാഭിപ്രായത്തെ എതിര്‍ക്കുന്നവരെ ശിക്ഷിക്കുകയും ചെയ്യുന്ന അവസ്ഥയില്‍ എത്ര പേര്‍ക്കു് സ്വതന്ത്രമായി ചിന്തിക്കാനാകും? സ്വകാര്യതയില്ലാതെ ചിന്തിക്കാനുള്ള സ്വാതന്ത്ര്യത്തിനു് നിലനില്‍പ്പില്ല. അങ്ങനെ വരുമ്പോള്‍ സ്വകാര്യത നമ്മുടെ ജനാധിപത്യത്തിന്റെ തന്നെ അടിത്തറയാണെന്നു് കാണാം. സ്വകാര്യത എന്ന ആശയത്തോടു് യോജിക്കുന്നുണ്ടെങ്കിലും അതിന്റെ പ്രായോഗിക തലത്തിലെ പ്രയോഗം എന്തായിരിക്കണമെന്നു് പലര്‍ക്കും അറിയില്ല. ഡയാസ്പൊറ സ്വകാര്യതയിലേക്കുള്ള ആദ്യത്തെ കാല്‍വെയ്പാണു്. കൃത്യമായി ആര്‍ക്കും സ്വീകരിക്കാവുന്ന ഒരു കാര്യമാണു്. ഡയാസ്പൊറ എന്ന ഉദാഹരണത്തിലൂടെ ഡിജിറ്റല്‍ ലോകത്തെ സ്വകാര്യതയുടെ പരിചയവും മറ്റു് വഴികള്‍ അന്വേഷിക്കാനുള്ള ഒരു ത്വര (curiosity) സൃഷ്ടിക്കാനുമുള്ള ഒരു ശ്രമമാണു് ഡയാസ്പൊറ യാത്ര. http://yatra.diasporafoundation.org വെബ്‌സൈറ്റില്‍ കൂടുതല്‍ വിവരങ്ങള്‍ ലഭ്യമാണു്. നിങ്ങള്‍ക്ക് ഈ യാത്രയുടെ ഭാഗമായി പരിപാടികള്‍ സംഘടിപ്പിയ്ക്കാന്‍ കഴിയുമെങ്കില്‍ വെബ്‌സൈറ്റിലെ കോണ്ടാക്റ്റ് ഫോം ഉപയോഗിയ്ക്കുക. [Less]
Posted over 9 years ago by Kavya Manohar
മലയാളം ഫോണ്ടുകളും ചിത്രീകരണവും - ലേഖന പരമ്പരയിലെ പുതിയ ലേഖനം കാവ്യ മനോഹര്‍, രജീഷ് നമ്പ്യാര്‍ ഓപ്പണ്‍ ടൈപ്പിന്റെ പുതിയ സ്റ്റാന്‍ഡേഡില്‍ മലയാളം സ്ക്രിപ്റ്റിന്റെ നിയമങ്ങള്‍ mlm2 എന്ന പേരിലാണ് (സ്ക്രിപ്റ്റ് ടാഗ്) നിര്‍വ്വചിച്ചിരിക്കുന്നത്. ... [More] അതനുസരിച്ച് ഉള്ള രേഫചിഹ്നത്തിന്റെ ചിത്രീകരണത്തിന്റെ കഥയാണു് കഴിഞ്ഞ അദ്ധ്യായത്തില്‍ വിശദമായി ചര്‍ച്ചചെയ്തത്. എന്നാല്‍ പഴയ ആപ്ലിക്കേഷനുകള്‍ പലതും mlm2 അനുസരിയ്ക്കുന്ന റെന്‍ഡറിങ്ങ് എഞ്ചിന്‍ ആയിരിക്കില്ല ഉപയോഗിക്കുന്നതു്, കാരണം ആ കാലഘട്ടത്തിൽ നിലവിലുള്ള പഴയ ഓപ്പൺടൈപ്പ് സ്ക്രിപ്റ്റ് ടാഗ് ആയ mlym മാത്രമേ അറിയാമായിരുന്നുള്ളൂ. പഴയ ഓപ്പണ്‍ടൈപ്പ് സ്റ്റാന്‍ഡേഡ് പിന്തുടരുന്ന അവിടെയും ശരിയായ റേന്‍ഡറിങ് സാധ്യമാക്കുവാന്‍ നമ്മുടെ ഫോണ്ടുകളില്‍ പല തന്ത്രങ്ങളും ഉപയോഗിച്ചിട്ടുണ്ടു്. ്ര എന്ന ചിഹ്നത്തെ പ്രി-ബേസ്-ഫോം ചിഹ്നമായി പഴയ സ്റ്റാന്‍ഡേഡ് പരിഗണിച്ചിരുന്നില്ല, പക്ഷേ പുതിയ സ്റ്റാന്‍ഡേഡ് അനുസരിക്കുന്ന റെൻഡറിങ് എഞ്ചിനുകള്‍ ്ര എന്ന പ്രി-ബേസ്-ഫോം ചിഹ്നത്തെ ഇടത്തുവശത്തേയ്ക്കു മാറ്റിയിട്ടു് ശരിയായ ഭാഷാനിയമം അനുസരിക്കുന്നു എന്നു കഴിഞ്ഞ അദ്ധ്യായത്തില്‍ കണ്ടുവല്ലോ. എന്നാല്‍ പഴയ സ്പെസിഫിക്കേഷന്‍ മാത്രം അനുസരിക്കുന്ന ഒരു റെന്‍ഡറിങ് എഞ്ചിനില്‍ അങ്ങനെ ഇടത്തുവശത്തേയ്ക്ക് ചിഹ്നത്തെ മാറ്റിയിടുവാനായി സംവിധാനം ഒന്നുമില്ല. എന്നു മാത്രമല്ല, വിചിത്രമായ ഒരു നിയമം കൂടി പഴയ ചില റെന്‍ഡറിങ് എഞ്ചിനുകള്‍ പാലിക്കുന്നുണ്ടായിരുന്നു. അതനുസരിച്ചു് ചന്ദ്രക്കല+ര എന്ന അക്ഷരക്കൂട്ടം കാണുമ്പോള്‍ റെന്‍ഡറിങ് എഞ്ചിന്‍ ര+ചന്ദ്രക്കല എന്നതിനെ മാറ്റിയിടണം. ഹലന്ത് ഷിഫ്റ്റിങ് (Halant shifting) എന്നാണീ പ്രൊസസ്സിങിന്റെ പേരു്. വിൻഡോസ് എക്സ്പി, പാംഗോയുടെ 2010നു മുമ്പുള്ള വേർഷൻ, ക്യൂട്ട് 3, ക്യൂട്ട് 4 എന്നിവയെല്ലാം ഇങ്ങനെ പഴയ സ്റ്റാന്‍ഡേഡ് പ്രകാരമുള്ള mlym അനുസരിച്ചു്ഹലന്ത് ഷിഫ്റ്റിങ് ചെയ്യുന്ന ഷേപിങ് എഞ്ചിനുകളാണ്. മാത്രമല്ല അവിടെ ്ര എന്ന ചിഹ്നം (ര+്) എന്ന സീക്വൻസ് പോസ്റ്റ് ബേസ് ഗ്ലിഫ് ഫോമേഷന്‍ (pstf) നിയമമനുസരിച്ചാണ് ഉണ്ടാകുന്നത്. എന്നാല്‍ mlm2 സ്റ്റാന്‍ഡേഡ് പ്രകാരം ഹലന്ത് ഷിഫ്റ്റിങ്ങ് എന്നൊരു രീതി ഇല്ല. അവിടെ ്ര ചിഹ്നം (്+ര) എന്ന സീക്വൻസ് പ്രിബേസ് ഗ്ലിഫ് ഫോമേഷന്‍ (pref) നിയമം അനുസരിച്ചാണ് രൂപമെടുക്കുന്നത്. ഹലന്ത് ഷിഫ്റ്റിങ്ങ് പ്രശ്നം പരിഹരിയ്ക്കാനായി നമ്മുടെ ഫോണ്ടുകളില്‍ ഉപയോഗിക്കുന്ന സൂത്രമാണ് അര്‍ദ്ധരൂപങ്ങള്‍ അഥവാ ഹാഫ് ഫോമുകള്‍. അതു നമുക്കു പരിചയപ്പെടാം ഓപ്പണ്‍ടൈപ്പിലെ ലിഗേച്ചര്‍ ഫോർമേഷന്‍ (അക്ഷരരൂപീകരണ) നിയമങ്ങള്‍ പലതുണ്ടു്. നേരത്തേ പറഞ്ഞ പ്രി ബേസ് ഗ്ലിഫ് ഫോർമേഷന്‍ നിയമം അതിലൊന്നാണു്. ഇവ കൂടാതെ പ്രി ബേസ് സബ്‌സ്റ്റിറ്റ്യൂഷന്‍, പോസ്റ്റ് ബേസ് സബ്സ്റ്റിറ്റ്യൂഷന്‍, ഹാഫ് ഫോം തുടങ്ങി ഒട്ടനവധി നിയമങ്ങളുണ്ടെന്നു കണ്ടല്ലോ. അങ്കഗണിതത്തില്‍ (arithmetic) പല ഗണിതക്രിയകള്‍ ഒരുമിച്ചു വരുമ്പോള്‍ ഹരണഗുണന ക്രിയകള്‍ (division and multiplication) ആദ്യവും അതിന്റെ ഫലത്തിനുമേലെ സങ്കലനവ്യവകലനങ്ങളും (addition and substraction) ചെയ്യുന്ന പോലെ, ഈ അക്ഷര രൂപീകരണ നിയമങ്ങളില്‍ ഏതാദ്യം പ്രയോഗിക്കണമെന്നതിനു വ്യക്തമായ ഒരു ക്രമമുണ്ടു്.ഈ നിയമങ്ങളുടെ ക്രമം ഇവിടെ വിശദീകരിച്ചിട്ടുണ്ട്. ക എന്ന അക്ഷരത്തിന്റെ അർദ്ധരൂപം ആണ് ക്. ക് എന്നതിന് പ്രത്യേകമായി ഗ്ലിഫ് വരയ്ക്കേണ്ട കാര്യമൊന്നും സാധാരണഗതിയില്‍ ഇല്ലാത്തതാണ്. കാരണം ക ് എന്നീ അക്ഷരങ്ങള്‍ അടുത്തു വരുമ്പോള്‍ തന്നെ അവ കൃത്യമായി റെന്‍ഡര്‍ ചെയ്യപ്പെടേണ്ടതാണ്. പക്ഷേ ഹലന്ത് ഷിഫ്റ്റിങ് നടക്കാതിരിയ്കാന്‍ ഇതു ചേര്‍ക്കുകയാണ് ഒരു പോംവഴി. അര്‍ദ്ധരൂപം ചേര്‍ക്കുക വഴി എങ്ങനെയാണ് ക്ര പഴയ റെന്‍ഡറിങ്ങ് എഞ്ചിനുകളില്‍ ശരിയായി കാണിക്കുക? യ, ര, ല, വ എന്നിവ ചന്ദ്രക്കലയോടു ചേർന്നു വരുമ്പോൾ ചന്ദ്രക്കലയെ വ്യഞ്ജനത്തിനു ശേഷം മാറ്റിയിടുന്നതാണല്ലോ ഹലന്ത് ഷിഫ്റ്റിങ് (ഉദാ:്+യ എന്നത് ഷേപിങ് എൻജിൻയ+്എന്നാക്കി മാറ്റും. കാരണം mlym സ്റ്റാൻഡേഡ് പ്രകാരം ്യ എന്ന ചിഹ്നം ഉണ്ടാക്കുന്നത് യ+് എന്ന സീക്വൻസ് വരുമ്പൊഴാണ്. അപ്പോൾ ശരിക്കും ഒരു വാക്കിൽ യ+് എന്ന സീക്വൻസ് വന്നാൽ ഷേപിങ് എൻജിൻ എന്തു ചെയ്യും? അതും ്യ എന്ന ചിഹ്നമാക്കിയാൽ പിശകാണല്ലോ - ഉദാഹരണം അയ്മനം - ഇവിടെ ഹലന്ത് ഷിഫ്റ്റിങ് നടത്തിയാൽ അ്യമനം എന്നാവും ചിത്രീകരിക്കുക, അത് ശരിയല്ല താനും. പഴയ പാംഗോ (വേർഷൻ 1.30 വരെയുള്ളവ) ടെസ്റ്റ് ചെയ്തതിൽ നിന്നും മനസ്സിലായത് ലുക്കപ്പ് നിയമങ്ങൾ അപ്ലൈ ചെയ്യുന്നതിനും മുന്നേ ഹലന്ത് ഷിഫ്റ്റിങ് നടക്കുന്നു എന്നാണ്. തുടർന്ന് ഹലന്ത് ഷിഫ്റ്റിങ് ചെയ്യപ്പെട്ട സീക്വൻസിൽ (ഉദാ: യ+്) ഹാഫ് ഫോം അപ്ലൈ ചെയ്യപ്പെടുന്നില്ല. എന്നാൽ ‘അയ്മനം’ എന്ന സീക്വൻസിൽ ഹലന്ത് ഷിഫ്റ്റിങ് നടക്കുന്നില്ല, ഇവിടെ ലുക്കപ്പ് അപ്ലൈ ചെയ്യുമ്പോൾ half ഫോം അപ്ലൈ ചെയ്യപ്പെടുന്നു. ശ്രദ്ധിക്കുക - half ഫോമിനേക്കാൾ പ്രയോരിറ്റി കൂടിയതിനാൽ അതിനു മുന്നേ അപ്ലൈ ചെയ്യപ്പെടുന്നത് akhn ഫോം ആണ്, അതുകൊണ്ടു തന്നെ യ+്+x, ര+്+x, ല+്+x, വ+്+x എന്നിവ ചേരുന്ന akhn നിയമങ്ങൾ ചേർക്കാൻ സാധിക്കില്ല. അതായത് ‘യ്മ’ എന്ന ഗ്ലിഫിന് akhn നിയമമുപയോഗിക്കാൻ സാധിക്കില്ല. പകരം തുടർന്നു വരുന്ന ഹാഫ് ഫോം അപ്ലൈ ചെയ്യപ്പെടുകയും യ് (y1xx) എന്ന ഗ്ലിഫ് രൂപീകരിക്കുകയും അതിനും ശേഷം വരുന്ന പ്രസന്റേഷൻ ഫോമായ pres ലുക്കപ്പ് അപ്ലൈ ചെയ്യപ്പെടുമ്പോൾ y1xx+m1 (യ്+മ) എന്ന നിയമമുപയോഗിച്ച് യ്മ എന്ന ഗ്ലിഫ് രൂപീകരിക്കുകയും ചെയ്യുന്നു. മലയാളം റെന്‍ഡറിങ്ങ് ചരിത്രത്തില്‍ കുപ്രസിദ്ധമായ മുഖ്യമന്ത്രി ബഗ് ഇതിനുദാഹരണമാണ്. പണ്ട് ആ വാക്ക് മുഖയ്മന്ത്രി എന്നു തെറ്റായി ചിത്രീകരിക്കപ്പെട്ടിരുന്നു. ഈ പ്രശ്നം 2006 ല്‍ സുരേഷ് പി പാംഗോയ്ക്കുള്ള ഒരു പാച്ചു തയ്യാറാക്കി പരിഹരിയ്ക്കുകയുണ്ടായി. അതനുസരിച്ചുള്ള സുറുമ ഫോണ്ടും അദ്ദേഹം പുറത്തിറക്കി. ആ പാച്ചിനെ സുറുമ പാച്ച് എന്നാണു് വിളിച്ചിരുന്നതു്. സുറുമയിട്ട പാംഗോ എന്ന പേരിലും ഞങ്ങള്‍ അക്കാലത്തെ പാംഗോയെ വിളിച്ചിരുന്നു. ആ പാച്ച് പ്രകാരം,്യഎന്നത്്+യഎന്ന് തന്നെ അക്ഷരരൂപത്തില്‍ വയ്ക്കുകയും ചന്ദ്രക്കല നീക്കുന്ന സര്‍ക്കസ് ഒഴിവാക്കുകയും ചെയ്തു. ഇതിനെപ്പറ്റി വര്‍ഷങ്ങള്‍ക്കു മുമ്പെഴുതിയ ഒരു കുറിപ്പ് കാണുക. half ലുക്കപ്പിൽ പക്ഷേ എല്ലാ വ്യഞ്ജനാക്ഷരങ്ങൾക്കും ഗ്ലിഫുകൾ ചേർത്തിട്ടുള്ളതിനാൽ (ഉദാ:k1xx ക് <= ക+്) തുടർന്നു വരുന്ന പ്രോഗ്രാമിങ്ങ് നിര്‍ദ്ദേശങ്ങളെല്ലാം ഇങ്ങനെ ഹാഫ് ഫോമിനെ അടിസ്ഥാനമാക്കി എഴുതേണ്ടി വരും. അത് ചക്രം എന്നതിന്റെ റെന്‍ഡറിങ്ങ് നടപടി പരിശോധിച്ചു മനസ്സിലാക്കാം. ച + ക + ് + ര + ം എന്നതാണല്ലോ ഡേറ്റാ സീക്വന്‍സ്. ആദ്യമായി ക + ് എന്ന അക്ഷരങ്ങള്‍ ചേര്‍ത്ത് ഹാഫ് ഫോം നിയമം അനുസരിച്ച് ക് എന്ന ഗ്ലിഫ് ആദ്യം ഉണ്ടാക്കുന്നു. ഇതിനായി ക് എന്ന ഗ്ലിഫ് ഫോണ്ടില്‍ വരച്ചു ചേര്‍ത്തിട്ടുണ്ടാകണം. മീരയിലെ ഹാഫ് ഫോം ഗ്ലിഫ് ആണ് ചിത്രം 1ല്‍. വിഘടിത ലിപി ഫോണ്ടുകളായ രഘുമലയാളത്തിലും, ഗൂഗിളിന്റെ നോട്ടോ സാന്‍സിലും ഇങ്ങനെ തന്നെ ഹാഫ് ഫോം ഗ്ലിഫുകള്‍ ചേര്‍ത്തിട്ടുണ്ട്. ഹാഫ് ഫോം ഗ്ലിഫ് ഉണ്ടായിക്കഴിഞ്ഞാല്‍ പിന്നെ അക്ഷരങ്ങളുടെ ക്രമം ച+ക്+ര+ം എന്നിങ്ങനെയാണ്. ഇനി ‘ക്+ര’ എന്ന കൂട്ടത്തെ രേഫചിഹ്നം ആക്കിമാറ്റണം. ഇതിനായി പഴയ സ്റ്റാന്‍ഡേഡില്‍ക്+ര എന്നതിനെ ക്ര എന്ന ഗ്ലിഫിലേയ്ക്ക് മാപ്പു ചെയ്തിരിക്കുന്നു. ചിത്രം 3 കാണുക. k1xx എന്നത് ക് ഗ്ലിഫിന് നല്‍കിയിരിക്കുന്ന പേരാണ്. അതിലെ ഒന്നാമത്തെ ലിഗേച്ചര്‍ പ്രോഗ്രാമിങ്ങ് നിര്‍ദ്ദേശമായി ചേര്‍ത്തിരിക്കുന്നത് ഇതാണ്. രഘുമലയാളത്തിലും ക്ര എന്നത് പ്രത്യേക ഗ്ലിഫായി വരച്ച് ഇതേ പ്രോഗ്രാമിങ്ങ് നിര്‍ദ്ദേശം തന്നെ പ്രയോഗിച്ചിരിക്കുന്നു. ചിത്രം-2 കാണുക. മേല്‍ക്കാണിച്ച സ്ക്രീന്‍ഷോട്ടുകളില്‍ ഗ്ലിഫ് എങ്ങനെ രൂപമെടുക്കുന്നുവെന്നുള്ള ലുക്കപ് ടേബിളിലെ പ്രോഗ്രാമിങ്ങ് നിര്‍ദ്ദേശങ്ങള്‍ കണ്ടുകാണുമല്ലോ. ഒരു ഗ്ലിഫിനു തന്നെ പല പ്രോഗ്രാമിങ്ങ് നിര്‍ദ്ദേശങ്ങള്‍ എഴുതിയിട്ടുള്ളതു് ശ്രദ്ധിച്ചിട്ടുണ്ടാകും. ഒന്ന് mlym എന്ന സ്റ്റാന്‍ഡേഡിനും mlm2 പുതിയ സ്റ്റാന്‍ഡേഡിനും വേണ്ടിയാണെന്നും ഇതിനകം നടന്ന ചര്‍ച്ചകളില്‍ നിന്നും വ്യക്തമായിട്ടുണ്ടാകും. mlym പ്രോഗ്രാമിങ്ങ് തന്നെ ഒന്നിലധികം ഉണ്ടെന്ന് ചിത്രം 2,3 ഇവയില്‍ നിന്നും കാണാം. ഇതിലെ ഒന്നാമത്തെ പ്രോഗ്രാമിങ്ങ് നിര്‍ദ്ദേശം എങ്ങനെ പ്രയോഗിയ്ക്കപ്പെടുന്നു എന്നാണ് നമ്മള്‍ ഇവിടെ ചര്‍ച്ച ചെയ്തത്. രണ്ടാമത് കൊടുത്ത നിര്‍ദ്ദേശം കയുടെ വലതു വശത്ത് ്ര ഗ്ലിഫ് വരുമ്പോള്‍ ക്ര എന്ന ഒറ്റ ഗ്ലിഫിലേയ്ക്ക് മാപ്പു ചെയ്യാനുള്ളതാണ്. അര്‍ദ്ധരൂപമായ ക് ചേര്‍ത്ത് mlym പ്രകാരം ക്ര ശരിയായി ചിത്രീകരിയ്ക്കുന്ന രീതി കൊണ്ടുവരുന്നതിനു മുമ്പ് ചേര്‍ത്ത നിര്‍ദ്ദേശമാണു് അത്. ഇതില്ലാതെ തന്നെ പഴയ റെന്‍ഡറിങ്ങ് എഞ്ചിനുകള്‍ ഉപയോഗിക്കുന്ന ആപ്പ്ലിക്കേഷനുകളില്‍ എല്ലാം ക്ര ശരിയായി ചിത്രീകരിക്കുവാന്‍ പറ്റുന്നുണ്ടോ എന്നു പരിശോധിച്ച് ഈ നിര്‍ദ്ദേശം വെണമെങ്കില്‍ ഒഴിവാക്കാവുന്നതേ ഉള്ളൂ. ഫോണ്ടുകളുടെ നിര്‍മ്മാണം പോലെ തന്നെ പ്രധാനപ്പെട്ടതാണു് അവയുടെ പരിപാലനമെന്നും കൂടി വ്യക്തമാക്കുന്നതാണു് മേല്‍പ്പറഞ്ഞ ഉദാഹരണം. കെഡിഇ ആപ്ലിക്കേഷനുകള്‍ ഉപയോഗിക്കുന്ന റെന്‍ഡറിങ് എഞ്ചിനാണ് ക്യൂട്ട് (Qt). ക്യൂട്ട് പുതിയ വേർഷൻ 5.3 മുതൽ ഹാർഫ്ബസ് ഉപയോഗിച്ചു ഷേപ് ചെയ്യാൻ സാധ്യമാണു്. അതുകൊണ്ടു് ഹാര്‍ഫ്ബസ്സിലും പാംഗോയിലുമൊക്കെ പ്രവര്‍ത്തിക്കുന്ന നിയമം ക്യൂട്ടിന്റെ പുതിയ വേര്‍ഷനില്‍ പ്രവര്‍ത്തിക്കുമെങ്കിലും ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങള്‍ ബണ്ടില്‍ ചെയ്യുന്ന ആപ്പ്ലിക്കേഷനുകള്‍ പഴയ ക്യൂട്ടായിരിക്കും ഉപയോഗിക്കുന്നതു്. പഴയ ക്യൂട്ട് - Qt 4.x, 3.x എന്നിവയിൽ ക്യൂട്ടിന്റെ തന്നെ ഷേപിങ് എഞ്ചിനാണു് ഉപയോഗിക്കുന്നതു്. പഴയ ഹാർഫ്ബസ്, പാംഗോ, ക്യൂട്ട് എന്നിവയെല്ലാം വെവ്വേറെ ഷേപിങ് എഞ്ചിനുകളായിരുന്നു. ഇത്തരം അവസരങ്ങളില്‍ ക്യൂട്ടിൽ ശരിയായ റെന്‍ഡറിങ്ങിനായി ചില കസ്റ്റം പാച്ചുകള്‍ നല്‍കി ക്യൂട്ടിനെ മെച്ചപ്പെടുത്തിയിട്ടുണ്ടു്. രജീഷിന്റെ ഒരു പാച്ച് ഇവിടെ. അര്‍ദ്ധരൂപങ്ങള്‍ ചേര്‍ത്തില്ലെങ്കില്‍ എന്തു സംഭവിക്കും? പലപ്പോഴും റിപ്പോര്‍ട്ട് ചെയ്തു കണ്ടിട്ടുള്ള ഒരു ബഗ്ഗാണ് ്ര ചിഹ്നം ബേസ് ഗ്ലിഫിന്റെ വലത്തുവശത്തു പോയി കിടക്കുക എന്നതു്. പഴയ സ്റ്റാന്‍ഡേഡ് മാത്രം അനുസരിക്കുന്ന ആപ്പ്ലിക്കേഷനുകളിലാണു് ഈ പ്രശ്നം കാണുക. ഇതെങ്ങനെ സംഭവിക്കുന്നു എന്നു നോക്കാം. അര്‍ദ്ധരൂപങ്ങള്‍ ചേര്‍ക്കാത്ത ചില ഫോണ്ടുകളുണ്ടു്. അവയില്‍ ഹലന്ത് ഷിഫ്റ്റിങ് നടക്കും. ഹലന്ത് ഷിഫ്റ്റിങ് നടന്നാല്‍ ്ര ചിഹ്നം രൂപമെടുക്കണമെങ്കില്‍ ഭാഷാനിയമപ്രകാരം തെറ്റായ ഗ്ലിഫ് ഫോമേഷന്‍ നിയമം ചേര്‍ക്കേണ്ടി വരും. അതായത് ‘ര+്’ എന്ന സീക്വന്‍സിനെ വേണം ്ര എന്നതിലേയ്ക്ക് മാപ്പ് ചെയ്യാന്‍. ചിത്രം-4 കാണുക. Malayalam പ്രകാരമുള്ള നിയമമല്ല Malayalam2 പ്രകാരമെന്നു കാണാം. അര്‍ദ്ധരൂപങ്ങള്‍ ചേര്‍ത്താല്‍ തന്നെ എല്ലാ അക്ഷരങ്ങള്‍ക്കും ചേര്‍ക്കുക ബുദ്ധിമുട്ടുള്ള കാര്യമാണു്. ഉദാഹരണത്തിനു് ഖ്ര എന്നത് മലയാളത്തില്‍ അത്യപൂര്‍വ്വമായ ഒരു യൂസ്‌കേസാണു്. അതിന്റെ ഹാഫ് ഫോമോ, അല്ലെങ്കില്‍ ഖ്ര എന്ന ഒറ്റഗ്ലിഫോ ഫോണ്ടില്‍ ചേര്‍ത്തിട്ടുണ്ടാവില്ല. അപ്പോള്‍ ഖ+്+ര എന്ന ഡേറ്റ സീക്വന്‍സ് കാണുന്ന ഷേപിങ് എഞ്ചിന്‍ എന്തു ചെയ്യും? ആദ്യം ഹലന്ത് ഷിഫ്റ്റിങ് നടത്തി ചന്ദ്രക്കലയുടേയും രയുടേയും സ്ഥാനം മാറ്റും. ഇനി അക്ഷരങ്ങളുടെ ക്രമം ഇങ്ങനെയാണു്: ഖ +ര +്. mlym അനുസരിച്ച് പോസ്റ്റ് ബേസ് നിയമപ്രകാരം ബോള്‍ഡായ ഗ്ലിഫുകള്‍ ചേര്‍ന്ന് ്ര ചിഹ്നമുണ്ടാകുന്നു. ഖ +്ര എന്നതാണു് ഇനി ഗ്ലിഫ് ക്രമം. പോസ്റ്റ് ബേസ് ചിഹ്നത്തെ ഗ്ലിഫിനെ ഇടത്തുവശത്തേയ്ക്കു സ്വയം മാറ്റിയിടാന്‍ ഷേപിങ് എഞ്ചിനു് അറിയില്ലല്ലോ. അങ്ങനെ ഖയുടെ വലത്തുവശത്തു രേഫചിഹ്നം നിലനിര്‍ത്തി ചിത്രീകരണം പൂര്‍ത്തിയാക്കുന്നു, അതിന്റെ ഭാഷാപരമായ ന്യൂനതയോടെ. ഉദാഹരണത്തിനു് ഈ ബഗ് റിപ്പോർട്ട് കാണുക. പഴയ അപ്പ്ലിക്കേഷനുകള്‍ ഒരു പരിധിവരെയെങ്കിലും ആളുകള്‍ ഉപയോഗിക്കുന്നതു് നിര്‍ത്തുമ്പോള്‍ മാത്രമേ ഓപ്പണ്‍ ടൈപ്പിന്റെ പുതിയ സ്റ്റാന്‍ഡേഡ് മാത്രം ഉപയോഗിക്കുന്ന ഫോണ്ടുകള്‍ ചെയ്യാനാകൂ. അതുവരെ മേല്‍പ്പറഞ്ഞ രീതിയില്‍ രണ്ടും സപ്പോര്‍ട്ട് ചെയ്യേണ്ടതുണ്ടു്. ഒട്ടും എളുപ്പമല്ലാത്ത ഒരു കാര്യമാണെന്നു ഇതില്‍ നിന്നും മനസ്സിലായിട്ടുണ്ടാവുമല്ലോ. വിശദീകരിച്ച ഓരോ സൂത്രങ്ങളും പല കാലഘട്ടങ്ങളില്‍ പലതവണയുള്ള പരിശ്രമങ്ങളുടെയും പരീക്ഷണങ്ങളുടെയും ഫലമാണു്. ഇന്നിപ്പോള്‍ 2015 ല്‍ ഇവ ലൈസന്‍സ് അനുസരിച്ച് ഇവ പകര്‍ത്തി പുതിയൊരു ഫോണ്ടില്‍ ഉപയോഗിക്കാം. സ്വതന്ത്ര ലൈസന്‍സില്‍ ഈ ഫോണ്ടുകളും ഫീച്ചറിങ്ങും ലഭ്യമാക്കിയതുകൊണ്ടാണു് ഇതു സാധ്യമാകുന്നതു്. ഫോണ്ട് ഡിസൈനര്‍മാര്‍, ഓപ്പണ്‍ടൈപ്പ് പ്രോഗ്രാമര്‍മാര്‍, റെന്‍ഡറിങ്ങ് എന്‍ജിന്‍ ഡെവലപ്പര്‍മാര്‍ തുടങ്ങിയവരുടെ ഒത്തൊരുമിച്ചുള്ള പ്രയത്നത്തിന്റെ വിജയമാണു് നമ്മളിന്നു തെറ്റില്ലാത്തെ കാണുന്ന മലയാളം ചിത്രീകരണം. രേഫത്തിന്റെ കഥകള്‍ തീരുന്നില്ല. അടുത്ത അദ്ധ്യായത്തില്‍ കുത്തക്ഷരം അല്ലെങ്കില്‍ ഗോപിരേഫം എന്നു വിളിക്കുന്ന ൎ എന്ന ചിഹ്നത്തിന്റെ ചിത്രീകരണം പരിചയപ്പെടാം. ഈ പരമ്പരയിലെ മറ്റുലേഖനങ്ങള്‍ ആമുഖം മലയാളം ഫോണ്ടുകളും ചിത്രീകരണവും: ര-യുടെ ചിഹ്നങ്ങള്‍ കാവ്യമനോഹര്‍ ഗോപിരേഫം അഥവാ കുത്തുരേഫം സന്തോഷ് തോട്ടിങ്ങല്‍ [Less]
Posted over 9 years ago by Kavya Manohar
കാവ്യ മനോഹര്‍ ആമുഖത്തില്‍ പറഞ്ഞപോലെ ഫോണ്ടുകളുടെ സാങ്കേതികവിദ്യയിലെ ചില അടിസ്ഥാന വസ്തുതകള്‍ വിശദീകരിച്ചു് ക്രമം പാലിച്ചുള്ള ലേഖന പരമ്പരയെഴുതാന്‍ ഇപ്പോള്‍ നിര്‍വാഹമില്ല. എങ്കിലും കഴിയുന്നത്ര വിശദാംശങ്ങള്‍ ഉള്‍പ്പെടുത്താന്‍ ശ്രമിക്കാം. എന്താണു് ... [More] ഫോണ്ടു്, അവയുടെ ധര്‍മമെന്തു്, ടൈപ്പിങ്ങ് ടൂളുകളും ഫോണ്ടും തമ്മില്‍ എങ്ങനെ വ്യത്യാസപ്പെട്ടിരിക്കുന്നു തുടങ്ങിയ ചില കാര്യങ്ങള്‍ വായനക്കാര്‍ക്കറിയും എന്ന ധാരണയിലാണു് ഈ ലേഖനമെഴുതിയിരിക്കുന്നതു്. അവ അറിയില്ല്ലെങ്കില്‍ അവ ഈ ലേഖന പരമ്പരയില്‍ എഴുതി വരുമ്പോള്‍ വായിക്കാവുന്നതാണു്. മലയാളത്തില്‍ സ്വരാക്ഷരങ്ങള്‍ക്കു തനിരൂപവും വ്യഞ്ജനങ്ങളോടൊട്ടുവാനായി ാ, ി, ീ, ു, ൂ, ൃ തുടങ്ങിയ ചിഹ്നങ്ങളുമുള്ളതു് എല്ലാവര്‍ക്കുമറിയാം. അതുപോലെ നാലു വ്യഞ്ജനാക്ഷരങ്ങൾക്കും ചിഹ്നങ്ങള്‍ ഉണ്ടു്. 'യ', 'ര', 'ല,' 'വ' എന്നിവയാണു് ആ അക്ഷരങ്ങള്‍. അവയുടെ ചിഹ്നങ്ങള്‍ ഉണ്ടാവുന്നതു് ചന്ദ്രക്കലയോടുകൂടി വേറൊരു വ്യഞ്ജനവുമായി ചേരുമ്പോഴാണു്. 'ക്യ', 'ക്ര', 'ക്ല', 'ക്വ' എന്നിവ യഥാക്രമത്തില്‍ ഇവയുടെ ഉദാഹരണങ്ങളാണു്. 'ര' എന്ന ഉച്ചാരണത്തെ സൂചിപ്പിക്കാനുള്ള ലിപികളെ പൊതുവില്‍ പറയുന്ന പേരാണു് രേഫം. ' ്ര', ൎ എന്നിവയാണു് രേഫത്തിന്റെ ചിഹ്നങ്ങള്‍. ഒരു വ്യഞ്ജനാക്ഷരത്തിന്റെ വലത്തുഭാഗത്തു ചന്ദ്രക്കലയിട്ടു് 'ര' ചേരുമ്പോള്‍ ' ്ര' എന്ന രേഫ ചിഹ്നം ഉപയോഗിച്ചു് അതിനെ കുറിക്കുന്നു. 'ക+്+ര->ക്ര' അതിനൊരുദാഹരണമാണു്. വ്യഞ്ജനാക്ഷരത്തിന്റെ ഇടതുഭാഗത്തു് രകാരശബ്ദം ചേരുമ്പോള്‍ അതിലെ രകാരത്തെ രണ്ടു രീതിയില്‍ കുറിക്കാം. 'ര്‍' എന്ന ചില്ലക്ഷരമായും, അല്ലെങ്കില്‍ കുത്തുരേഫ ചിഹ്നമായ 'ൎ' ഉപയോഗിച്ചും. ഉദാ: കര്‍ത്താവു്, കൎത്താവു്. ഈ ലേഖനത്തില്‍ നമ്മള്‍ പരിചയപ്പെടുന്നതു് ' ്ര' എന്ന ചിഹ്നത്തിന്റെ വ്യഞ്ജനങ്ങളോടു കൂടിയ ചിത്രീകരണത്തിന്റെ വിവിധവശങ്ങളെക്കുറിച്ചാണു്. കുത്തുരേഫത്തേക്കുറിച്ചും 'ര്‍' എന്ന ചില്ലക്ഷരത്തെക്കുറിച്ചും പിന്നീട് ചര്‍ച്ച ചെയ്യാം. 'ചന്ദ്രക്കല + ര' എന്ന ക്രമത്തിലുള്ള ഡേറ്റയാണു് ്ര' എന്ന ചിഹ്നമായി ചിത്രീകരിക്കുന്നതു്. ഈ ചിഹ്നം മലയാളത്തില്‍ രണ്ടു രീതിയില്‍ കാണപ്പെടുന്നു. കൂട്ടക്ഷരങ്ങളിലെ അക്ഷരങ്ങളും ഉകാരവും ഒക്കെ വേര്‍പെടുത്തി എഴുതുന്ന പുതിയ ലിപി എന്നോ പരിഷ്കരിച്ച ലിപി എന്നോ വിളിക്കുന്ന രീതിയിൽ ‘്ര’ എന്ന ചിഹ്നം കൂടെയുള്ള വ്യഞ്ജനാക്ഷരത്തിന്റെ അല്ലെങ്കില്‍ കൂട്ടക്ഷരത്തിന്റെ ഇടത്തുവശത്തു് വേര്‍പെട്ടു നില്‍ക്കും. അക്ഷരങ്ങളെയും സ്വരചിഹ്നങ്ങളെയും കൂട്ടി എഴുതുന്ന തനതുലിപിയെന്നും പഴയലിപിയെന്നും അറിയപ്പെടുന്ന ശൈലിയില്‍ ഇതു് അക്ഷരത്തോടൊട്ടി താഴെക്കൂടി വളഞ്ഞ് ഇടത്തുവശത്തു വന്നു കയറും. ഫോണ്ടെന്നതു് ഒരു സോഫ്റ്റ്‌വെയര്‍ പ്രോഗ്രാമാണല്ലോ. അതില്‍ അക്ഷരങ്ങളുടെ ചിത്രങ്ങളുണ്ടാകും - അടിസ്ഥാന അക്ഷരങ്ങള്‍ മുതല്‍ അവ കൂടിച്ചേര്‍ന്നുണ്ടാകുന്ന കൂട്ടക്ഷരങ്ങളും ചിഹ്നംചേര്‍ന്ന അക്ഷരങ്ങളും അടക്കമുള്ളവയുടെ ചിത്രങ്ങള്‍. ഈ ചിത്രങ്ങളെ ഗ്ലിഫ് എന്നു വിളിക്കും. താഴെയുള്ള ചിത്രം 2 കാണുക. രചന ഫോണ്ടിലെ അക്ഷരരൂപങ്ങളാണതില്‍ കാണുന്നതു്. ചിത്രങ്ങള്‍ മാത്രം പോരല്ലോ, അക്ഷരങ്ങള്‍ കൂടിച്ചേര്‍ന്ന് ഇവ ഉണ്ടാകുന്നതെങ്ങനെയെന്ന പ്രോഗ്രാമിങ്ങും ഫോണ്ടില്‍ ഉണ്ടായിരിക്കും. ഇതിനായി ഉപയോഗിക്കുന്ന നിയമങ്ങളെ ലിഗേച്ചര്‍ ഫോമേഷന്‍ നിയമങ്ങള്‍ എന്നു പറയുന്നു. ‘്ര’ എന്ന രേഫചിഹ്നം ഉണ്ടാകുന്നതു് ചന്ദ്രക്കലയും തുടര്‍ന്നു ‘ര’യും വരുമ്പോഴാണെന്നു കണ്ടല്ലോ. അതുകൊണ്ടു് ‘്+ര’ എന്ന ഡേറ്റയെ ‘്ര’ എന്ന അക്ഷരരൂപത്തിലേയ്ക്ക് മാപ്പ് ചെയ്യുന്ന ഒരു പ്രോഗ്രാമിങ് മലയാളം ഫോണ്ടിലുണ്ടാകണം. ചിഹ്നങ്ങള്‍ അക്ഷരത്തില്‍ നിന്നും വേര്‍പെടുത്തിയെഴുതുന്ന വിഘടിത എഴുത്തുശൈലിയില്‍ തൊട്ടുമുന്നിലുള്ള അക്ഷരത്തിന്റെ (ബേസ് ഗ്ലിഫിന്റെ) ഇടത്തുവശത്തേയ്ക്കാണല്ലോ ‘്ര’ എന്ന രേഫചിഹ്നം ചേരേണ്ടതു്. എന്നുവച്ചാല്‍ ബേസ് ഗ്ലിഫിന്റെ വലത്തുവശത്തുവരുന്ന ‘്+ര’ എന്ന അക്ഷരക്കൂട്ടത്തെ ‘്ര’ എന്ന ഗ്ലിഫിലേയ്ക്ക് മാപ്പു ചെയ്ത് ആ ചിഹ്നത്തെ ബേസ് ഗ്ലിഫിന്റെ ഇടതുവശത്തേയ്ക്കു മാറ്റിവയ്ക്കണം. ചിത്രം-3ല്‍ രഘുമലയാളം ഫോണ്ടിലെ '്ര' ചിഹ്നത്തിന്റെ ഗ്ലിഫ് കാണാം. അതിന്റെ ലിഗേച്ചര്‍ പ്രോഗ്രാമിങ്ങിനായി ചിത്രം-4 കാണുക. ഓപ്പണ്‍ടൈപ്പിലെ ലിഗേച്ചര്‍ ഫോമേഷന്‍ നിയമങ്ങള്‍ പലതുണ്ടു്. ബേസ് ഗ്ലിഫിന്റെ ഇടത്തുവശത്തേയ്ക്കു ചേരുന്ന ചിഹ്നമുണ്ടാക്കുന്ന നിയമത്തെ ‘പ്രീ-ബേസ്-ഫോം’ (pref) നിയമം എന്നു വിളിക്കും. ഇവ കൂടാതെ പ്രി ബേസ് സബ്‌സ്റ്റിറ്റ്യൂഷന്‍, പോസ്റ്റ് ബേസ് സബ്സ്റ്റിറ്റ്യൂഷന്‍, ഹാഫ് ഫോം തുടങ്ങി ഒട്ടനവധി നിയമങ്ങൾ വേറെയുമുണ്ടു്. മലയാളത്തിലുപയോഗിക്കുന്ന ഓപ്പണ്‍ ടൈപ്പ് നിയമങ്ങളേക്കുറിച്ചു കൂടുതലറിയാന്‍ രജീഷിന്റെ ഈ കുറിപ്പ് വായിക്കുക. ഇതിന്റെ വിശദാംശങ്ങള്‍ ഇനി വരുന്ന അദ്ധ്യായങ്ങളില്‍ പരിചയപ്പെടാം. pref നിയമപ്രകാരമുള്ള ഒരു ചിഹ്നത്തിന്റെ ഗ്ലിഫ് കാണുന്ന ഷേപ്പിങ് എഞ്ചിന്‍, ആ ചിഹ്നം അക്ഷരത്തിന്റെ ഇടത്തുവശത്തേയ്ക്കു് എടുത്തുവയ്ക്കുന്നതോടെ രേഫചിഹ്നത്തിന്റെ ചിത്രീകരണം ഒരു വിഘടിത ലിപി ഫോണ്ടില്‍ പൂര്‍ണ്ണമാകുന്നു. ഇതാണു് ഹാര്‍ഫ്ബസ്സ് പോലെയുള്ള ഒരു പുതിയ ചിത്രീകരണ എഞ്ചിന്‍ ചെയ്യുന്നതു്. ‘ചക്രം’ എന്നതു സ്ക്രീനില്‍ എങ്ങനെയാണു തെളിയുന്നതെന്നു നോക്കാം. ഇതിലടങ്ങിയിരിക്കുന്ന അടിസ്ഥാന അക്ഷരങ്ങളേന്തൊക്കെയാണ്? അടിസ്ഥാന അക്ഷരങ്ങളെന്നു് ഇവിടെ പറയുന്നതു സ്വന്തമായി യൂണിക്കോഡ് ഡേറ്റപോയിന്റ് ഉള്ള അക്ഷരങ്ങളെയാണു്. ബാക്കിയുള്ളവയൊക്കെ അടിസ്ഥാന അക്ഷരങ്ങളുടെ കൂടിച്ചേരലിലൂടെ രൂപമെടുക്കുന്ന കൂട്ടക്ഷരങ്ങളോ ചിഹ്നം ചേര്‍ന്ന കൂട്ടുരൂപങ്ങളോ ഒക്കെയായിരിക്കും. ‘ചക്ര’ത്തിന്റെ ചിത്രീകരണത്തിലേയ്ക്കു വരാം. 'ച + ക + ്+ ര + ം' എന്നതാണു് അതിലെ യൂണിക്കോഡ് അക്ഷരക്രമം. ഇതു കാണുന്ന ഷേപ്പിങ് എഞ്ചിന്‍ കടുപ്പിച്ചു കാണിച്ചിട്ടുള്ള അക്ഷരങ്ങളെ ചേര്‍ത്ത് പ്രി-ബേസ്-ഗ്ലിഫ് ഫോര്‍മേഷന്‍ (pref) നിയമപ്രകാരം ‘്ര’ എന്ന അക്ഷരം ഉണ്ടാക്കുന്നു. അതായതു് ഇപ്പോഴുള്ള അക്ഷരങ്ങള്‍ 'ച + ക + ്ര + ം' എന്നിവയാണു്. ഇതിലെ ‘്ര’ എന്ന ചിഹ്നം ഒരു പ്രി-ബേസ്-ഫോം ഗ്ലിഫ് ആണെന്നറിയാവുന്ന ഷേപ്പിങ് എഞ്ചിന്‍ അടുത്ത പടിയായി ‘്ര’ ചിഹ്നത്തെ ബേസ് ഗ്ലിഫിന്റെ ഇടതുവശത്തേയ്ക്കു് എടുത്തുവയ്ക്കുന്നു. പുതിയ അക്ഷരക്രമം ഇങ്ങനെയാണു്: 'ച + ്ര +ക+ം' . അതോടെ ‘ചക്ര’ത്തിന്റെ ചിത്രീകരണം പൂര്‍ത്തിയാകുന്നു. ഒരു പഴയലിപി ഫോണ്ടിലാകട്ടെ, ചിത്രീകരണം ഇവിടെ അവസാനിക്കുന്നില്ല. അവിടെ ഇതിലെ ‘്ര’ ചിഹ്നം അക്ഷരത്തോടൊട്ടി ഒരു പുതിയ ഗ്ലിഫ് (അക്ഷരരൂപം) തന്നെ ഉണ്ടാക്കുന്നു. അതായത് അങ്ങനെയൊരു ഫോണ്ടില്‍ ‘ക്ര’ എന്ന ചേര്‍ത്തുവരച്ച ഒരു ഗ്ലിഫ് ഉണ്ടായിരിക്കണം. മാത്രമല്ല ‘്ര’ എന്ന പ്രി-ബേസ്-ഫോം ചിഹ്നവും അക്ഷരവും ചേരുമ്പോള്‍ അവയ്ക്കു പകരം ഇതുരണ്ടുംകൂടി ചേര്‍ന്നുള്ള ഒറ്റഗ്ലിഫ് രൂപമെടുക്കുന്ന ഒരു പ്രോഗ്രാമിങ് നിര്‍ദ്ദേശം കൂടി ഉണ്ടാകണം. ഇതിനായി ഉപയോഗിക്കുന്നത് പ്രി-ബേസ്-സബ്‍സ്റ്റിറ്റ്യൂഷന്‍ (pres) നിയമമാണു്. ചിത്രം-6 കാണുക. r4 എന്നതു് ‘ ്ര’ എന്ന ഗ്ലിഫിന്റെ പേരാണു്. ഇനി അക്ഷരക്രമം ഇങ്ങനെയാണു്: 'ച + ക്ര +ം' . അതാണ് ഒരു കൂട്ടുലിപി ഫോണ്ടിലെ ‘ചക്രം’ എന്ന വാക്കിന്റെ ചിത്രീകരണം. ചിത്രം-7 കാണുക. മേല്‍ക്കാണിച്ച ലിഗേച്ചര്‍ ചിത്രങ്ങളിലെല്ലാം ഒന്നിലധികം പ്രോഗ്രാമിങ് നിര്‍ദ്ദേശങ്ങള്‍ ചേര്‍ത്തിരിക്കുന്നതു ശ്രദ്ധിച്ചുകാണുമല്ലോ. നമ്മള്‍ ഇവിടെ വിശദീകരിച്ചതാകട്ടെ, കൃത്യമായ ഒരു നിര്‍ദ്ദേശവും. പിന്നെ എന്തിനാണു് ബാക്കിയുള്ളവ? അതുപറയാം. ഇപ്പോള്‍ ചര്‍ച്ച ചെയ്തതുപോലെ ‘ക്ര’യുടെ ചിത്രീകരണം നടക്കണമെങ്കില്‍ ഓപ്പണ്‍ടൈപ്പിന്റെ സ്പെസിഫിക്കേഷന്‍ കൃത്യമായി അനുസരിക്കുന്ന പുതിയ റെന്‍ഡറിങ് എഞ്ചിന്‍ ഉണ്ടായിരിക്കണം, അതുമനസ്സിലാക്കി ശരിയായി പ്രോഗ്രാമിങ് നിര്‍ദ്ദേശങ്ങളെഴുതിയ ഫോണ്ടും ഉണ്ടാകണം. എന്നാല്‍ വ്യാപകമായി ഉപയോഗത്തിലുള്ള പഴയ ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങള്‍, ചില ആപ്പ്ലിക്കേഷനുകള്‍ ഇവയൊക്കെ ഉപയോഗിക്കുന്നതു പഴയ ഓപ്പണ്‍ടൈപ്പ് സ്പെസിഫിക്കേഷന്‍ മാത്രം പിന്തുണയ്ക്കുന്ന റെന്‍ഡറിങ് എഞ്ചിനുകളാണു്. അവയില്‍ മേല്‍പ്പറഞ്ഞപോലെ പ്രോഗ്രാമിങ് നിര്‍ദ്ദേശങ്ങളടങ്ങിയ പുതിയ ഫോണ്ടുകള്‍ ചിത്രീകരണപ്പിഴവുകള്‍ കാണിക്കും. അതുപോലെ പുതിയ ഓപ്പണ്‍ടൈപ്പ് സ്പെസിഫിക്കേഷന്‍ മാത്രം പിന്തുണയ്ക്കുന്ന റെന്‍ഡറിങ് എഞ്ചിനുകളുപയോഗിക്കുന്ന ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങള്‍, ആപ്പ്ലിക്കേഷനുകള്‍ തുടങ്ങിയവയില്‍ ഫോണ്ടുകളുടെ പഴയ പതിപ്പുകള്‍ ചിത്രീകരണപ്പിഴവുകള്‍ കാണിക്കും. പിഴവുകളില്ലാത്ത മലയാളം ചിത്രീകരണം സാദ്ധ്യമാകണമെങ്കില്‍ ഫോണ്ടിനുള്ളില്‍ പഴയതും പുതിയതുമായ ഓപണ്‍ടൈപ്പ് നിയമങ്ങള്‍ക്കനുസരിച്ചുള്ള ലിഗേച്ചര്‍ പ്രോഗ്രാമിങ് ഉണ്ടാകണം. സ്വതന്ത്ര മലയാളം കമ്പ്യൂട്ടിങ് പരിപാലിയ്ക്കുന്ന ഫോണ്ടുകള്‍ മിക്കവയും പഴയതും പുതിയതുമായ ഓപ്പണ്‍ടൈപ്പ് നിയമങ്ങള്‍ പരമാവധി പിന്തുണയ്ക്കുന്ന രീതിയില്‍ പ്രോഗ്രാം ചെയ്യപ്പെട്ടവയാണു്. കൂടുതല്‍ വിവരങ്ങള്‍ക്കു് മലയാളം ഫോണ്ടുകള്‍ പുതുക്കേണ്ടതെന്തുകൊണ്ടു് എന്ന അനിവര്‍ അരവിന്ദിന്റെ ലേഖനം കാണുക. ഭാഷാനിയമങ്ങള്‍ മാറുന്നില്ലല്ലോ, പിന്നെ ഈ ഓപ്പണ്‍ ടൈപ്പ് സ്പെസിഫിക്കേഷനുകള്‍ എങ്ങനെ കാലക്രമേണ മാറുന്നു എന്നു സംശയം തോന്നാം. കോംപ്ലക്സ് സ്ക്രിപ്റ്റ് എന്ന ഗണത്തില്‍ പെടുന്ന സങ്കീര്‍ണ്ണ ലിപിയുള്ള മലയാളമടങ്ങുന്ന പല ഇന്ത്യന്‍ ഭാഷകളുടെയും പിന്തുണയ്ക്കുവേണ്ട നിയമങ്ങള്‍ എല്ലാം കൃത്യമായി നിര്‍വചിച്ച് ഉള്‍ക്കൊള്ളിക്കുവാന്‍ ഓപ്പണ്‍ടൈപ്പ് നിയമങ്ങളുടെ ആദ്യപതിപ്പുകളില്‍ കഴിഞ്ഞിരുന്നില്ല. കാലക്രമേണ സ്റ്റാന്‍ഡേഡുകള്‍ പുതുക്കപ്പെട്ടു, മെച്ചപ്പെട്ടു. ലിഗേച്ചര്‍ നിയമങ്ങളടങ്ങുന്ന ലുക്കപ്പ് ടേബിളുകളില്‍ mlym എന്ന സ്ക്രിപ്റ്റ്ടാഗ് സൂചിപ്പിച്ചിക്കുന്നതു പഴയ ഓപ്പണ്‍ടൈപ്പ് സ്റ്റാന്‍ഡേഡഡ് പ്രകാരം മലയാളം സ്ക്രിപ്റ്റിനുള്ള നിയമങ്ങളെയാണു്; mlm2 എന്നതു മലയാളം സ്ക്രിപ്റ്റിനുള്ള പുതിയ നിയമങ്ങളേയും. ഉദാഹരണത്തിനു് ‘്ര’ എന്ന ചിഹ്നത്തെ പ്രി-ബേസ്-ഫോം ചിഹ്നമായി പഴയ സ്റ്റാന്‍ഡേഡ് പരിഗണിച്ചിരുന്നില്ല, പക്ഷേ പുതിയ സ്റ്റാന്‍ഡേഡ് അനുസരിക്കുന്ന റെൻഡറിങ് എഞ്ചിനുകള്‍ ‘്ര’ എന്ന പ്രി-ബേസ്-ഫോം ചിഹ്നത്തെ ഇടത്തുവശത്തേയ്ക്കു മാറ്റിയിട്ടു് ശരിയായ ഭാഷാനിയമം അനുസരിക്കുന്നു എന്നു നേരത്തേ കണ്ടുവല്ലോ. എന്നാല്‍ പഴയ സ്പെസിഫിക്കേഷന്‍ മാത്രം അനുസരിക്കുന്ന ഒരു റെന്‍ഡറിങ് എഞ്ചിനില്‍ അങ്ങനെ ഇടത്തുവശത്തേയ്ക്ക് ചിഹ്നത്തെ മാറ്റിയിടുവാനായി സംവിധാനം ഒന്നുമില്ല. എന്നു മാത്രമല്ല, വിചിത്രമായ ഒരു നിയമം കൂടി പഴയ ചില റെന്‍ഡറിങ് എഞ്ചിനുകള്‍ പാലിക്കുന്നുണ്ടായിരുന്നു. അതനുസരിച്ചു് ‘ചന്ദ്രക്കല+ര’ എന്ന അക്ഷരക്കൂട്ടം കാണുമ്പോള്‍ റെന്‍ഡറിങ് എഞ്ചിന്‍ ‘ര+ചന്ദ്രക്കല’ എന്നതിനെ മാറ്റിയിടണം. ഹലന്ത് ഷിഫ്റ്റിങ് (Halant shifting) എന്നാണീ നിയമത്തിന്റെ പേരു്. വിൻഡോസ് എക്സ്പി, പാംഗോയുടെ 2008നു മുമ്പുള്ള വേർഷൻ എന്നിവയെല്ലാം ഇങ്ങനെ mlym അനുസരിച്ചു് ഹലന്ത് ഷിഫ്റ്റിങ് ചെയ്യുന്ന ഷേപിങ് എൻജിനുകളാണു്. അതായത് പഴയ ഓപ്പണ്‍ടൈപ്പ് സ്റ്റാന്‍ഡേഡ് പ്രകാരം ‘ചക്രം’ ചിത്രീകരിക്കുന്നതിനുള്ള പടികള്‍ എന്തെല്ലാമാണെന്നു നോക്കാം. 'ച + ക + ്+ര + ം' എന്നതാണല്ലോ ഇതിലെ ഡേറ്റാ ക്രമം. ഷേപ്പിങ് എഞ്ചിന്‍ ഇതിനെ ആദ്യം ഹലന്ത് ഷിഫ്റ്റിങ്ങ് നിയമപ്രകാരം ഈ ക്രമം മാറ്റി 'ച + ക +ര +് + ം' എന്നാക്കി മാറ്റും. ഇതു സംഭവിച്ചാല്‍ ‘്ര’ ചിഹ്നം ഉണ്ടാകാനുള്ള ഭാഷാനിയമം തെറ്റിക്കേണ്ടി വരും. സ്റ്റാന്‍ഡേഡിലെ ഈ പ്രശ്നം മലയാളം ചിത്രീകരണത്തെ വളരെയേറെ ബാധിച്ചു. തെറ്റായ ഈ രീതിയില്‍ നിന്നും നമ്മള്‍ ഉപയോഗിക്കുന്ന ആപ്ലിക്കേഷനുകള്‍ പുതിയ നിയമം ഉപയോഗിക്കുന്ന രീതിയിലേക്കു മാറിയിട്ടു് മൂന്നോ നാലോ കൊല്ലമായിട്ടേ ഉള്ളു. അപ്പോള്‍ അതിനുമുമ്പു് ക്ര ഒക്കെ എങ്ങനെയാണു് ചിത്രീകരിച്ചിരുന്നതു്? ഇപ്പോഴും പഴയ ആപ്ലിക്കേഷനുകള്‍ ഉപയോഗിക്കുന്നവര്‍ക്കു ക്ര ഒക്കെ എങ്ങനെയാണു നേരെ കാണുന്നതു്? ഈ ചോദ്യങ്ങളുടെ ഉത്തരം സ്വതന്ത്ര മലയാളം കമ്പ്യൂട്ടിങ്ങിന്റെ 2006 മുതല്‍ക്കുള്ള ഈ രംഗത്തെ പ്രവര്‍ത്തനങ്ങളിലേയ്ക്കു കൂടി വെളിച്ചം വീശുന്നവയാണു്. അതിനെപ്പറ്റി അടുത്ത അദ്ധ്യായത്തില്‍. (ഹലന്ത് ഷിഫ്റ്റിങ് നിയമത്തിന്റെ വിശദീകരണത്തിനു് രജീഷ് കെ നമ്പ്യാരോടു കടപ്പാടു്) [Less]
Posted over 9 years ago by Santhosh Thottingal
മലയാളം ഫോണ്ടുകളുടെ സാങ്കേതികവിദ്യ സങ്കീര്‍ണ്ണമാണു്. ദക്ഷിണേഷ്യയിലെയും ദക്ഷിണ പൂര്‍വേഷ്യയിലെയും ബ്രാഹ്മി ലിപിവംശത്തില്‍ പെട്ട മിക്ക ഭാഷകളെയും പോലെ മലയാളം, ഭാഷാ സാങ്കേതിക വിദ്യയിലെ കോംപ്ലെക്സ് സ്ക്രിപ്റ്റ് എന്ന വര്‍ഗ്ഗീകരണത്തിലാണു് ഉള്‍പ്പെടുന്നതു്. ... [More] അതുകൊണ്ടു തന്നെ മലയാളത്തിന്റെ ഡിജിറ്റല്‍ ചിത്രീകരണം ഏകദേശം സ്ഥിരത കൈവരിച്ചുവരുന്നേ ഉള്ളൂ. നിത്യജീവിതത്തിലുപയോഗിക്കുന്ന കമ്പ്യൂട്ടിങ് ഉപകരണങ്ങളില്‍ തെറ്റില്ലാത്ത മലയാളം ചിത്രീകരണവും മെച്ചപ്പെട്ട ഫോണ്ടുകളും എത്താന്‍ തുടങ്ങിയിട്ടു് അധികം കാലമായിട്ടില്ല. സ്വതന്ത്ര മലയാളം കമ്പ്യൂട്ടിങ്ങിന്റെ ആദ്യ വര്‍ഷങ്ങളില്‍ വലിയൊരു പങ്കും നീക്കിവച്ചതു് സ്വതന്ത്ര ഓപ്പറേറ്റിങ് സിസ്റ്റങ്ങളില്‍ മലയാളഭാഷയുടെ ചിത്രീകരണം മെച്ചപ്പെടുത്തുന്നതിനും പൊതുവിൽ മലയാളം ഫോണ്ടുകളുടെ സാങ്കേതികാടിത്തറ മെച്ചപ്പെടുത്തുന്നതിനുമാണു്. ഈ മേഖലയില്‍ ഒട്ടും പരിചയവും പരിശീലനവുമില്ലാത്ത കുറേ കൂട്ടുകാരുടെ വലിയ പരിശ്രമം ഇതിനായി വേണ്ടിവന്നു. 2006 മുതല്‍ തന്നെ ഈ രംഗത്ത് ഊര്‍ജ്ജിതമായ ശ്രമങ്ങള്‍ നടന്നിട്ടുണ്ടു്. മിക്ക പ്രശ്നങ്ങളും പരിഹരിച്ചു് മെച്ചപ്പെട്ട മലയാളം സ്വതന്ത്ര സോഫ്റ്റ്‌വെയര്‍ ഉപയോക്താക്കളുടെ അടുത്തെത്തുന്നതു് 2010 ലാണു്. അപ്പോഴേയ്ക്കും പല ചിത്രീകരണ സംവിധാനങ്ങളും അവയുടെ സങ്കീര്‍ണ്ണത മൂലവും കാലപ്പഴക്കം മൂലവും സ്റ്റാന്‍ഡേര്‍ഡുകളുടെ മാറ്റം മൂലവും പുതുതായെഴുതി പുതുക്കേണ്ടിവന്നു. ആ പുതുക്കലുകള്‍ക്കൊപ്പം മലയാളത്തിന്റെ ഫോണ്ടുകള്‍ മെച്ചപ്പെടുത്താനും ചിത്രീകരണ സംവിധാനത്തിന്റെ സ്ഥിരത നഷ്ടപ്പെടാതെനോക്കാനും വീണ്ടും ഒരുപാടു സമയവും ഊര്‍ജ്ജവും സ്വതന്ത്രമലയാളം കമ്പ്യൂട്ടിങ്ങിലെ സന്നദ്ധപ്രവര്‍ത്തകര്‍ക്കു ചെലവാക്കേണ്ടിവന്നിട്ടുണ്ടു്. വിജയത്തിലെത്തിയ ഈ പരിശ്രമങ്ങളുടെ കഥ ഈ ശ്രമങ്ങളില്‍ ഇടപെട്ടവര്‍ക്കുപുറമേ കൂടുതല്‍ ഭാഷാസ്നേഹികളറിയേണ്ടതുണ്ടു്. ഇപ്പോള്‍ പുതുതായി ഒരു ഫോണ്ടു നിര്‍മിക്കുന്നതിനു് ഒന്നു മുതല്‍ തുടങ്ങാതെ വര്‍ഷങ്ങളായി നിര്‍മിച്ചെടുത്ത ഫോണ്ടുകള്‍ അടിസ്ഥാനപ്പെടുത്തിയാല്‍ മതിയെന്നായി. സ്വതന്ത്ര ചിത്രീകരണ സംവിധാനങ്ങള്‍ ഗ്നു/ ലിനക്സ് എന്ന പ്ലാറ്റ്‌ഫോമിലൊതുങ്ങാതെ ആന്‍ഡ്രോയിഡ്, ഫയര്‍ഫോക്സ്, ക്രോം, ലിബ്രെഓഫീസ്, ടെക്ക്, ഫയര്‍ഫോക്സ് ഓഎസ് തുടങ്ങിയവയിലും എത്തിയതോടെ മെച്ചപ്പെട്ട മലയാളം ചിത്രീകരണം കൂടുതല്‍ പേരുടെ കൈകളിലെത്തി. സാങ്കേതിക അടിത്തറ ശക്തിപ്പെടുത്തലും മെച്ചപ്പെട്ട മാതൃകാ ഫോണ്ടുകള്‍ പരിപാലിക്കുന്നതും പലപ്പോഴും വേണ്ടത്ര തിരിച്ചറിയാതെ പോകുന്ന പ്രവര്‍ത്തനങ്ങളാണു്. ഇവയെല്ലാം തെറ്റില്ലാതെ പ്രവര്‍ത്തിക്കുന്നുണ്ടെങ്കില്‍ ഇവയുടെ സാന്നിധ്യം പോലും പലരും തിരിച്ചറിയില്ല. റിലീസുകളോ ഔദ്യോഗിക പുറത്തിറക്കല്‍ പരിപാടികളോ ഇല്ലാതെ ഉണ്ടായ കുറേപേരുടെ പരിശ്രമങ്ങള്‍ മറന്നു പോകാതെ രേഖപ്പെടുത്തിവയ്ക്കേണ്ടതുണ്ടു്. ഭാഷാ സാങ്കേതികവിദ്യയുടെ നാള്‍വഴികളില്‍ അവയ്ക്ക് വലിയ പ്രാധാന്യമുണ്ടു്. ഈ മേഖലയിലേയ്ക്ക് കടന്നുവരുന്നവര്‍ക്കും ഇതൊരു സഹായമാവണം. ഗവണ്‍മെന്റുകളും സ്റ്റാന്‍ഡേര്‍ഡൈസേഷന്‍ ബോഡികളും സ്റ്റാന്‍ഡേര്‍ഡ് നിര്‍മ്മാണവും അവയുടെ പാലിക്കലും അവയ്ക്കിടയിലെ പൊരുത്തക്കേടുകളും കമ്പനികളുടെ ഇടപെടലും ഒക്കെ ചേര്‍ന്നു സൃഷ്ടിക്കപ്പെടുന്ന സാങ്കേതികപരിസരത്തില്‍ വ്യക്തമായ കാഴ്ചപ്പാടോടെ ഉള്ള സാങ്കേതികരാഷ്ട്രീയ ഇടപെടലുകളുടെയും അതിന്റെ സാധ്യതകളുടേയും വിജയങ്ങളുടേയും ഒരു രേഖ കൂടി ആണു് ഈ ലേഖനപരമ്പര. കൃത്യമായി ഒരു ക്രമം പാലിച്ചു് എല്ലാവര്‍ക്കും മനസ്സിലാവുന്ന രീതിയില്‍ ലളിതമാക്കി ഇതെഴുതുക ദുഷ്കരമാണു്. ഒരുപാടു സമയവും അധ്വാനവും ഇതിനായി വേണം. അതുകൊണ്ടു് എഴുതിത്തുടങ്ങുന്നതു് ഒന്നാമദ്ധ്യായത്തില്‍ നിന്നല്ല. പല പല ഭാഗങ്ങളും എഴുതി അവസാനം എഡിറ്റ് ചെയ്തു് ക്രമീകരിച്ച് ഒരു പുസ്തകമാക്കണമെന്നും ഞങ്ങള്‍ ആഗ്രഹിക്കുന്നു. യ, ര, ല, വ എന്നീ അക്ഷരങ്ങളുടെ പ്രത്യേകതകളും സങ്കീര്‍ണ്ണതകളും വിശദമാക്കി തുടങ്ങാമെന്നു കരുതുന്നു.നാളെമുതല്‍ ഈ ലേഖനപരമ്പര ആരംഭിയ്ക്കുന്നു. മലയാളത്തില്‍ സാങ്കേതികവിദ്യാ ഡോക്യുമെന്റേഷന്‍ രംഗത്ത് ഇങ്ങനെ ഒരു ശ്രമം ആദ്യമാണു്. അതിനാല്‍ തന്നെ നിർദ്ദേശങ്ങളുണ്ടെങ്കിൽ അറിയിക്കുക. ലേഖനങ്ങള്‍ മലയാളം ഫോണ്ടുകളും ചിത്രീകരണവും: ര-യുടെ ചിഹ്നങ്ങള്‍ കാവ്യ മനോഹര്‍ രേഫത്തിന്റെ ചിത്രീകരണം പഴയ ആപ്ലിക്കേഷനുകളില്‍ കാവ്യ മനോഹര്‍, രജീഷ് നമ്പ്യാര്‍ ഗോപിരേഫം അഥവാ കുത്തുരേഫം സന്തോഷ് തോട്ടിങ്ങല്‍ [Less]
Posted over 9 years ago by ബാലശങ്കര്‍ സി
ബാലശങ്കര്‍ സി നമ്മള്‍ ഉപയോഗിക്കുന്ന മലയാളം ഫോണ്ടുകള്‍ പുതുക്കേണ്ടതെന്തുകൊണ്ട് എന്നതു നമ്മള്‍ കഴിഞ്ഞ ബ്ലോഗ് പോസ്റ്റില്‍ വിശദമാക്കി.അതില്‍ പറഞ്ഞതുപോലെ ഉബുണ്ടുവില്‍ ഫോണ്ടുകള്‍ പുതുക്കാനുള്ള എളുപ്പവഴിയായി ഒരു റെപ്പോസിറ്ററി ഞാന്‍ സജ്ജമാക്കിയിട്ടുണ്ട് . ... [More] ആ റെപ്പോസിറ്ററി എങ്ങനെ ഇന്‍സ്റ്റാള്‍ ചെയ്യുമെന്നാണ്‍ എന്നാണു് ഈ ബ്ലോഗ് പോസ്റ്റില്‍ വിശദീകരിക്കുന്നതു്. ഉബണ്ടു കാലങ്ങളായി അവരുടെ ഡിസ്ട്രിബ്യൂഷനിലെ ഇന്ത്യന്‍ ഭാഷാ ഫോണ്ടുകള്‍ പുതുക്കുന്നില്ല. ഡെബിയനില്‍ വരുന്ന ഫോണ്ട് അപ്ഡേറ്റുകള്‍ ഇറക്കുമതി ചെയ്യല്‍ ഉബണ്ടു ചെയ്യേണ്ടതാണെങ്കിലും ഇപ്പോഴുള്ള മിക്ക ഫോണ്ടുകളും 2010ലേതിനേക്കാള്‍ പഴയതാണ് . 2011-2012 ല്‍ ഡെബിയന്‍ ഫോണ്ടുകള്‍ കൈകാര്യം ചെയ്യുന്ന രീതി ttf-malayalam-fonts എന്നതില്‍ നിന്നു fonts-<നിര്‍മ്മാതാവ്> എന്നരീതിയില്‍ മാറ്റി . എന്നാല്‍ അതുപ്രകാരം ttf-malayalam-fonts എന്ന പാക്കേജ് ഡെബിയനില്‍ ഇല്ലാതായിട്ട് fonts-smc പാക്കേജായി മാറിയതു ശ്രദ്ധിക്കാതെ ഉബുണ്ടു അവരുടെ ലാംഗ്വേജ് പാക്കില്‍ മലയാളം തെരഞ്ഞെടുത്താല്‍ ഇന്‍സ്റ്റാള്‍ ചെയ്യുന്നത് പണ്ടത്തെ പാക്കേജായിത്തന്നെ തുടര്‍ന്നു . ഇപ്പോള്‍ ഉബണ്ടുവില്‍ ttf-malayalam-fonts എന്ന പാക്കേജും fonts-smc എന്ന പാക്കേജും ലഭ്യമാണ് . ഒന്നു വളരെ പഴയ വെര്‍ഷന്‍ , മറ്റേതു ഒരുവര്‍ഷത്തോളം പഴകിയ വെര്‍ഷന്‍ . രണ്ടും പുതുക്കപ്പെടുന്നുമില്ല. സ്വാഭാവികമായി മലയാളം തെരഞ്ഞെടുക്കുമ്പോള്‍ പഴയ വെര്‍ഷനാണു ഇന്‍സ്റ്റാളാവുക. കാലങ്ങളായി ഇതു ചൂണ്ടിക്കാട്ടാന്‍ ഇട്ട ബഗ്ഗുകളില്‍ ഉബണ്ടുവിനാകട്ടെ വലിയ ശ്രദ്ധയുമില്ല. അതിനാലാണു ഈ PPA ഇന്‍സ്റ്റളേഷന്‍ വേണ്ടിവരുന്നതു് . ഉബുണ്ടു 14.04, 14.10, വരാനിരിയ്ക്കുന്ന 15.04 എന്നിവയിലാണു് ഇപ്പോള്‍ ഈ രീതിയില്‍ മലയാളപിന്തുണ ചേര്‍ക്കാനാവുക. ഫോണ്ടുകള്‍ ആദ്യമായി ഇന്‍സ്റ്റാള്‍ ചെയ്യുന്ന വിധം ഉബുണ്ടുവില്‍ ഒരു സോഫ്റ്റ്‌വെയര്‍ ഇന്‍സ്റ്റാള്‍ ചെയ്യാന്‍ രണ്ടു് വഴികളുണ്ടു്. ഒന്നു്, ഉബുണ്ടു തന്നെ നല്‍കുന്ന "ഉബുണ്ടു സോഫ്റ്റ്‌വെയര്‍ സെന്റര്‍" എന്ന പ്രോഗ്രാം ഉപയോഗിച്ചു്. രണ്ടു്, ടെര്‍മിനലില്‍ കമാന്‍ഡുകള്‍ അടിച്ച്. ഉബുണ്ടു സോഫ്റ്റ്‌വെയര്‍ സെന്റര്‍ ഉപയോഗിച്ച് മലയാളം ഫോണ്ടുകള്‍ എങ്ങനെ ഇന്‍സ്റ്റാള്‍ ചെയ്യാം എന്നു് നോക്കാം. ഉബുണ്ടു സോഫ്റ്റ്‌വെയര്‍ സെന്റര്‍ തുറക്കുക ഉബുണ്ടുവിലെ സോഫ്റ്റ്‌വെയര്‍ സെന്റര്‍ എന്ന പ്രോഗ്രാം സോഫ്റ്റ്‌വെയറുകള്‍ക്കായി തിരയുന്ന സ്ഥാനങ്ങളില്‍ സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങ് പരിപാലിക്കുന്ന മലയാളം ഫോണ്ടുകള്‍ ലഭിക്കുന്ന PPA ചേര്‍ക്കുക എന്നതാണു ഇനി വേണ്ടതു്. അതിനായി, Edit മെനുവിലെ Software Sources ക്ലിക്ക് ചെയ്യുക. അപ്പോള്‍ താഴെ കാണുന്നതു് പോലെ ഒരു ഡയലോഗ് ബോക്സ് ലഭിക്കും അതില്‍ രണ്ടാമത്തെ ടാബായ "Other Software” ക്ലിക്ക് ചെയ്യുക. അപ്പോള്‍ കിട്ടുന്ന ഡയലോഗ് ബോക്സില്‍ നിന്നും Add ബട്ടണ്‍ ക്ലിക്ക് ചെയ്യുക. PPAയുടെ വിലാസം കൊടുക്കാനായി ഒരു ഡയലോഗ് ബോക്സ് ലഭിക്കും. അവിടെ ടെക്സ്റ്റ് ബോക്സില്‍ ppa:smcproject/repo എന്നു് നല്‍കുക. ശേഷം, Add Source ബട്ടണില്‍ ക്ലിക്ക് ചെയ്യുക Other Software ടാബില്‍ ഇപ്പോള്‍ രണ്ട് വിലാസങ്ങള്‍ വന്നിരിക്കുന്നതായും, അതില്‍ ഒന്നു് ചെക്ക് ചെയ്ത അവസ്ഥയിലാണെന്നും കാണാം. ശേഷം, Close ബട്ടണ്‍ അമര്‍ത്തി ഡയലോഗ് ബോക്സില്‍ നിന്നും പുറത്തുകടക്കുക ഇപ്പോള്‍, ഉബുണ്ടു സോഫ്റ്റ്‌വെയറുകള്‍ക്കായി തിരയേണ്ട സ്ഥലങ്ങളുടെ പട്ടിക പുതുക്കുന്നതായിരിക്കും. അതു് മുകളിലെ പ്രോഗ്രസ് എന്ന ബട്ടണില്‍ (അതിന്റെ വശത്തു് ഒരു ഓറഞ്ച് നിറത്തിലുള്ള അനിമേഷന്‍ കാണാം) അമര്‍ത്തിയാല്‍ കാണാം. Updating Cache എന്ന പ്രവൃത്തി ചെയ്തുകഴിഞ്ഞാല്‍, മുകളിലെ All Software എന്ന ബട്ടണ്‍ അമര്‍ത്തി പൂമുഖത്തേക്കെത്തുക. അവിടെയുള്ള തിരച്ചില്‍ പെട്ടിയില്‍ (Search box) fonts-smc എന്നു് നല്‍കി എന്റര്‍ കീ അടിക്കുക. അപ്പോള്‍ , SMC Malayalam Font Pack എന്ന ഒരു ഫലം ലഭിച്ചതായി കാണാം. അതു് സെലക്ട് ചെയ്തതിനു് ശേഷം More Info എന്ന ബട്ടണ്‍ അമര്‍ത്തുക ഇപ്പോള്‍ ലഭിച്ച വിന്‍ഡോയില്‍, ഫോണ്ട് പാക്കേജിന്റെ വേര്‍ഷന്‍ ഏറ്റവും പുതിയതു് (6.1.1-1) തന്നെ ആണെന്നു് ഉറപ്പു വരുത്തുക വേര്‍ഷന്‍ ശരിയാണെന്നു് ഉറപ്പു വരുത്തിയാല്‍ മുകളിലുള്ള Install ബട്ടണ്‍ അമര്‍ത്തി ഇന്‍സ്റ്റളേഷന്‍ തുടങ്ങുക. ttf-indic-fonts-core എന്ന പാക്കേജ് നീക്കം ചെയ്താലേ ഫോണ്ട് പാക്ക് ഇന്‍സ്റ്റാള്‍ ചെയ്യാന്‍ പറ്റൂ എന്ന ഒരു മുന്നറിയിപ്പ് ലഭിക്കുന്നതായിരിക്കും. അവിടെ Install Anyway എന്ന ബട്ടണ്‍ അമര്‍ത്തുക ഇന്‍സ്റ്റളേഷന്‍ പുരോഗമിക്കുന്നതിനോടൊപ്പം പ്രോഗ്രസ് ബാര്‍ നിറയുന്നതും കാണാം. ഇന്‍സ്റ്റളേഷന്‍ പൂര്‍ത്തിയായാല്‍, പാക്കേജിനെ പറ്റിയുള്ള വിവരണത്തിന്റെ വശത്ത് Installed എന്ന ഒരു പച്ച ശരി ചിഹ്നം കാണാം ഇപ്പോള്‍ മലയാളം ഫോണ്ടുകള്‍ നിങ്ങളുടെ സിസ്റ്റത്തില്‍ ഇന്‍സ്റ്റാള്‍ ആയി കഴിഞ്ഞു. പരിശോധിക്കാനായി ഏതെങ്കിലും ടെക്സ്റ്റ് എഡിറ്റര്‍ എടുത്ത് മലയാളത്തില്‍ ടൈപ്പ് ചെയ്തതിനു് ശേഷം ഫോണ്ടുകള്‍ മാറ്റി നോക്കുക കമാന്റ് ലൈന്‍ ഉപയോഗിച്ച് ഇന്‍സ്റ്റാള്‍ ചെയ്യാന്‍ ഇതേ കാര്യം തന്നെ പുതുതായി ഇന്‍സ്റ്റാള്‍ ചെയ്യുന്നവര്‍ കമാന്റ് ലൈനില്‍ ചെയ്യേണ്ട രീതി താഴെക്കൊടുക്കുന്നു. ഒരു ടെര്‍മിനല്‍ എടുത്ത് താഴെപ്പറയുന്ന കമാന്റുകള്‍ ഓരോന്നോരോനായി നല്‍കുക . നിങ്ങള്‍ ഉബുണ്ടുവില്‍ മലയാളം ഫോണ്ടുകള്‍ ഉള്ള ttf-malayalam-fonts എന്ന പാക്കേജോ fonts-smc എന്ന പാക്കേജോ ഇന്‍സ്റ്റാള്‍ ചെയ്തിട്ടുണ്ടെങ്കില്‍, ഇതേ കമാന്‍ഡുകള്‍ കൊണ്ടുതന്നെ ആ പാക്കേജ് നിങ്ങള്‍ക്ക് പുതുക്കാവുന്നതാണു്. ടെര്‍മിനല്‍ തുറന്നു് താഴെ കൊടുത്തിരിക്കുന്ന കമാന്‍ഡുകള്‍ നല്‍കുക sudo apt-add-repository ppa:smcproject/repo sudo apt-get update sudo apt-get remove ttf-freefont sudo apt-get install fonts-smc ഇങ്ങനെ ചെയ്യുമ്പോള്‍ fonts-smc എന്ന പാക്കേജ് ഉബുണ്ടുവിന്റെ പ്രധാന റെപ്പോയില്‍ നിന്നും മാറി സ്വമക പരിപാലിക്കുന്ന ppaയില്‍ നിന്നും എടുത്തു് പുതുക്കുന്നതായിരിക്കും ഫോണ്ടുകള്‍ ഡൗണ്‍ലോഡ് ചെയ്തു് ഉപയോഗിക്കുന്നവര്‍ നിങ്ങളുടെ കമ്പ്യൂട്ടറില്‍ മലയാളം ഫോണ്ടുകളുടെ പഴയ വേര്‍ഷനുകള്‍ നിലവില്‍ ഉണ്ടെങ്കില്‍ (ഹോം ഡയറക്ടറിയിലെ .fonts എന്ന സബ്‌ഡയറക്ടറിക്കകത്തു് മലയാളം ഫോണ്ടുകള്‍ നിങ്ങള്‍ സ്വയം ചേര്‍ത്തിട്ടുണ്ടെങ്കില്‍ ~/.fonts/) അവ നീക്കം ചെയ്തതിനു് ശേഷം മുകളില്‍ പറഞ്ഞ പ്രക്രിയ ഉപയോഗിച്ച് fonts-smc പാക്കേജ് ഇന്‍സ്റ്റാള്‍ ചെയ്താല്‍ മതിയാകും [Less]
Posted over 9 years ago by Anivar Aravind
അനിവര്‍ അരവിന്ദ് മലയാളം ഫോണ്ടുകള്‍ ഉപയോഗിയ്ക്കുന്ന നമ്മളില്‍ പലരും ഫോണ്ടുകള്‍ പുതിയ വെര്‍ഷനിലേയ്ക്ക് പുതുക്കുക എന്ന കാര്യത്തില്‍ അത്ര ശ്രദ്ധാലുക്കളല്ല. ഇതു വ്യക്തികളുടെ മാത്രമല്ല പത്രസ്ഥാപന വെബ്‌സൈറ്റുകളുടെ വരെ ശീലമാണു്. ഫോണ്ടുകള്‍ക്ക് ... [More] അപ്ഡേറ്റില്ലാത്ത ആസ്കിക്കാലത്തെ ശീലങ്ങളുടെ ബാക്കിയാണിതു്. പുതിയ സ്റ്റാന്‍ഡേര്‍ഡുകളും മാറ്റങ്ങളും വരുന്നതിനനുസരിച്ച് ഫോണ്ടുകള്‍ മെച്ചപ്പെടുത്തിക്കൊണ്ടിരിയ്ക്കുന്ന കാലമാണിതു്. ഫോണ്ടുകള്‍ സോഫ്റ്റ്‌വെയറുകള്‍ തന്നെയാണു്. അതിനാല്‍ യൂണിക്കോഡ് വെര്‍ഷന്‍ മാറ്റങ്ങള്‍ക്കും ഓപ്പണ്‍ടൈപ്പ് സ്റ്റാന്‍ഡേര്‍ഡ് മാറ്റങ്ങള്‍ക്കും പുതിയ ഫീച്ചറുകള്‍ ലഭ്യമാക്കാനും ഒക്കെ ഫോണ്ടുകള്‍ പുതിയ വെര്‍ഷനിലേയ്ക്ക് പുതുക്കേണ്ടതു് അത്യാവശ്യമാണു്. മിക്കഫോണ്ടുകളുടെയും ഇപ്പോഴത്തെ വെര്‍ഷന്‍ 6.1 ആണു്. 04, 5.1 വെര്‍ഷനുകളിലുള്ള മീരയും രചനയുമാണ് ഇപ്പോഴും ഒട്ടനവധി പേര്‍ ഉപയോഗിയ്ക്കുന്നതും വെബ്‌‌സൈറ്റുകളില്‍ ലിങ്ക് ചെയ്തിരിയ്ക്കുന്നതും . അതുപോലെ .730 വെര്‍ഷനിലുള്ള അഞ്ജലിഓള്‍ഡ്‌ലിപി ഫോണ്ടാണ് മിക്കവരും ഇന്നും ഉപയോഗിയ്ക്കുന്നതു്. ഇവ പുതുക്കേണ്ടതാണ്. സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങ് ഫോണ്ടുകള്‍ക്ക് സ്ഥിരമായ ഒരു ഡൌണ്‍ലോഡ് ലൊക്കേഷനും പ്രിവ്യൂ പേജും സജ്ജമാക്കിയിരിയ്ക്കുന്നു .നിങ്ങള്‍ക്ക് പുതിയ വെര്‍ഷന്‍ ഫോണ്ടുകള്‍ http://smc.org.in/fonts എന്ന ലിങ്കില്‍ നിന്നും കണ്ട് ഡൗണ്‍ലോഡ് ചെയ്യാവുന്നതാണു്. സന്തോഷ് തോട്ടിങ്ങലാണു് ഈ പേജ് സജ്ജമാക്കിയതു്. ഓണ്‍ലൈന്‍ പത്രസ്ഥാപനങ്ങള്‍ ഫോണ്ട് ഡൗണ്‍ലോഡ് ഓപ്ഷന്‍ ഇതിലെ ലിങ്കുകളിലേയ്ക്ക് പോയന്റ് ചെയ്യാന്‍ അഭ്യര്‍ത്ഥിയ്ക്കുന്നു . ഒപ്പം പത്രങ്ങള്‍ നിങ്ങളുടെ എംബഡ് ചെയ്യുന്ന വെബ്‌ഫോണ്ടുകള്‍ പുതിയ വെര്‍ഷനുകളിലേയ്ക്ക് പുതുക്കുന്നതും നന്നായിരിയ്ക്കും .കമ്പ്യൂട്ടറില്‍ ഇന്‍സ്റ്റാള്‍ ചെയ്യാവുന്നതും സാധാരണക്കാര്‍ക്കാവശ്യവുമായ TTF ഫോണ്ടുകള്‍ക്കു പുറമേ WOFF, WOFF2, EOT എന്നീ വെബ്‌ഡെവലപ്പര്‍മാര്‍ക്കാവശ്യമായ വെബ്‌ഫോണ്ട് രൂപങ്ങളും ഇതേ പേജില്‍ തന്നെ ലഭ്യമാണു്. എന്തുകൊണ്ടിതു പ്രധാനമാകുന്നുവെന്നു വിശദീകരിയ്ക്കാം 2001 മുതലേ ഓപ്പണ്‍ടൈപ്പ് ഫോണ്ടുകള്‍ വന്നു തുടങ്ങിയെങ്കിലും മൈക്രോസോഫ്റ്റും അഡോബും കൂടി നിര്‍മ്മിച്ച ഓപ്പണ്‍ ടൈപ്പ് സാങ്കേതികവിദ്യ ഒരു ISO അംഗീകൃത ഓപ്പണ്‍ സ്റ്റാന്‍ഡേര്‍ഡ് ആയിമാറാനുള്ള ശ്രമം തുടങ്ങുന്നതു് 2005 അവസാനമാണു്. 2007 ല്‍ ഓപ്പണ്‍സ്റ്റാന്‍ഡേര്‍ഡായി ഐഎസ്ഓ അംഗീകാരം ലഭിച്ച ഓപ്പണ്‍ ഫോണ്ട് ഫോര്‍മാറ്റ് സ്പെസിഫിക്കേഷന്‍(ISO/IEC 14496-22:2007) മലയാളത്തിന്റെ കാര്യത്തില്‍ അത്ര കുറ്റമറ്റതായിരുന്നില്ല. ആ സ്റ്റാന്‍ഡേർഡ് പാലിക്കുന്നവയായിരുന്നു പഴയ ഷേപ്പിങ് എഞ്ചിനുകള്‍. ഭാഷ തെറ്റുകൂടാതെ സ്ക്രീനില്‍ തെളിയുവാന്‍ സ്റ്റാന്‍ഡേര്‍ഡ് പാലിക്കുന്നതിനോടൊപ്പം സുറുമാ പാച്ചുപോലുള്ള പല കസ്റ്റം ഹാക്കുകള്‍ കൂടി ഉള്‍ക്കൊള്ളിച്ചാണു് മലയാളം 2007-2008 കാലത്തു് പുറത്തിറക്കിയിരുന്നതു്. 2009 അവസാനമാണു് പുതുക്കിയ ഓപ്പണ്‍ ഫോണ്ട് ഫോര്‍മാറ്റ് എഡിഷന്‍ 2 എന്ന മെച്ചപ്പെടുത്തിയ സ്റ്റാന്‍ഡേഡിനെ(ISO/IEC 14496-22:2009) ഐ.എസ്.ഒ അംഗീകരിയ്ക്കുന്നതു്. മലയാളമടക്കം ഇന്ത്യന്‍ ഭാഷകള്‍ക്കു് ഒട്ടനവധി മാറ്റങ്ങളാണു് ഇവ കൊണ്ടുവന്നതു് ചിത്രീകരണ സംവിധാനങ്ങള്‍ ഇവയെ പിന്തുണച്ചു തുടങ്ങുന്നതു് 2010നു ശേഷമാണു്. അതോടെ ഫോണ്ടുകള്‍ പുതിയ സ്റ്റാന്‍ഡേര്‍ഡിനനുസരിച്ചു പുതുക്കേണ്ടിവന്നു . ഓപ്പണ്‍ ടൈപ്പ് 1 ല്‍ നിന്നും മലയാളത്തില്‍ യ,ര,ല,വ എന്നിവയുടെ അക്ഷരചിഹ്നങ്ങളെ കൈകാര്യം ചെയ്യുന്ന കാര്യത്തില്‍ പാടെ വ്യത്യസ്തമാണ് ഓപ്പണ്‍ ടൈപ്പ് 2 എന്നത് ഈ വിഷയത്തിനെ കൂടുതല്‍ സങ്കീര്‍ണ്ണമാക്കി. കുത്തുരേഫവും ഇത്തരത്തില്‍ മറ്റൊരു വെല്ലുവിളിയായിരുന്നു. എന്നാല്‍ ഒരുപാടു പരിശ്രമത്തിനു ശേഷം രണ്ടു സ്റ്റാന്‍ഡേര്‍ഡുകളെയും ഒരുപോലെ പിന്തുണയ്ക്കുന്ന രീതിയില്‍ രജീഷ് നമ്പ്യാരും സന്തോഷ് തോട്ടിങ്ങലും ചേര്‍ന്ന് ഫീച്ചര്‍ ടേബിളുകളെ ക്രമപ്പെടുത്തി. അവ ക്രമേണ മറ്റു ഫോണ്ടുകളിലേയ്ക്ക് കൂടുതല്‍ പേര്‍ ചേര്‍ന്നു വ്യാപിപ്പിയ്ക്കുകയും ചെയ്തു. ഓപ്പണ്‍ടൈപ്പ് സ്റ്റാന്‍ഡേര്‍ഡ് 2 നെ മാത്രം പിന്തുണയ്ക്കുന്ന ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റങ്ങളിലോ അപ്ലിക്കേഷനുകളിലോ പഴയ ഫോണ്ടുകള്‍ ചിത്രീകരണപ്പിഴവുകള്‍ കാണിയ്ക്കും. പഴയ വെര്‍ഷനുകള്‍ ആണു മിക്ക ഓണ്‍ലൈന്‍ ലിങ്കുകളിലും കാണുക. അവയെല്ലാം പുതുക്കാന്‍ ബന്ധപ്പെട്ടവര്‍ ശ്രമിയ്ക്കണമെന്നും അവ http://smc.org.in/fonts/ ലേയ്ക്കു ചൂണ്ടിക്കാട്ടണമെന്നു് അഭ്യര്‍ത്ഥിയ്ക്കുന്നു. അങ്ങനെയുള്ളിടങ്ങളില്‍ നിന്നു ഡൌണ്‍ലോഡ് ചെയ്തെടുക്കുന്നവര്‍ പുതിയ വെര്‍ഷനുകളുടെ ലഭ്യതയെപ്പറ്റി അറിയാതിരിക്കുന്നതിനാല്‍ പുതിയ മാറ്റങ്ങളുടെ ഗുണഫലം ജനങ്ങളിലെത്തില്ല.ഒരു ഉദാഹരണം പറയുകയാണെങ്കില്‍ 13-ാം എന്നൊക്കെ എഴുതാനുള്ള -ാം എന്ന ഫിക്സ് ഒക്കെ പുതിയ വെര്‍ഷനുകളിലാണു വരുന്നതു് . ഇതു കുത്തുവട്ടം ഇല്ലാതെ ശരിയായി വായിക്കാന്‍ പറ്റണമെങ്കില്‍ നിങ്ങളുടെ ഫോണ്ട് പുതിയതാകണം. സ്വതന്ത്രസോഫ്റ്റ്‌വെയറില്‍ ഉബണ്ടു ഒഴിച്ചുള്ളവ മിക്ക ഡിസ്ട്രിബ്യൂഷനിലും ഫോണ്ടുകള്‍ ഓരോ വെര്‍ഷനിലും പുതുക്കപ്പെടുന്നുണ്ടു്. ഉബണ്ടുവില്‍ ഫോണ്ടുകള്‍ കഴിഞ്ഞ നാലുവര്‍ഷമായി പുതുക്കപ്പെടുന്നില്ല. ഉബണ്ടു ഉപയോക്താക്കള്‍ക്ക് മലയാളം ഫോണ്ടുകള്‍ എളുപ്പത്തില്‍ പുതുക്കാനായി ഒരു സോഫ്റ്റ്‌വെയര്‍ ശേഖരം സ്വതന്ത്രമലയാളംകമ്പ്യൂട്ടിങ്ങ് സജ്ജമാക്കിയിട്ടുണ്ട് . ബാലശങ്കര്‍.സി സജ്ജമാക്കിയ ഈ റെപ്പോസിറ്ററി വിവരങ്ങള്‍ ഇവിടെ ലഭ്യമാണു് . വിന്‍ഡോസ് ഉപയോക്താക്കള്‍ക്ക് ഫോണ്ടുകള്‍ പുതുക്കുന്ന ശീലം തീരെ കുറവാണു്. അവര്‍ക്കിപ്പോള്‍ ഡൗണ്‍ലോഡ് ചെയ്ത് ചേര്‍ക്കലല്ലാതെ വേറെ വഴിയില്ല. എന്നാല്‍ അപ്പോ ഫോണ്ടുകള്‍ പുതുക്കിക്കോളൂ. http://smc.org.in/fonts/ പത്രസ്ഥാപങ്ങള്‍ വെബ്‌ഫോണ്ടുകള്‍ പുതുക്കുന്നതില്‍ എന്തെങ്കിലും സാങ്കേതികസഹായങ്ങള്‍ വേണമെങ്കില്‍ contact അറ്റ് smc.org.in എന്ന വിലാസത്തില്‍ ബന്ധപ്പെടുക. ഈ ഫോണ്ടുകള്‍ക്ക് തെറ്റുകളോ കുറവുകളോ കാണുകയാണെങ്കില്‍ https://gitlab.com/smc/fonts ല്‍ ചെന്നു് ബന്ധപ്പെട്ട ഫോണ്ടിന്റെ പേജിലെ issues ല്‍ പോയി അവ റിപ്പോര്‍ട്ട് ചെയ്താല്‍ വരും വെര്‍ഷനുകളില്‍ പരിഹരിയ്ക്കാന്‍ ശ്രമിയ്ക്കുന്നതാണു്. [Less]
Posted over 9 years ago by Kavya Manohar
ഇതാ പുതിയൊരു സ്വതന്ത്ര യൂണിക്കോഡ് ഫോണ്ട് കൂടി. തലക്കെട്ടുകള്‍ക്ക് അനുയോജ്യമായ ഈ ഫോണ്ടിന്റെ പേര് "കേരളീയം" എന്നാണു്. കേരളത്തിലെ പരിസ്ഥിതി പ്രസ്ഥാനങ്ങള്‍ക്കാണു് ഈ ഫോണ്ട് സമര്‍പ്പിക്കുന്നതു്. തൃശ്ശൂരില്‍ നിന്നിറങ്ങുന്ന പരിസ്ഥിതി മാസികയായ ... [More] കേരളീയത്തിനായി 2005ല്‍ ഹുസൈന്‍ കെ. എച്ച്. ആസ്കി ഫോണ്ടായി നിര്‍മ്മിച്ച കേരളീയം, രചന എഡിറ്ററിനോടൊപ്പം വിതരണം ചെയ്തിരുന്നു. രചനയുടെ സമഗ്രലിപിസഞ്ചയം അടിസ്ഥാനമാക്കിയ ഈ ഫോണ്ടിന്റെ പുതുക്കിയ അക്ഷരരരൂപചിത്രീകരണം ബാംഗ്ലൂരിലെ ഫൗണ്ടേഷന്‍ ഓഫ് ആര്‍ട്ട്സിന്റെ 'ആര്‍ട്ട്സ് റിസേര്‍ച്ച് ആന്‍ഡ് ഡോക്കുമെന്റേഷന്‍ പ്രോഗ്രാ'മിന്റെ ഭാഗമായുള്ള ഗ്രാന്റോടുകൂടിയാണു് ഹുസൈന്‍ കെ.എച്ച് പൂര്‍ത്തിയാക്കിയതു്. ഓപ്പണ്‍ടൈപ്പ് ഫീച്ചറുകള്‍ ചേര്‍ത്ത് ഫോണ്ടാക്കിയെടുത്തതു് രജീഷ് കെ. നമ്പ്യാരും കാവ്യ മനോഹറും ചേര്‍ന്നാണ്. ഡൌണ്‍ലോഡ് ലിങ്ക്: http://smc.org.in/downloads/fonts/keraleeyam/Keraleeyam.ttf ഈ പേജില്‍ ടൈപ്പുചെയ്തു പരിശോധിയ്ക്കാവുന്നതാണു്. http://smc.org.in/downloads/fonts/keraleeyam/tests/ സോഴ്സ് കോഡ്: https://gitlab.com/smc/keraleeyam ലൈസന്‍സ്: Open Font License 1.1 വേര്‍ഷന്‍: 1.0.0-beta.20141217 [Less]
Posted over 9 years ago by Santhosh Thottingal
Swatantra 2014 is the fifth International Free Software Conference at Kerala organized by ICFOSS. The event is on 18 - 20 December 2014, Hotel Hycinth by Sparsa, Trivandrum. Swathanthra Malayalam computing is a supporting organization and we are ... [More] participating in many programs as part of the conference. Anivar Aravind Represented SMC in Swatantra 2014 Steering Commitee. SMC coordinates a track on Indic language computing on 19th. Venkatesh Hariharan (Founder of Indlinux and Former Head of Public Policy and Government Affairs with Google) presents "A National Roadmap for Indic Computing". Santhosh Thottingal, (Project Admin, SMC and Senior Engineer, Wikimedia Foundation) talks on "Building Blocks of Indic Language Computing- An analysis of Current Status". Rajesh Ranjan from FUEL project talks about "Desi Content, Standardization, and its Strategy". Sayamindu Das Gupta present "Indic Computing: Some reflections". Anivar Aravind (Secretary, SMC) speaks about "Sustaining community Initiatives: SMC experience". Varnam project will be launched at same track . SMC and ICFOSS coordinates Free Mobile Platforms track. Speakers and topics are as follows. Topic Presenters Track 6. Free Mobile Platforms (Chair: Dr. G. Nagarjuna, FSF-India, 2:30 pm - 5:00 pm / 19 Dec, Hall 1) 1 Firefox OS Mr. Pravin Sridar, Mozilla Kerala 2 Cyanogenmod & AOSP Mr. Jishnu Mohan, SMC 3 Replicant Mr. Paul Kocialkowski, Replicant (Video) 4 Indic keyboard, Firefox Indic IME & Silpa Android SDK Mr. Hrishikesh K.B, SMC 5 A dive into various Free and OpenSource Mobile Platforms -Current state & Challenges Mr. Siji Sunny, MELabs SMC also coordinates the track about Mapping & OpenStreetMaps, Praveen A from SMC chairs this track. Speakers in this track is given below Topic Presenters Track 9. Mapping & OpenStreetMaps (Chair: Mr. Praveen A, SMC, 9:45 am - 12:15 pm / 20 Dec, Hall 3) 1 FOSS tools for Remotesensing and Geoprocessing Mr. Sajith VK 2 Mapping efforts in an unsurveyed land - an Open Street Map experiment at Koorachundu Village Panchayat Mr. Jaisen Nedumpala, Mr. Ark Arjun 3 Mozilla Location Services Ms. Soumya Deb , Mozilla Sathyaseelan master and Nalin Satyan will present "Alt approach to input text and Kerala experiments with accessibility.". Praveen A from SMC talks in a track about Freedom on Cloud. We look forward for a good learning experience and wish all success to the conference. [Less]