युनिकोड

नेपाली विकिपीडियाबाट
यसमा जानुहोस्: परिचालन, खोज्नुहोस्
Unicode
UCS
UTF-7
UTF-8
UTF-16
UTF-32
UTF-EBCDIC
SCSU
Punycode
GB18030
Bi-directional text
BOM
Han unification
Unicode and HTML


यूनिकोड (Unicode), प्रत्येक अक्षर को लागि एक विशेष संख्या प्रदान गर्दछ, चाहे कुनै पनि कम्प्युटर प्लेटफर्म, प्रोग्राम अथवा कुनै पनि भाषा हो। यूनिकोड स्टैंडर्ड को एपल, एच.पी., आई.बी.एम., जस्ट सिस्टम, माइक्रोसफ्ट, ओरेकल, सैप, सन, साईबेस, यूनिसिस जस्तो उद्योग को प्रमुख कम्पनिहरु र धेरै अन्य ले अपनाएको छ। यूनिकोड को आवश्यकता आधुनिक मानदंडों, जस्तै एक्स.एम.एल, जावा, एकमा स्क्रिप्ट (जावास्क्रिप्ट), एल.डी.ए.पी., कोर्बा 3.0, डब्ल्यू.एम.एल को लागि हुन्छ र यो आई.एस.ओ/आई.ई.सी. 10646 को लागू गर्ने अधिकारिक तरीका छ। यो धेरै संचालन प्रणालिहरु, सबै आधुनिक ब्राउजरों र धेरै अन्य उत्पादनहरु मा हुन्छ। यूनिकोड स्टैंडर्ड को उत्पति र यसको सहायक उपकरणहरु को उपलब्धता, हाल नै को अति महत्वपूर्ण विश्वव्यापी सफ्टवेयर प्रौद्योगिकी रुझानों मध्ये छन्।

यूनिकोड को ग्राहक-सर्भर अथवा बहु-आयामी उपकरणहरु र वेबसाइटों मा शामिल गर्न से, परंपरागत उपकरणहरु को प्रयोग गरे अपेक्षा खर्च मा अत्यधिक बचत हुन्छ। यूनिकोड भन्दा एक यस्तो एक्लो सफ्टवेयर उत्पादन अथवा एक्लो वेबसाइट मिलछ, जसलाई री-इंजीनियरिंग को बिना विभिन्न प्लेटफर्महरु, भाषाहरु र देशहरु मा उपयोग गरिन सक्छ। यसले आँकडहरुलाई बिना कुनै बाधा को विभिन्न प्रणालिहरु संग भएर ले जाया जान सक्छ।

यूनिकोड के हो?[सम्पादन गर्ने]

यूनिकोड प्रत्येक अक्षर को लागि एक विशेष नम्बर प्रदान गर्दछ,

  • चाहे कुनै पनि प्लटफर्म हो,
  • चाहे कुनै पनि प्रोग्राम हो,
  • चाहे कुनै पनि भाषा हो।

कम्प्युटर, मूल रूप से, नम्बरबाट सम्बंध राखछन। यो प्रत्येक अक्षर र वर्ण को लागि एक नम्बर निर्धारित गरेर अक्षर र वर्ण संग्रहित गर्छन। यूनिकोड को आविष्कार होने भन्दा पहिले, यस्तो नम्बर दिन को लागि सैंकडों विभिन्न संकेत लिपि प्रणालिहरु थिए। कुनै एक संकेत लिपि मा पर्याप्त अक्षर हैन हुन सक्छन् : उदाहरण को लिए, यूरोपीय संघ को एक्लै ही, आफ्नो सबै भाषाहरु को कवर गर्न को लागि अनेक विभिन्न संकेत लिपिहरु को आवश्यकता हुन्छ। अंग्रेजी जस्तो भाषा को लागि पनि, सबै अक्षरहरु, विरामचिन्हों र सामान्य प्रयोग को प्रौद्योगिकी प्रतीकहरु हेतु एक नै संकेत लिपि पर्याप्त थिएन।

यो संकेत लिपि प्रणालिहरु मास्पर विरोधी पनि छन्। यसैको लागि, दुइ संकेत लिपिहरु दुइ विभिन्न अक्षरहरु को लिए, एक नै नम्बर प्रयोग गर्न सक्छं, अथवा समान अक्षर को लागि विभिन्न नम्बरहरुको प्रयोग गर्न सक्छं। कुनै पनि कम्प्युटर (विशेष रूप ले सर्वर) को विभिन्न संकेत लिपिहरु संभालनी पडती है; फेरि पनि जब दुइ विभिन्न संकेत लिपिहरु अथवा प्लेटफर्मों को बीच डाटा पठाइन्छ त उन डाटा को संधै खराब भएको जोखिम रहन्छ।

