بلوک یونی‌کد

از ویکی‌پدیا، دانشنامهٔ آزاد

بلوک یونیکد یکی از چندین محدوده کدهای کاراکتر عددی (موقعیت کد) پشت سر هم، از مجموعه کاراکترهای یونی‌کد است که توسط کنسرسیوم یونی‌کد و با هدف اهداف اداری و مستندسازی تعریف شده‌است. به‌طور معمول، پیشنهادهای تغییر (مانند افزودن گلیف‌های جدید) را با توجه بلوک یا بلوک‌های مربوطه مورد بحث و بررسی قرار می‌دهند.

به‌طور کلی و نه همیشه، هر بلوک برای ارائه حروف‌های مورد استفاده در یک یا چند زبان خاص، یا در برخی زمینه‌های کاربردی عمومی مانند ریاضیات، نقشه‌برداری، حروفچینی تزئینی، انجمن‌های اجتماعی و غیره به کار می‌رود.

طراحی و پیاده‌سازی[ویرایش]

بلوک‌های یونیکد با نام‌های منحصربه‌فرد شناسایی می‌شوند و فقط با استفاده از کاراکترهای اسکی بیان می‌شود. این بلوک‌ها معمولاً ماهیت نمادها را به زبان انگلیسی توصیف می‌کنند. مانند "Tibetan" یا "Supplemental Arrows-A". (هنگام مقایسه نام بلوک‌ها، باید حروف بزرگ و کوچک انگلیسی را یکسان در نظر بگیریم، و از انواع فاصله سفید، خط تیره و خط‌های زیرین چشم پوشی کنیم؛ بنابراین نام بلوک «supplemental_arrows__a» معادل «SUPPLEMENTALARROWSA» است.[۱]

بلوک‌ها دو به دو جدا هستند؛ یعنی همپوشانی ندارند. نقطه شروع موقعیت کد و اندازه (تعداد موقعیت کدهای) هر بلوک همیشه مضربی از ۱۶ است؛ بنابراین، در نماد شانزده‌شانزدهی، نقطه شروع (کوچکترین) U+xxx0 و نقطه پایانی (بزرگترین) U+yyyF است، که در آن xxx و yyy سه یا چند رقم شانزده‌شانزدهی هستند. (این محدودیت‌ها به منظور ساده‌سازی نمایش حروف در اسناد کنسرسیوم یونیکد در نظر گرفته شده‌است، به این منظور، اسناد به شکل جداول با ۱۶ ستون که آخرین ستون آن با آخرین رقم شانزده‌شانزدهی نقطه کد برچسب گذاری شده‌اند، تهیه می‌شوند.[۱]) اندازه یک بلوک می‌تواند از حداقل ۱۶ تا حداکثر ۶۵۵۳۶ نقطه کد متغیر باشد.

هر موقعیت کد یک ویژگی گلیف به نام «بلوک» را همراه خود دارد. مقدار این ویژگی یک رشته کاراکتری است و به بلوک منحصر به فردی که صاحب آن نقطه است اشاره می‌کند.[۲] با این حال، یک بلوک ممکن است حاوی یک یا چند موقعیت کد باشد که تاکنون به چیزی اختصاص نیافته باشند. این‌گونه موقعیت کدها معمولاً برای اضافه کردن کاراکترهایی که «منطقاً» باید به آن بلوک تعلق داشته باشند، کنار گذاشته می‌شوند. موقعیت کدهایی که به هیچ‌یک از بلوک‌های نام‌گذاری شده تعلق نداشته باشد دارای مقدار block="No_block" هستند، مثالاً موقعیت کدهای صفحات تخصیص‌نیافته ۴ تا 13.[۱]

سایر طبقه‌بندی‌ها[ویرایش]

هر نقطه یونیکد دارای یک ویژگی دیگر به نام "دسته‌بندی عمومی" است که تلاش می‌کند نقش نماد مربوطه را در زبان‌ها یا برنامه‌هایی که به خاطر آنها در سیستم گنجانده شده‌است، توصیف کند. نمونه‌هایی از دسته‌بندی‌های عمومی عبارتند از "Lu" (به معنای حرف بزرگ)، "Nd" (رقم اعشاری)، "Pi" (نقطه‌گذاری با نقل قول باز) و "Mn" (علامت بدون فاصله، یعنی نشانه‌ای که قبل گلیف می‌آید). این تقسیم‌بندی کاملاً مستقل از بلوک‌های کد است: نقاط کد با یک دسته کلی معین عموماً بلوک‌های زیادی را در بر می‌گیرند و لازم نیست حتی در هر بلوک متوالی باشند.[۳]

هر موقعیت کد دارای یک ویژگی نوشتاری که مشخص می‌کند برای کدام سیستم نوشتاری در نظر گرفته شده‌است یا اینکه آیا برای چندین سیستم نوشتاری در نظر گرفته شده‌است. این ویژگی نیز مستقل از بلوک است.

در توصیف سیستم یونیکد، یک بلوک ممکن است به زیرگروه‌های خاص‌تری تقسیم شود، مانند «نمادهای شطرنج» در بلوک نمادهای متفرقه (با بلوک نمادهای شطرنج مستقل اشتباه گرفته نشود). این زیرگروه‌ها به معنای فنی که توسط کنسرسیوم یونیکد استفاده می‌شود «بلوک» به حساب نمی‌آیند و فقط برای راحتی کاربران نامگذاری شده‌اند.

لیست بلوک‌ها[ویرایش]

یونیکد ۱۴٫۰ تعداد ۳۲۰ بلوک را تعریف می‌کند:[۱]

  • ۱۶۴ بلوک در صفحه ۰، صفحه چند زبانه پایه (در جدول زیر: § BMP)
  • ۱۴۵ بلوک در صفحه ۱، صفحه چند زبانه تکمیلی (§ SMP)
  • ۶ بلوک در صفحه ۲، صفحه ایدئوگرافیک تکمیلی (§ SIP)
  • ۱ بلوک در صفحه ۳، صفحه ایدئوگرافیک سوم (§ TIP)
  • ۲ بلوک در صفحه 14 (E در شانزده‌شانزدهی)، صفحه ویژه تکمیلی (§ SSP)
  • یک بلوک در هر کدام از صفحات 15 (Fhex) و 16 (10hex) که به نام منطقه استفاده شخصی تکمیلی A و B خوانده می‌شوند (§ PUA-A)

الگو:Unicode blocks

بلوک‌های حذف شده[ویرایش]

خط مشی پایداری یونیکد ایجاب می‌کند که یک کاراکتر، پس از اختصاص دادن، نباید جابجا یا حذف شود، ولی می‌تواند منسوخ شود. این ویژگی در نسخه Unicode 2.0 به بعد اعمال می‌شود.

قبل از این نسخه، بلوک‌های قبلی زیر حذف شدند:

بلوک‌های یونیکد قبلی از قبل از یونیکد ۲٫۰
محدوده بلوک تاریخی



{{سخ}} نام بلوک
نسخه هنگام اضافه شدن نسخه هنگام حذف محدوده اکنون توسط جایگزین بلوک شد نقاط کد شخصیت‌های اختصاص داده شده اسکریپت‌ها
U+1000..U+105F تبتی[۴] ۱٫۰٫۰ ۱٫۰٫۱ میانمار تبتی ۹۶ ۷۱ تبتی
U+3400..U+3D2D هانگول[۵] ۱٫۰٫۰ ۲٫۰ CJK Unified Ideographs Extension A هجاهای هانگول ۲۳۵۰ ۲۳۵۰ هانگول
U+3D2E..U+44B7 هانگول مکمل-A[۵] ۱٫۱ ۲٫۰ ۱۹۳۰ ۱۹۳۰ هانگول
U+44B8..U+4DFF هانگول مکمل-B[۵] CJK Ideographs Unified Extension A و Yijing Hexagram Symbos ۲۳۷۶ ۲۳۷۶ هانگول

منابع[ویرایش]

  1. ۱٫۰ ۱٫۱ ۱٫۲ ۱٫۳ "فایل داده بلوک‌های یونی‌کد، یونی‌کد نسخه 14.0". کنسرسیوم یونی‌کد. Retrieved 2021-09-15. خطای یادکرد: برچسب <ref> نامعتبر؛ نام «uniblocks» چندین بار با محتوای متفاوت تعریف شده‌است. (صفحهٔ راهنما را مطالعه کنید.).
  2. فرهنگ لغات یونی‌کد
  3. "Unicode Core Specification, Chapter 4: Character Properties" (PDF). Retrieved 2021-09-15.
  4. "3.8: جداول بلوک به بلوک" (PDF). استاندارد یونی‌کد. کنسرسیوم یونی‌کد.
  5. ۵٫۰ ۵٫۱ ۵٫۲ "ضمیمه E: اسامی بلوک ها" (PDF). استاندارد یونی‌کد. کنسرسیوم یونی‌کد.

پیوند به بیرون[ویرایش]