“https://www.npmjs.com/package/wcwidth-o1″ rel=”nofollow”>”https://camo.githubusercontent.com/6145f765ccd9a7a6f076ba5c1eece5a48ceac75f91df2a64c24f1465e5084168/68747470733a2f2f696d672e736869656c64732e696f2f6e706d2f762f776377696474682d6f312e737667″ alt=”npm” البيانات الكنسي-SRC=”https://img.shields.io/npm/v/wcwidth-o1.svg”>
منفذ TypeScript/JavaScript من Markus Kuhn’s wcwidth و wcswidthالتطبيقات ، الأمثل إلى O (1).
يتم تعريف هذه الوظائف في IEEE Std 1003.1 (POSIX).
- ⚡ لحظة س(1) وقت البحث
- 🌏 التغطية الكاملة 15.1
تثبيت wcwidth-O1 عبر NPM:
“-1” dir=”auto”> JavaScript / TypeScript:
أو
wcwidth ()و wcwidthcjk ():
char: سلسلة أحادية الشحن لقياسها.
wcswidth ()و wcswidthcjk ():
str: سلسلة الإدخال لتقييم.n: أقصى أحرف للمعالجة (الافتراضيات إلى الطول الكامل).
في أطراف العرض الثابتة ، تتناول معظم الأحرف اللاتينية عمودًا واحدًا ، بينما عادة ما تستغرق عمليات الإيدوجغرافية في شرق آسيا (CJK) اثنين. يتمثل التحدي في تحديد عدد “الخلايا” التي يجب أن تشغلها كل حرف Unicode بحيث يتوافق النص بشكل صحيح.
يحدد معيار Unicode فئات العرض:
- واسع (ث) و FullWidth (F) – دائمًا عمودان
- نصف العرض (ح) و ضيق (NA) – دائما عمود واحد
- غامض (أ) – عمود واحد عادة ، ولكن 2 في وضع توافق CJK
- محايد (ن) – يعامل عمود واحد هنا للبساطة
تتضمن القواعد الأخرى:
U+0000(NULL) – العرض 0- السيطرة على الأحرف –
-1 - الجمع بين العلامات – العرض 0
- الواصلة الناعمة (
U+00AD) – العرض 1 - مساحة عرض الصفر (
U+200B) – العرض 0
ينشأ هذا المنطق من تطبيق مرجع Markus Kuhn ويستخدم على نطاق واسع في المحاكيات الطرفية لضمان محاذاة ثابتة.
انظر”http://www.unicode.org/unicode/reports/tr11/” rel=”nofollow”> Unicode TR#11 لمزيد من التفاصيل.
وجدت شيئا غريبا؟
لا تتردد في”https://github.com/dawsonhuang0/Wcwidth-O1/issues”> افتح مشكلة.
- إبداعي”http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c” rel=”nofollow”> التنفيذ بقلم ماركوس كون.
موزعة تحت رخصة معهد ماساتشوستس للتكنولوجيا.
يرى”http://github.com/dawsonhuang0/Wcwidth-O1/blob/main/LICENSE”>LICENSE لمزيد من المعلومات.