யுனிக்கோட்
யுனிக்கோட் (UNICODE) என்றால் என்ன? மேலதீக த கவல்களுக்கு
'யுனிக்கோட்' எந்த இயங்குதளம் ஆயினும், எந்த நிரல் ஆயினும், எந்த மொழி ஆயினும் ஒவ்வொரு எழுத்துக்கும் தனித்துவமான எண் ஒன்றை வழங்குகிறது. அடிப்படையில் கணினிகள் எண்களுடன்தான் தொழிற்படுகின்றன. அவை எழுத்துக்களையும் பிற வரியுருக்களையும் எண்வடிவிலேயே சேமிக்கின்றன. 'யுனிக்கோட்' கண்டறியப்படு முன்னர் இவ்வாறு எழுத்துக்களுக்கு எண்களை வழங்க நூற்றுக்கணக்கான குறியீட்டு முறைகள் இருந்தன.
இவற்றில் எந்தவொரு முறையிலும் போதுமான அளவு எழுத்துக்கள் இருக்கவில்லை: உதாரணமாக, ஐரோப்பிய ஒருங்கியத்திலுள்ள மொழிகளை உள்ளடக்கவே பல்வேறு குறியீட்டு முறைகள் தேவைப்பட்டன. ஆங்கில மொழியில் கூட எந்தவொரு குறியீட்டு முறையினாலும் பொதுவாகப் புழங்கும் எல்லா எழுத்துக்களையும், தரிப்புக் குறிகளையும், மற்றும் தொழிநுட்பக் குறிகளையும் உள்ளடக்க முடியவில்லை.
மேலும் இக்குறியீட்டு முறைகள் ஒன்றுடன் ஒன்று முரண்படுகின்றன. அதாவது, இரு குறியீட்டு முறைகள், இரு வேறு எழுத்துக்களுக்கு ஒரே எண்ணையோ, அல்லது ஒரே எழுத்துக்கு இரு வேறு எண்களையோ புழங்கலாம். இதனால் எந்தவொரு கணினியும் (குறிப்பாகப் பரிமாறிகள்) பல்வேறு குறியீட்டு முறைகளை ஆதரிக்க வேண்டியுள்ளது; இந்நிலையிலும் வெவ்வேறு குறியீட்டு முறைகளுக்கு இடையிலோ அல்லது இயங்குதளங்களுக்கு இடையிலோ தரவுகள் பரிமாறப்படும் போது, அத் தரவுகள் பழுதுபடச் சாத்தியமுள்ளது.
நாம் ஒருவரை ஒருவர் புரிந்த கொள்வதற்கும் ஒருவர் மற்றைய ஒருவருக்கு கருத்தை சொல்வதற்கும் மொழி அவசியமல்லவா. மொழிக்கு வடிவம் கொடுக்கப்படும் போது அம்மொழி முழுமை பெறுகின்றது. இவ்வுலகில் உள்ள மக்கள் முக்கியமாக மொழியின் அடிப்படையில் தான் வித்தியாசப்படுகின்றார்கள். எது எப்படி இருப்பினும் இன்று கணினிப் பாவனையானது எல்லாவற்றையும் கடந்து எல்லா மொழிகளுக்கும் பொதுவானதாகவே இருக்கின்றது.
கணினி விடயத்தில் பொதுவாக ஆங்கிலமே பாவனையில் உள்ளபோதிலும் ஒவ்வொரு மொழியினதும் தத்தமது மொழியில் அதனது உபயோகத்தைப் பெறமுயற்சிக்கின்றார்கள். எதனையும் தத்தமது தாய் மொழியில் காணும்போது கேட்கும்போது பார்ப்பவர்களும் கேட்பவர்களும் நிச்சயமாய் பரவசம் அடைகின்றார்கள் என்பது உண்மை. எல்லோரும் ஒரு மொழியைப் பயில்வது என்பது இயலளவில் சாத்தியமற்றது. அந்தவகையில் தான் கணினியிலும் குறித்த ஒரு மொழியின் பயன்பாட்டை மாத்திரம் புகுத்துவது சாத்தியமற்றது.
எல்லா மொழியினரும் கணினியைப் பயன்படுத்த வேண்டும், அதன் பயன்பாட்டைப் பெற வேண்டும். இதில் படித்தவர், பாமரர் என்ற வேறுபாடு காட்ட முடியாது. இனிவரும் உலகம் கணினியின்றி இயங்கவே முடியாது என்பது மெய்ப்பிக்கப்ப்டடு வருகின்றது. ஆங்கிலேயரால் உருவாக்கப்பட்ட கணினியினை உடனடியாக முற்றுமுழுதாக ஒவ்வொரு மொhழியிரும் தத்தமது மொழிக்கு ஒத்திசைவாக்கம் செய்வது சிறிது கடினம் எனினும் முடியாத காரியமில்லை.
இதற்கிடையில் நாம் ஒன்றை விளங்கிக் கொள்ள வேண்டும். கணினிக்கு இன்று உலகில் உள்ள எந்த மொழியும் தெரியாது. அதற்கு ஒரே ஒரு மொழிதான் விளங்கும்.அந்த இயந்திர மொழி (Machine Language)மூலம் தான் அதற்கு ஆணையினை வழங்க முடியும். அதற்கு ஊடகமாக ஒருவேளை ஒவ்வொருவரும் தத்தமது மொழிகளை பயன்படுத்த முடியும்.இந்த மனித மொழிகளுக்கும் இயந்திர மொழிக்;கும் இடையில் கணினி மொழிகள் எனப்படும் Programming Languagesபயன்படுகின்றன.
இவை ஒரு புறம் நிற்க சீனர்கள் தமது கணினியானது தங்கள் மொழியில் வெளியீடுகளைத் தர வேண்டும், உள்ளீடுகளைப் பெறவேண்டும் என்று முயற்சிக்கின்றார்கள். அது போல் ஜேர்மனியர்கள் ஜேர்மன் மொழியலும், பிரான்சு தேசத்தவர் பிரெஞ்சு மொழியிலும், தமிழர் தமிழ்மொழியிலும் கணினியின் உள்ளீடுகள், வெளியீடுகள் இருக்க வேண்டும் என விரும்புகின்றார்கள்.
கணினி எமது மொழியில் வழங்கும் ஆணைகளை பெற்றுணர்ந்து எமது மொழியிலேயே வெளியீடுகளை தரவேண்டும் என ஒவ்வொரு மொழிக்காரர்களும் முயற்சிக்கின்றார்கள். அதில் பெருமளவில் வெற்றி பெற்று வருகின்றார்கள். ஆயினும் வெறுமனே ஒரு மொழிப் பிரயோகமும் கணினியில் சாத்தியமற்றது. குறித்த ஒரு தகவலில் ஒரு சைனீஸ் (Chinese) சொல் சைனீஸ் மொழியில் இருக்க வேண்டும் எனில் அதற்கும் கணினி ஒத்திசைவாக்கம் பெற்றிருக்குமாயின் எவ்வளவு நன்றாயிருக்கும்.
நிச்சயமாய் இது சாத்தியமானதொன்றே. இதற்காக நாம் பல்வேறு எழுத்துருக்களை (Font) கையாளுகின்றோம். இந்த கட்டுரையினையே உதாரணமாக எடுத்துக் கொள்வோம். இக்கட்டுரை அச்சில் வருவதற்காக கணினி மூலம் அச்சு எடுக்க வேண்டிய தேவை இருக்கின்றது. ஆனால் கட்டுரை வெறுமனே தமிழில் மாத்திரம் இல்லையே. இடையிடை ஆங்கிலச் சொற்களும் பாவிக்க வேண்டி இருக்கிறது. அப்போது என்ன செய்வது தமிழ் பகுதியை தமிழிலும், ஆங்கிலப் பகுதியினை ஆங்கிலத்திலும் ரைப் செய்ய வேண்டி இருக்கின்றது. அதற்காக அந்தந்த மொழி எழுத்துக்களை தெரிவு செய்ய வேண்டியிருக்கும்.
சரி இந்த மொழிகளை அதனுள்ள எழுத்துக்களை கணினிக்குள் உள்ளிட வேண்டுமல்லவா அதற்கு சாதனம் இருக்கின்றது. அது தான் ‘விசைப்பலகை’ (Key Board) அதில் ஒவ்வொரு விசை ( Key ) யினை அழுத்தும் போது அந்த விசைக்குரிய எழுத்து இதுதான் என்று கணினி புரிந்து கொள்ளும் அதனை உள்வாங்கும்.சாதாரணமாய் விசைப்பலகையில் எத்தனை விசைகள் இருக்கும் 105 அல்லவா ? ஒரு மொழியில் எத்தனை எழுத்துக்கள் இருக்கக் கூடும் ? இது மொழிக்கு மொழி வித்தியாசம். இதற்கும் தீர்வு உண்டு.
சில விசைகளை சேர்த்து குறித்த இன்னும் ஒரு விசையை அழுத்தினால் சில எழுத்துக்களை புரிந்து கொள்ளும் திறனை கணினி கொண்டிருக்கின்றது. அல்லது குறித்த விசையினை அழுத்தி பின்னர் விசைப்பலகையினை பயன்படுத்தும் போது விசைகள் யாவும் குறித்த எழுத்துக்களையும் மற்றொரு விசையை அழுத்தியபின் விசைப்பலகையினை பயன்படுத்தினால் மற்றொரு தொகுதி எழுத்துக்களையும் புரிந்து கொள்ளும் வண்ணம் விசைப்பலகைகள் உருவாக்கப்பட்டிருக்கின்றன. இவையெல்லாம் விசைப்பலகைகள் உருவாக்கும் போது கவனிக்கப்படுவதனால் இந்தப்பிரச்சனைகளையும் தீர்வு காணப்பட்டு விட்டது.
உண்மையில் விசைப்பலகையில் விசை ஒன்றை அழுத்தும் போது குறித்த எழுத்து நேரடியாக கணினியில் உள்ளிடப்படாது அந்த விசைக்குரிய ASCII இலக்கம் கணினிக்குள் செலுத்தப்படுகின்றது. அதனுடன் அவ்வேளை உபயோகப்படுத்தப்பட்டுக்கொண்டிருக்கும் எழுத்து மென்பொருளிற்கு ஏற்ப வெளியீடு வருகின்றது.சாதாரண ஆங்கில விசைப்பலகை ஒன்றில் ஆங்கில எழுத்தான A யினை அழுத்தும் போது (Caps Lock அழுத்தப்பட்டிருக்கையில்) 97 என்ற ASCIIஇலக்கம் கணினிக்குள் வழங்கப்படும் அவ்வேளை Arial என்ற ஆங்கில எழுத்துரு உபயோகத்தில் இருப்பின் அது “A” ஆகவும் Bamini என்ற எழுத்துரு உபயோகத்தில் இருப்பின் “யு” ஆகவும் வெளியீடு கிடைக்கும். வெளியீடானது எழுத்துரு மென்பொருளில்தான் தங்கியிருக்கின்றது என்பது இதில் இருந்து புலனாகியிருக்கும்.
அநேகமாக தற்போது புழக்கத்தில் உள்ள எழுத்துக்கள் சாதாரண விசைப்பலகைக்கு ஏற்பவே அமைக்கப்பட்டிருக்கின்றன. குறித்த ASCII எண்களே திரும்பத்திரும்ப பயன்படுத்தப்படுகின்றன. அவற்றுக்குரிய வெளியீடுகள் இப்படி இருக்க வேண்டும் என ஒவ்வொரு மொழி எழுத்துக்களும் நிர்ணயிக்கின்றன.
உதாரணமாக Arial எழுத்துருவை உபயோகித்து WELCOME என்ற சொல் தட்டச்சு செய்யப்பட்டிருக்கின்றனது என வைத்துக் கொள்வோம். கணினிக்குள் உள்ளீடுகள் வழங்கப்படும் போது குறித்த விசைக்குரிய ASCII இலக்கங்களே வழங்கப்பட்டிருக்க முடியும். அவை Arial எழுத்துக்கள் காரணமாக WELCOME ஆக தெரிகின்றது. இதே சொல்லை Bamini என்ற தமிழ் எழுத்துருவிற்கு மாற்றுவோம் எனில் எவ்வாறு அமையும் ‘றுநுடுஊழுஆநு’ என அமையும். சரி “வணக்கம்” என்ற Bamini எழுத்துருவினு}டாக பெறப்பட்ட சொல்லை Arial ஆங்கில எழுத்துருவிற்கு மாற்றுவோமெனில் என்ன வரும் “tzf;fk;” என அமையும். ஆகவே குறித்த ASCII இலக்கம் ஒவ்வொரு மொழி எழுத்திலும் வித்தியாசமான வடிவங்களைத் தருகின்றது என்பது தெளிவாகின்றது.
ஆகவே குறித்த எழுத்துருவில் வைத்து ரைப் செய்யப்பட்ட சொல் அல்லது சொற்கள் அதே மொழி எழுத்துரு மூலமே சரியாக வாசித்தறியப்பட முடியும். சில வேளைகளில் ஒரே மொழிக்குள்ளேயே குறித்த ASCII இலக்கத்துக்கு வேறு எழுத்தை தரக்கூடிய வகையிலும் சில எழுத்துருக்கள் உருவாக்கப்பட்டிருக்கின்றன. இது இங்கு கவனத்தில் எடுத்துக் கொள்ளாமல் விடுவதே மேல் இவற்றைத் தான்தோன்றித் தனமானமான எழுத்துருக்கள் என நாம் கொள்ளலாம்.
சரி நாம் Bamini என்ற எழுத்துருவில் ரைப் செய்த சொல்லை Bamini எழுத்துரு கொண்டுதான் வாசித்தறிய முடிகிறது என மேலே கண்டோம். அப்படியாயின் வாசித்தறியப்படவேண்டிய கணினியிலும் குறித்த எழுத்துரு இருப்பது அவசியமாகிறது. சாதாரணமாக ஒவ்வொரு கணினியிலும் பிரதானமாக (By Default) ஒரே ஒரு எழுத்துருவே பாவனையில் இருக்கும். மற்றயவை தேவைக்கேற்ப தெரிவு செய்யப்பட வேண்டும்.
குறித்த மொழியிலமைந்த கோப்பை திறக்கும் போது பிரதானமாக உபயோகத்தில் உள்ள மொழி அதே மொழியில் இருந்தால்தான் ஆவணத்தை வாசித்தறிய முடியும். இல்லையெனில் அதனை ரைப் செய்யப்பட்ட மொழி எழுத்துருவிற்கு மாற்ற வேண்டிய தேவை எழும். அவ்வாறு மாற்றப்படும் போது கூட அவதானம் அவசியமாகின்றது. காரணம் ஆவணத்தில் பல்வேறு மொழிகள் கலந்து ரைப் செய்யப்பட்டிருப்பின் குறித்த பகுதிகளை கண்டுபிடித்து அந்தந்தப் பகுதிகளை கண்டுபிடித்து உரிய மொழி எழுத்துருக்களுக்கு மாற்றப்படவேணடி இருக்கும்.
இந்த யுனிகோட் எழுத்துரு சம்பந்தமான பொதுவான முடிவுகள் யாவும் யுனிக்கோட் அமைப்பினால் மேற்கொள்ளப்படுகிறது. இவர்களால் விசைப்பலகைகளில் வெளிப்படும் ASCII இலக்கங்கள் குறித்த மொழிகளுக்கு வரையறுக்கப்பட்டு கட்டுப்படுத்தப்படுகின்றன. அதாவது ஒவ்வொரு ASCII இலக்கமும் குறித்த எழுத்துக்கு என வரையறுக்கப்படுகின்றன. இதன் மூலம் ஒவ்வொரு மொழியில் உள்ள குறித்த எழுத்துருக்களுக்கென இலக்கங்கள் ஒதுக்கப்படுகின்றன. அந்த இலக்கம் பிறிதொரு மொழியின் ஒரு எழுத்துக்கு உபயோகிக்க முடியாது. உதாரணமாக 65 என்ற இலக்கம் ‘ய’ என்ற எழுத்துக்கு என ஒதுக்கப்பட்டிருக்கின்றது. அதனை உள்ளிட்டால் வெளியீடாக ‘ய’ என்ற எழுத்தே வரக்கூடியதாக யுனிக்கோட் எழுத்துருக்கள் அமைக்கப்பட்டிருக்கின்றன, அமைக்கப்படவேண்டும் அவ்வாறு இல்லையெனில் அது யுனிக்கோட் எழுத்துரு அல்ல.தமிழ் எழுத்துக்களுக்கு என தற்போது குறித்த ASCII இலக்கங்கள் இந்த அமைப்பினால் ஒதுக்கப்பட்டிருக்கின்றன. 2946 - 3071 வரையானவை தமிழ்மொழிக்கு ஒதுக்கப்பட்டிருக்கின்றன