यूनिकोड देखि यो सबै केहि बदल रहेको छ !

यूनिकोड को विशेषताहरु[सम्पादन गर्ने]

१) यो विश्व को सबै लिपिहरु संग सबै संकेतहरु को लागि एक अलग कोड बिन्दु प्रदान गर्दछ।

२) यो वर्णहरु (कैरेक्टर्स) को एक कोड दिइन्छ, न कि ग्लिफ (glyph) को।

३) जहाँ पनि सम्भव यूनिकोड हुन्छ, यो भाषाहरु को एकीकरण गर्ने प्रयत्न गर्दछ। त्यहि नीति को तहत सबै पश्चिम यूरोपीय भाषाहरु को लैटिन को अन्तर्गत समाहित गरिएको छ; सबै स्लाविक भाषाहरु को सिरिलिक (Cyrilic) को अन्तर्गत राखाइएको छ; हिन्दी, संस्कृत, मराठी, नेपाली, सिन्धी, कश्मीरी आदि को लागि 'देवनागरी' नाम ले एक नै ब्लक दिइएको छ; चीनी, जापानी, कोरियाई, वियतनामी भाषाहरु को 'युनिहान्' (UniHan) नाम ले एक ब्लक मा राखाइएको छ; अरबी, फारसी, उर्दू आदि को एक नै ब्लक मा राखाइएको छ।

४) बायाँ भन्दा दायाँ लिखी जाने वाला लिपिहरु को अतिरिक्त दाएँ-से-बाएँ लिखी जाने वाला लिपिहरु (अरबी, हिब्रू आदि) को पनि यसमा शामिल गरिएको छ। माथि देखि तल को तर्फ लिखी जाने वाला लिपिहरु को अझै अध्ययन गरे जा रहेको छ ।

५) यो ध्यान राख्न जरूरी छ कि यूनिकोड केवल एक कोड-सारणी छ। यि लिपिहरु लाई लिख्न/पढ्ने क लागि इनपुट मेथड एडिटरफण्ट-फाइल जरूरी छ।

५) यूनिकोड १६ बिट्स को एक ईकाई को रूप मा लेकर चल्छ।

यूनिकोड को महत्व र लाभ[सम्पादन गर्ने]

  • एक नै दस्तावेज मा अनेकों भाषाहरु को टेक्स्ट लिखे जान सकिन्छ।
  • टेक्स्ट को केवल एक निश्चित तरिका देखि संस्कारित गर्ने आवश्यकता पडती छ जसबाट विकास-खर्च एवं अन्य खर्चे कम लाग्छन।
  • कुनै सफ्टवेयर-उत्पाद को एक नै संस्करण पुरा विश्व मा चलाया जान सक्छ। क्षेत्रीय बजारहरु को लागि अलग देखि संस्करण निकालन आवश्यकता हैन पडती
  • कुनै पनि भाषा को टेक्स्ट पुरा संसार मा बिना भ्रष्ट भएका हिड जान्छ। पहिले यस तरिका को धेरै समस्याएंम् आती थिए।

हानियाँ[सम्पादन गर्ने]

यूनिकोड, आस्की तथा अन्य कैरेकटर कोडों को अपेक्षा अधिक स्मृति (मेमोरी) लिन्छ। कितनी अधिक स्मृति लगेगी यो यस कुरा मा निर्भर गर्दछ कि तपाईं को सा यूनिकोड प्रयोगएर रहे छन्। UTF7, UTF8, UTF16 या वास्तविक यूनिकोड - एक अक्षर अलग-अलग बाइट प्रयोग गर्छन।

