മൈക്രോസോഫ്റ്റ് വേഡും ചില്ലും
എന്താണ് പ്രശ്നം?
റ്റ്രാന്സ്ലിറ്ററേഷന് പ്രോഗ്രാമുകള് ഉപയോഗിക്കുമ്പോള് വേഡ് 2003-യിലും വേഡ് 2007-ലും മലയാളം ചില്ലുകള് എഴുതാന് പറ്റുന്നില്ല. ചില്ലുകളിലുള്ള ZWJ ഉപേക്ഷിച്ച രൂപമാണ് വേഡില് പ്രത്യക്ഷമാവുന്നത്. ഉദാഹരണത്തിന്, അവന് എന്നെഴുതുമ്പോള് അവന് എന്ന് കാണുന്നു. കാര് കാറ് ആയും, നമ്മള് നമ്മള് ആയുമേ വേഡില് തെളിയുന്നുള്ളൂ.
എന്നാല് ചില ഓഫീസ് പ്രോഗ്രാമുകളില് (ഉദാ: എക്സല്) ഈ പ്രശ്നമില്ലാതെ ചില്ലുകള് കാണുന്നുണ്ടു താനും.
(വിശദാംശങ്ങളില് താല്പര്യമില്ലാത്തവര് എന്താണ് പരിഹാരം? എന്ന ഭാഗം മുതല് തുടര്ന്നു വായിക്കുക.)
വേഡിന്റെ കുരുത്തക്കേടിനു കാരണമന്വേഷിച്ചിറങ്ങിയ ഞാന് എത്തിപ്പെട്ടത് സിയാദ് ഖാലിദി, സോംബാത് ലീസറപോങ് എന്ന രണ്ട് ഓഫീസ് പുലികളുടെ മുന്നിലായിരുന്നു. ഓഫീസ് 2003, ഓഫീസ് 2007 എന്നീ സ്യൂറ്റുകളിലെ വേഡ് ഉള്പ്പടെയുള്ള ചില ആപ്ലിക്കേയ്ഷനുകള് കീമാന്, കീമാപ് തുടങ്ങിയ ഥേഡ് പാര്ട്ടി ഇന്പുട്ട് മെഥേഡ് എഡിറ്ററുകളുമായി ഉപയോഗിക്കുമ്പോള് ചില്ലുകള് ഉണ്ടാവുന്നില്ല എന്ന കാര്യം ഞാന് ഈ മഹാന്മാരെ അറിയിച്ചു. മാത്രമല്ല, അടുത്ത ഓഫീസ് വേര്ഷനിലും (ഓഫീസ് 14) ഈ പ്രശ്നം നിലനില്കുന്നു എന്നും ഞാന് ഇവരോട് പറഞ്ഞു.
എന്താണ് കാരണം?
രണ്ടു ദിവസം കഴിഞ്ഞ് എനിക്ക് ഒരു മെയില് കിട്ടി. മുകളില് പറഞ്ഞ പ്രശ്നങ്ങള് IME-യുടെ പ്രശ്നങ്ങളാണ്.
അതുകൊള്ളാമല്ലോ. പക്ഷേ, അങ്ങനെ പറഞ്ഞ് കൈ കഴുകരുതെന്നും ഇപ്പറഞ്ഞത് IME-യുടെ പ്രശ്നം തന്നെയാണെന്നത് എന്നെ ബോധ്യപ്പെടുത്തണമെന്നും ഞാന് അഭ്യര്ഥിച്ചു. അങ്ങനെ, സിയാദും സോബാതും എന്നെ അവരുടെ ഓഫീസിലേയ്ക്ക് ക്ഷണിച്ചു.
‘ഞാന്’ എന്ന വാക്ക് കീമാന് ഉപയോഗിച്ച് എഴുതുമ്പോള് (njAn) കീമാന് അയയ്ക്കുന്ന വിന്ഡോസ് മെസ്സേജുകള് അവര് എനിക്ക് കാട്ടിത്തന്നു:
കീമാന് ചെയ്യുന്നത് നോക്കൂ. വിന്ഡോസ് മെസ്സേയ്ജുകള് കൊണ്ട് ഒരു കള്ളക്കളി തന്നെ. n കഴിഞ്ഞ് j അമര്ത്തുന്നതോടു കൂടി അദ്ദേഹം തുരുതുരാ VK_BACK മെസ്സേയ്ജുകള് അയയ്ക്കുകയായി. എന്നു മാത്രമോ, WM_KEYDOWN, WM_CHAR, WM_KEYUP എന്നീ രീതിയിലല്ല മെസ്സേയ്ജുകള് വേഡിന് കിട്ടുന്നത്. സാധാരണ ഗതിയില്, WM_KEYDOWN, WM_KEYUP മെസ്സേയ്ജുകള് WM_CHAR ഇല്ലാതെ ആപ്ലിക്കേയ്ഷനു കിട്ടാറുണ്ട്. എന്നാല് അത്തരം സന്ദര്ഭങ്ങളില് IME ചെയ്യുന്നത്, WM_IME* മെസ്സേയ്ജുകള് ഒപ്പമയച്ച്, ഈ മെസ്സേയ്ജുകള് ഉറവെടുക്കുന്നത് ഒരു IME-യില് നിന്നാണെന്ന് എഡിറ്ററെ അറിയിക്കുകയാണ്.
എഴുതുന്നത് IME ഉപയോഗിച്ചാണെന്ന് വേഡ് അറിയേണ്ട കാര്യമുണ്ടോ? ഒരു എഡിറ്ററായതിനാല് സ്പെല് ചെക്കര്, ഗ്രാമര് തുടങ്ങിയ ഭാഷപരമായ സൌകര്യങ്ങള് ഉപയോഗപ്പെടുത്തുന്നതിനു വേണ്ടി ഓരോ ക്യാരക്റ്ററിന്റെ പോലും ഭാഷ ഏതെന്ന് വേഡ് ഓര്ത്തുവയ്ക്കുന്നു. ഇവിടെ IME ചെയ്യുന്നത് ഒരു ഹാക് ആണെങ്കിലും വര്ക് ചെയ്യുന്നുണ്ട്. നമ്മുടെ പ്രശ്നം, പക്ഷേ, ചില്ലുകള് കാണുന്നില്ല എന്നതാണ്. എന്തുകൊണ്ടാണ് ചില്ലുകള് കാണാത്തത്? വേഡ് വിചാരിച്ചിരിക്കുന്നത് നാം ഇപ്പോഴും ഇംഗ്ലീഷിലാണെഴുതുന്നതെന്നാണ്. അങ്ങനെയല്ല എന്നു കരുതാന് വേണ്ടിയുള്ള വിവരം IME വേഡിനു നല്കുന്നില്ല. അതിനാല് ചില്ലുണ്ടാവാന് അവശ്യം വേണ്ട ZWJ-യെ (ആണവ ചില്ല് നിലവില് വരുന്നതു വരെ) വേഡ് വിസ്മരിക്കുന്നു. വേഡിനെ സംബന്ധിച്ചിടത്തോളം, ഡോക്യുമെന്റ് ഇപ്പോഴും ഇംഗ്ലീഷിലാണ്. ഇംഗ്ലീഷ് ഭാഷയിലെഴുതുമ്പോള് ZWJ വേണ്ടല്ലോ.
ക്യാരക്റ്ററുകളുടേയും വാക്കുകളുടെയും ഭാഷ സൂക്ഷിക്കാത്ത ഓഫീസ് പ്രോഗ്രാമുകള് ZWJ, ZWNJ തുടങ്ങിയവയെ വിസ്മരിക്കാത്തതിനാല് അങ്ങനെയുള്ള പ്രോഗ്രാമുകളില് ചില്ലുകള് കാണുന്നതിന് വിഷമമില്ല.
എന്താണ് പരിഹാരം?
എന്തുകൊണ്ടാണ് വേഡ് ചില്ല് കാണിക്കാത്തത് എന്നറിഞ്ഞപ്പോള് അതിന്റെ പരിഹാരവും എളുപ്പമായി. ഉപയോഗിക്കുന്ന കീബോഡ് മലയാളത്തിലാക്കുക. അല്ലെങ്കില് നാം മലയാളം കീബോഡ് ഉപയോഗിക്കുന്നു എന്ന് വേഡിനെ അറിയിക്കുക. അപ്പോള് വേഡ് ZWJ, ZWNJ എന്നിവയെ മറക്കില്ല. അതിനാല് വേഡില് മലയാളം എഴുതുന്നവര് ഇങ്ങനെ ചെയ്യുക:
൧. മലയാളം കീബോഡ് ഇന്സ്റ്റോള് ചെയ്യുക: Windows XP-യില് എങ്ങനെ മലയാളം കീബോഡ് ഇന്സ്റ്റോള് ചെയ്യാം എന്നത് ഈ ലേഖനത്തില് പറഞ്ഞിട്ടുണ്ട്. വിന്ഡോസ് വിസ്തയാണ് ഉപയോഗിക്കുന്നതെങ്കില്, Control Panel-ല് നിന്നും Regional and Language Option എടുക്കുക. Keyboards and Languages എന്ന റ്റാബിലേയ്ക്കു പോകുക. അവിടെ Change keyboards എന്ന ബട്ടണ് അമര്ത്തുക. അപ്പോള് നിങ്ങള് Text Services and Input Languages എന്ന ഡയലോഗിലെത്തും. അവിടെ Add ബട്ടണ് അമര്ത്തുക. Add Input Language എന്ന ലിസ്റ്റില് നിന്നും Malayalam (India) എന്നതില് അമര്ത്തുക. പിന്നീട് Keyboard എന്നതില് നിന്നും Malayalam തിരഞ്ഞെടുത്ത ശേഷം OK അമര്ത്തുക. തുറന്നിരിക്കുന്ന എല്ലാ ഡയലോഗുകളും അടയ്ക്കുക.
൨. വേഡ് തുറക്കുക. എന്നിട്ട് നിങ്ങളുടെ കീബോഡ് മലയാളമാക്കുക.
൩. വേഡില് കീബോഡ് മലയാളമാണെന്ന് ഉറപ്പുവരുത്തിയ ശേഷം njAn എന്ന് IME ഉപയോഗിച്ച് എഴുതി നോക്കൂ:
പ്രശ്ന പരിഹാരമായില്ലേ? ഒരു വിധം, എന്നാണുത്തരം. ഈ രീതി അവലംബിച്ചാലും ചിലപ്പോള് ഒരു വരിയില് ഒന്നില് കൂടുതല് ചില്ലക്ഷരങ്ങളുള്ള വാക്കുകളെഴുതിയാല് ആദ്യത്തേതൊഴികെ ഒന്നും ശരിയായി വരുന്നില്ല എന്നു കാണാം. അതിന് താഴെപ്പറയുന്ന ഒരു മാര്ഗ്ഗമേ ഞാന് കാണുന്നുള്ളൂ:
൪. IME ഉപയോഗിക്കണമെന്ന് നിര്ബന്ധമാണെങ്കില്, കീമാനും കീമാപിനും പകരം IME ഡോക്യുമെന്റേയ്ഷന് അനുസരിച്ച് തയ്യാറാക്കിയിട്ടുള്ള മൈക്രോസോഫ്റ്റ് ഫൊണറ്റിക് ഇന്പുട്ട് റ്റൂള് ഉപയോഗിക്കുക. കീമാന്, കീമാപ് എന്നിവയോട് വളരെ സമാനമാണ് ഈ റ്റൂളിലെ റ്റ്രാന്സ്ലിറ്ററേയ്ഷന് സ്കീം. എന്നാല് ചില വ്യത്യാസങ്ങളുണ്ടു താനും. (ഇത് ഏകീകരിക്കുവാനുള്ള ശ്രമങ്ങള് വിജയം കണ്ടില്ല.) അതല്ലെങ്കില്, IME ഒഴിവാക്കി മലയാളം കീബോഡ് നേരിട്ട് ഉപയോഗിക്കുക. അത് എങ്ങനെയെന്ന് ഈ ലേഖനത്തില് വിശദീകരിച്ചിട്ടുണ്ട്.
ഈ ലേഖനവുമായി ബന്ധപ്പെട്ട സംശയങ്ങളുണ്ടെങ്കില് ചോദ്യങ്ങള് ചോദിച്ച് അവ ദൂരീകരിക്കാന് മടിക്കരുത്.
Labels: ബഗ്ഗ്, മൈക്രോസോഫ്റ്റ്, സാങ്കേതിക വിദ്യ