# சுருங்குறித் தொடர்

## சுருங்குறித் தொடர்கள் மற்றும் யுனிகோட்

சுருங்குறித் தொடர்கள் முதலில் ASCII எழுத்துக்குறிகளுடனே பயன்படுத்தப்பட்டன. பல சுருங்குறித் தொடர் பொறிகள் இப்போது யுனிகோடைக் கையாளக்கூடிய திறன் கொண்டவை. பெரும்பாலான சமயங்களில் எழுத்துக்குறித் தொகுதி எதுவாக இருந்தாலும் அது கருத்தில் கொள்ளத்தக்கதல்ல, ஆனால் சுருங்குறித் தொடர்களை யுனிகோடை ஆதரிக்கும் வகையில் நீட்டிப்பதால் சில சிக்கல்கள் எழுகின்றன.  
- ஆதரிக்கப்படும் குறியாக்கங்கள். சில சுருங்குறித் தொடர் நூலகங்கள் UTF-8 குறியாக்கத்தை எதிர்பார்ப்பவையாக உள்ளன, மற்றவை UTF-16 அல்லது UTF-32 ஐ எதிர்பார்க்கின்றன.  
- ஆதரிக்கப்படும் யுனிகோட் வரம்பு. பல சுருங்குறித் தொடர் பொறிகள் அடிப்படை பன்மொழித் தளங்களையே ஆதரிக்கின்றன, அதாவது 16 பிட்களில் மட்டுமே குறியாக்கம் செய்யக்கூடிய எழுத்துக்குறிகள். தற்போது, ஒரு சில சுருங்குறித் தொடர் பொறிகள் மட்டுமே 21-பிட் யுனிகோட் வரம்பைக் கையாளுகின்றன.  
- ASCII-சார்ந்த கருத்துகளை யுனிகோடிற்கு நீட்டித்தல். எடுத்துக்காட்டுக்கு, ASCII-அடிப்படையான செயல்படுத்தல்களில், <code>[x-y]</code> படிவத்தின் எழுத்துக்குறி வரம்புகள் *x* மற்றும் *y* ஆகியவை [0x00,0x7F] வரம்பில் இருக்கும் வரையிலும், குறியீட்டுப் புள்ளி(x) ≤ குறியீட்டுப்புள்ளி(y) என்ற நிலையில் இருக்கும் வரையிலும் செல்லுபடியாகக்கூடியனவாக உள்ளன. யுனிகோடுக்கான இது போன்ற எழுத்துக்குறி வரம்புகளால், [0x00,0x7F] இல் இருக்கும் முடிவுப் புள்ளிகள் [0,0x10FFFF] இல் இருக்க வேண்டிய அவசியத்தை ஏற்படுத்தும். இருப்பினும், நடைமுறையில் இது போல நிகழ்வதில்லை. gawk இன் செயல்படுத்தல் போன்ற சில செயல்படுத்தல்கள், எழுத்துக்குறி வரம்புகள் யுனிகோட் தொகுப்பை மீற அனுமதிப்பதில்லை. [0x61,0x7F] போன்ற வரம்புகள் இரண்டு முடிவுப் புள்ளிகளுமே அடிப்படை லத்தீன் தொகுப்பில் அமைவதால் செல்லுபடியாகின்றன, அது [0x0530,0x0560] போன்றதில் இரு முடிவுப்புள்ளிகளும் அமெரிக்கன் தொகுப்பில் அமைகின்றன, ஆனால் [0x0061,0x0532] போன்ற வரம்புகள் பல யுனிகோட் தொகுப்புகளைக் கொண்டிருப்பதால் அவை செல்லுபடியானவை அல்ல. Vim திருத்தியின் பொறி போன்ற பொறிகள், தொகுப்பு மீறல்களை அனுமதிக்கின்றன, ஆனால் எழுத்துக்குறிகளின் எண்ணிக்கையை 128 க்குள் வரம்புப்படுத்தியுள்ளன.  
- பேரெழுத்து உணராத் தன்மை. சில பேரெழுத்து உணராத் தன்மைக்கான கொடிகள் ASCII எழுத்துக்குறிகளை மட்டுமே பாதிக்கும். பிற கொடிகள் அனைத்து எழுத்துக்குறிகளையும் பாதிக்கின்றன. சில பொறிகள் இரண்டு வெவ்வேறு கொடிகளைக் கொண்டுள்ளன, அதில் ஒன்று ASCII க்கும் மற்றொன்று யுனிகோடுக்கும் ஆகும். துல்லியமாக POSIX வகைகளைச் சேர்ந்த எழுத்துக்குறிகளும் மாறுபடுகின்றன.  
- பேரெழுத்துணர்தன்மையின் உறவுகள். ASCII க்கு பேரெழுத்து தனிப்படுத்தல்கள் இருப்பதால், உரைத் தேடலில் பேரெழுத்து உணராத் தன்மை என்பது ஒரு தர்க்கவியல் அம்சமாகியது. தேவநகரி போன்ற பேரெழுத்து சிற்றெழுத்து வேறுபாடற்ற நெடுங்கணக்கு எழுத்துகளை யுனிகோட் அறிமுகப்படுத்தியது. இவற்றுக்கு, பேரெழுத்து உணர்தன்மை என்பது பொருந்தாது. சைனீஸ் போன்ற வரிவடிவங்களுக்கு, மற்றொரு வித்தியாசம் தர்க்க ரீதியானதாக் உள்ளது: அது மரபுசார்ந்த மற்றும் எளிய என்ற இரு வகைகளாகும். அரபி மொழி வரிவடிவங்களில், தொடக்க, இடைநிலை, இறுதி மற்றும் தனியான நிலைகளில் பேரெழுத்து உணராத் தன்மை தேவைப்படுகிறது.  
- இயல்பாக்குதல். யுனிகோட், சேர்ப்பு எழுத்துக்குறிகளை அறிமுகப்படுத்தியது. பழைய தட்டச்சுப் பொறிகளைப் போல, எளிய எழுத்துகளுக்கு அடுத்து இடைவெளியில்லா அசையழுத்தக் குறிகளைச் சேர்த்து ஒற்றை அசையழுத்தம் கொண்ட எழுத்தாக அவற்றை மாற்ற முடியும். இதன் விளைவாக, இரண்டு வெவ்வேறு குறியீட்டுத் தொடர்கள் ஒரே மாதிரியான எழுத்துக்குறிக் காட்சிப்படுத்தலை விளைவிக்கலாம்.  
- புதிய கட்டுப்பாட்டுக் குறியீடுகள். யுனிகோட் பலவற்றுடன் சேர்த்து பைட் வரிசை குறிப்புகள் மற்றும் உரைத் திசை மார்க்கர்கள் ஆகியவற்றையும் அறிமுகப்படுத்தியது. இந்தக் குறியீடுகள் ஒரு தனிச்சிறப்பு வழியில் கையாளப்பட வேண்டும்.  
- யுனிகோட் தொகுப்புகள் மற்றும் யுனிகோட் பொது எழுத்துக்குறி பண்புகள் மற்றும் எழுத்துக்குறி வகைகளின் அறிமுகம். Perl மற்றும் <code>\p{InX}</code> நூலகத்தில் வடிவத்தில் உள்ள எழுத்துக்குறிகள், *X* தொகுப்பிலுள்ள எழுத்துக்குறிகளுக்கும் <code>\P{InX}</code> அதற்கு எதிரானதற்கும் பொருந்தும். இதே போல, <code>\p{Armenian}</code> என்பது அமெரிக்கன் தொகுப்பில் உள்ள எந்த எழுத்துக்குறிக்கும் பொருந்தும், மேலும் <code>\p{X}</code> என்பது *X* எனும் பொது எழுத்துக்குறிப் பண்பு கொண்டுள்ள எந்த எழுத்துக்குறிக்கும் பொருந்தும். எடுத்துக்காட்டுக்கு, <code>\p{Lu}</code> என்பது பேரெழுத்து எதற்கும் பொருந்தும்.