देवनागरी यूनिकोड[सम्पादन गर्ने]

  • देवनागरी यूनिकोड को परास (रेंज) 0900 देखि 097F सम्म छ। (दोनो संख्याहरू षोडषाधारी हैं)
  • क्ष, त्र एवं ज्ञ को लागि अलग देखि कोड छैन। यिनलाई संयुक्त वर्ण मानएर अन्य संयुक्त वर्णहरु को भांति यिनीहरुका अलग देखि कोड हैन दिइएको छ।
  • यस रेंज मा धेरै देखि यस्तो वर्णहरु को लागि पनि कोड दिये गये हो जो सामान्यतः हिन्दी मा व्यवहृत हुदैनन्। किन्तु मराठी, सिन्धी, मलयालम आदि को देवनागरी मा सम्यक ढंग देखि लेखन को लागि आवश्यक छन्।
  • नुक्ता वाला वर्णहरु (जस्तै ज) को लागि यूनिकोड निर्धारित गरिएको छ। यसको वाहेक नुक्ता को लागि पनि अलग भन्दा एक यूनिकोड दिइएको छ। अतः नुक्तायुक्त अक्षर यूनिकोड को दृष्टि ले दुइ प्रकार देखि लिखे जान सकिन्छं - एक बाइट यूनिकोड को रूप मा या दुइ बाइट यूनिकोद को रूप मा। उदाहरण को लागि को ' ज ' पछि नुक्ता ( ) टाइप गरेर पनि लेखन सकिन्छ।
देवनागरी को यूनिकोड
  0 1 2 3 4 5 6 7 8 9 A B C D E F
U+090x  
U+091x
U+092x
U+093x तथा     ि
U+094x    
U+095x       य़
U+096x
U+097x                   ग॒ ज॒   ड॒ ब॒

यूनिकोड कन्सर्शियम[सम्पादन गर्ने]

यूनिकोड कन्सर्शियम, एक लाभ न कमाने वाला एक संगठन हो जसको स्थापना यूनिकोड स्टैंडर्ड, जो आधुनिक सफ्टवेयर उत्पादनहरु र मानकहरु मा पाठ को प्रस्तुति को निर्दिष्ट गर्दछ, को विकास, विस्तार र यसको प्रयोग लाई बढावा दिन को लागि गरिएको थियो। यस कन्सर्शियम को सदस्यहरु मा, कम्प्युटर र सूचना उद्योग मा विभिन्न निगम र संगठन शामिल छन्। यस कन्सर्शियम को वित्तपोषण पूर्णतः सदस्यहरु को शुल्क देखि गरिन्छ। यूनिकोड कन्सर्शियम मा सदस्यता, विश्व मा कहीं पनि स्थित उन संगठनहरु र व्यक्तिहरु को लागि खुली छ जो यूनिकोड को समर्थन गर्छन र जो यसको विस्तार र कार्यान्वयन मा सहायता गर्न चाहते छन्।

UTF-8, UTF-16 तथा UTF-32[सम्पादन गर्ने]

  1. यूनिकोड को मतलब छ सबै लिपिचिह्नों को आवश्यकता को पूर्ति गर्न मा सक्षम 'एकसमान मानकीकृत कोड' ।
  2. पहिले सोचा गएको थियो कि केवल १६ बिट को माध्यम ले नै दुनिया को सबै लिपिचिह्नहरुको लागि अलग-अलग कोड प्रदान किये जा सकेंगे। त्यस पछि थाहा भएको कि यो कम छ। फेरि यसलाई ३२ बिट गरइयो। अर्थात यस समय दुनिया को कुनै संकेत छैन जसलाई ३२ बिट को कोड मा कहीं न कहीं ठाँउ न मिल गयी हो।
  3. ८ बिट को कुल २पर घात ८ = २५६ अलग-अलग बाइनरी संख्याहरु बन सकती हैं; १६ बिट देखि २ मा घात १६ = ६५५३६ र ३२ बिट देखि ४२९४९६७२९६ भिन्न (distinct) बाइनरी संख्याहरु बन सकती छन्।
  4. यूनिकोड को तीन रूप प्रचलित छन्। UTF-8, UTF-16 र UTF-32.
  5. यिनीहरुमा अन्तर के हो? मान लीजिये तपाईंको नजिकै दस पेज को कुनै टेक्स्ट छ जसमा रोमन, देवनागरी, अरबी, गणित को चिन्ह आदि धेरै केहि छ। यिनी चिन्हों को यूनिकोड अलग-अलग होंगे। यहाँ ध्यान दिन योग्य कुरा हो कि केहि संकेतहरु को ३२ बिट को यूनिकोड मा शुरू मा शून्य नै शुन्य हो (जस्तै अंग्रेजी को संकेतहरु को लागि)। यदि शुरुआती शून्यहरुलाई हटा दिए जाय त यिनलाई केवल ८ बिट को द्वारा पनि निरूपित गरिन सक्छ र कहीं कुनै भ्रम या कांफ्लिक्ट हुनेछैन। त्यहि तरिका रूसी, अरबी, हिब्रू आदि को यूनिकोड यस्तो हो कि शून्य को छोड दिए पछि उनलाई प्राय: १६ बिट = २ बाइट देखि निरूपित गरिन सक्छ। देवनागरी, जापानी, चीनी आदि को आरम्भिक शून्य हटाउन पछि प्राय: २४ बिट = तीन बाइट देखि निरूपित गरिन सक्छ। किन्तु धेरै देखि संकेत हुनेछन् जसमा आरम्भिक शून्य हुनेछैनन् र उनलाई निरूपित गर्न को लागि चार बाइट नै लगेंगे।
  6. बुन्दु (५) मा बताए गये काम को UTF-8, UTF-16 र UTF-32 थोडा अलग अलग ढंग देखि गर्छन। उदाहरण को लागि यूटीएफ-८ के गर्दछ कि केहि लिपिचिह्नहरुको लागि १ बाइट , केहि को लागि २ बाइट, केहि को लागि तीन बढी चार बाइट प्रयोग गर्दछ। तर UTF-16 त्यहि काम को लागि १६ न्यूनतम बिटहरुको प्रयोग गर्दछ। अर्थात जो चीजहरु UTF-8 मा केवल एक बाइट ठाँउ लेती थिए उनि अब १६ बिट==२ बाइट को द्वारा निरूपित होंगी। जो UTF-8 मा २ बाइट लेतीं थियो यूटीएफ-१६ मा पनि दुइ नै लेंगी। किन्तु पहिले जो संकेतदि ३ बाइट या चार बाइट मा निरूपित हुन्थे यूटीएफ-१६ मा ३२ बिट=४ बाइट को द्वारा निरूपित गरिनेछ। (तपाईंको नजिकै ठुला-बडी ईटाहरु हो र उनको बिना तोडे खम्भा बनाउन हो त खम्भा ज्यादा बडा नै बनाया जान सक्छ। )
  7. लगभग स्पष्ट छ कि प्राय: UTF-8 मा इनकोडिंग गर्न देखि UTF-16 को अपेक्षा कम बिट्स लगेंगे।
  8. यसको वाहेक धेरै देखि पुराना सिस्टम १६ बिट को हैंडिल गर्न मा अक्षम थिए। उनि एकबार मा केवल ८-बिट नै संग काम गरेर सकते थिए। यस कारण पनि UTF-8 को अधिक अपनाएइयो। यो अधिक प्रयोग मा आउछ।
  9. UTF-16 र UTF-32 को पक्ष मा राम्रोई यो हो कि अब कम्प्युटरहरु को हार्डवेयर ३२ बिट या ६४ बिट को भएको छ। यस कारण UTF-8 को फाइलहरुलाई 'प्रोसेस' गर्न मा UTF-16, UTF-32 वाला फाइलों को अपेक्षा अधिक समय लगेगा।

उपयोगी यूनिकोड औजार (टूल्स)[सम्पादन गर्ने]

  • (क) String to Unicode Value ;
  • (ख) Numeric Value to String ;
  • (ग) Numeric Value Generator

फंण्ट परिवर्तक[सम्पादन गर्ने]

यदि कुनै लेख कुनै ठाँउ मा कुनै यस्तो फंन्ट को प्रयोगएर को लेखाइएको छ जो कि यूनिकोड छैन त फन्ट परिवर्तक प्रोग्रामहरुको प्रयोग गरेर उसलाई यूनिकोड मा बदलन सकिन्छ।

विस्तृत जानकारी को लागि हेर्नुहोस - 'फण्ट परिवर्तक'

जंक (विकृत) यूनिकोड को सही गर्न को उपाय[सम्पादन गर्ने]

याहू जस्तै इमेल सेवाहरु मा यूनिकोड कैरेक्टर विकृत भए पछि मूल इमेल प्राप्त गरेर पढने को ओनलाईन औजार

संदर्भ[सम्पादन गर्ने]

यिनलाई पनि हेर्नुहोस[सम्पादन गर्ने]

बाहिरी कडिहरु[सम्पादन गर्ने]

यूनिकोड उपकरण तथा फण्ट[सम्पादन गर्ने]

  • Unicode Code Converter v7.03 - यूनिकोड को तरह-तरह को वैकल्पिक रूपहरु मा बदलन वाला आनलाइन प्रोग्राम
  • Free C++ Unicode Libraries
  • Alan Wood's Unicode Resources Contains lists of word processors with Unicode capability; fonts and characters are grouped by type; characters are presented in lists, not grids.