-
Notifications
You must be signed in to change notification settings - Fork 0
Accessibility ar
🌎 اللغة: العربية — شاهد كل اللغات الـ33
LockedIn CLI مزحة، لكن إمكانية الوصول فيها ليست مزحة. واجهة طرفية بهذا الثراء البصري — علامة لفظية متدرجة الألوان، وبطاقات مرسومة بالصناديق، ومؤشرات دوران بحروف برايل، ورموز تعبيرية — يصعب حقا استخدامها بالتقنية المساعِدة ما لم تصممها لأجل ذلك. تشرح هذه الصفحة ما تفعله الأداة، وكيف تفعّله، وأفضل الممارسات العامة الكامنة خلفه (وهي مفيدة إلى ما هو أبعد من هذا المشروع بكثير).
| الوضع | الراية | متغير البيئة | ما يفعله |
|---|---|---|---|
| قارئ الشاشة |
--accessible (--a11y، --screen-reader) |
LOCKEDIN_ACCESSIBLE=1، أو TERM=dumb
|
نص عادي خطي نظيف: بلا حدود، ولا فن ASCII، ولا حركة مؤشر دوران، ولا رموز زخرفية؛ اللون معطّل؛ محثّ قصير؛ معالم دلالية («المنشور:» … «(نهاية المنشور)»). |
| التباين العالي |
--high-contrast (--hc) |
LOCKEDIN_HIGH_CONTRAST=1 |
لوحة ألوان عالية التباين لضعف البصر: نص ثانوي أبيض ناصع، ولمسات أكثر سطوعا، بلا تعتيم، ولمسة صريحة بدل التدرج منخفض التباين. |
| التشتيت المنخفض |
--low-distraction (--calm، --reduce-motion) |
LOCKEDIN_LOW_DISTRACTION=1، LOCKEDIN_REDUCE_MOTION=1
|
حركة أقل (بلا رسوم مؤشر الدوران)، بلا رموز تعبيرية زخرفية، ولون صريح هادئ — مع الإبقاء على التخطيط البصري. لتقليل الحمل الإدراكي/الحسي. |
| بسيط / أحادي اللون |
--plain (--mono، --monochrome) |
LOCKEDIN_PLAIN=1، أو NO_COLOR=1
|
يعطّل كل الألوان مع الإبقاء على كامل التخطيط والحدود والرموز التعبيرية. للطرفيات ضعيفة دعم الألوان، أو للتسجيل، أو حسب التفضيل. يتجاوز FORCE_COLOR. |
هذه الأوضاع قابلة للتركيب: --high-contrast --low-distraction تمنحك واجهة
ساطعة وهادئة وخالية من الرموز التعبيرية؛ ومستخدم قارئ الشاشة على طرفية TERM=dumb
يحصل على وضع الوصول تلقائيا. حين تتعارض الأوضاع، يغلب الأكثر تقييدا — أحادي اللون
يهزم لوحة الألوان، ووضع قارئ الشاشة يحل محل الوضع البسيط.
lockedin --accessible post
lockedin --high-contrast
lockedin --plain post
LOCKEDIN_LOW_DISTRACTION=1 lockedin auraلست مضطرا للحسم مسبقا. داخل الجلسة التفاعلية، أمر الشرطة المائلة /a11y لوحة
تحكم حقيقية عاملة (إمكانية الوصول ليست جزءا من السخرية):
| اكتب | النتيجة |
|---|---|
/a11y |
إظهار الحالة الحالية (مفعّل/متوقف) للأوضاع الأربعة كلها |
/a11y <mode> |
تبديل واحد: screen-reader، high-contrast، low-distraction، plain (تعمل الأسماء البديلة مثل sr / hc / calm / mono أيضا) |
/a11y reset |
إيقاف كل الأوضاع |
تُعرض الحالة دائما كـكلمة صريحة للتفعيل/الإيقاف، لا باللون وحده — فقد لا يدرك اللونَ ذاتُ المستخدمين الذين تخدمهم هذه الميزة. اللوحة موطّنة بالكامل.
هذه هي المبادئ التي طبّقناها — وهي نفسها التي تنطبق على أي أداة طرفية.
- الدلالة قبل الزخرفة. يقرأ قارئ الشاشة الأحرف. تصبح حدود الصناديق «خط أفقي، خط أفقي…»؛ وعلامة لفظية بفن ASCII مجرد ضجيج. يستبدل وضع الوصول البنية البصرية بـكلمات: تعلن الشاشة الافتتاحية «LockedIn CLI» كنص، وتحصل البطاقات على معالم («المنشور:»، «(نهاية المنشور)») ليعرف المستخدمون أين تبدأ الكتلة وأين تنتهي.
- لا تعتمد أبدا على اللون أو الأيقونات وحدها. المعنى الذي يحمله اللون أو رمز تعبيري وحده غير مرئي لبعض المستخدمين. أبقِ النص ذا معنى مع إطفاء اللون — مثلا «تواصلت مع Ava» تُقرأ جيدا بعد اختفاء العلامة ✔.
- وفّر بدائل نصية / أزل الضجيج. الرموز التعبيرية الزخرفية تُقرأ بإطناب («📥» ← «صينية صندوق الوارد»). يجرّد وضع الوصول الرموز الزخرفية البحتة ويبقي على الكلمات؛ ويجرّد التشتيت المنخفض الرموز التعبيرية الصاخبة لكنه يبقي على التخطيط للمستخدمين المبصرين الذين يريدون الهدوء فحسب.
-
احترم تقليل الحركة. الحركة (مؤشر دوران برايل) عامل تشتيت وقد تكون محفّزا
دهليزيا. وضعا الوصول والتشتيت المنخفض لا يحرّكان — يطبعان الحالة مرة واحدة،
ثابتة. هذا يحاكي
prefers-reduced-motionفي الويب. - قدّم تباينا عاليا. النص الثانوي «الرمادي الخافت» منخفض التباين يخفق في تباين WCAG لكثير من المستخدمين. يستبدله وضع التباين العالي بالأبيض الناصع ويزيد سطوع اللمسات.
- قلّل الحمل الإدراكي. أبعد من البصر، يحتاج بعض المستخدمين إلى أقل: زخارف أقل، بلا حركة، بلا رموز تعبيرية. هذا وضع من الدرجة الأولى هنا، لا فكرة لاحقة.
-
راعِ أعراف المنصة. تحترم الأداة أصلا
NO_COLOR؛ وتعامل أيضاTERM=dumb(ما تصدّره كثير من أصداف قارئ الشاشة وEmacs) على أنه «فعّل الوصول»، وتقرأLOCKEDIN_REDUCE_MOTION. اكتشاف إشارات المستخدم القائمة أفضل من إجباره على ضبط شيء آخر بعد. - اجعلها قابلة للاختبار، وأبقِها مختبَرة. إمكانية الوصول التي ليست ضمن بوابة الاختبار تتعفن. تؤكد المجموعة أن مخرجات الوصول لا تحوي رموزا زخرفية، وأن المعالم موجودة، وأن التباين العالي يبدّل اللوحة، وأن التشتيت المنخفض يبقى محاذيا للحدود — في كل لغة.
التنسيق الاتجاهي أيضا يفشل مغلقا. العربية والفارسية والعبرية والأردية لا تُصدر أي
عناصر تحكم ثنائية الاتجاه ما لم يضبط المستخدم صراحة LOCKEDIN_BIDI=on لطرفية
معروف أنها تدعم العوازل؛ ووضع قارئ الشاشة يجرّدها حتى حينئذ. لا يمكن لسبر TTY ولا
قائمة سماح لطرفيات أن يتجاوز ذلك الإعداد الافتراضي الآمن.
-
a11yFilter(s)يجرّد يونيكود الزخرفي (رسم الصناديق، والكتل، والأشكال الهندسية، والتقنية، والزخارف، وبرايل، والرموز التعبيرية) ويدفع النص إلى اليسار — يُطبّق على كل المخرجات في وضع الوصول. -
emojiFilter(s)هو مرشّح التشتيت المنخفض الأخف: يزيل فقط الرموز التعبيرية/الرموز الصاخبة ويبقي رسم الصناديق والنقاط والأسهم ولون ANSI، فيبقى التخطيط البصري حيا. - كائن اللون
Cيُبدَّل إلى لوحة عالية التباين في مكانه؛ وتتراجع التدرجات إلى لمسة صريحة حين يكون التباين العالي أو التشتيت المنخفض مفعّلا. يفرض الوضع البسيط كل مدخلة فيCفارغة (اللون معطّل تماما، حتى تحتFORCE_COLOR) مع ترك التخطيط دون مساس. -
renderSplash، ومؤشر الدوران، وrenderPrompt، وcardلها فروع دلالية لوضع الوصول (نص عادي، بلا حركة، معالم). - يقيم الاكتشاف في
detectAccessible/detectHighContrast/detectLowDistraction/detectPlain؛ وتطبّقها نقطة الدخول قبل العرض. أما أمر/a11yداخل الجلسة (handleA11y+renderA11yStatus) فيبدّل الحالة نفسها على مستوى الوحدة مباشرة.
قائمة تحقق المراجعة في الدرس تتضمن خطوة لإمكانية الوصول، وهي عادة جيدة في أي مكان:
شغّل
lockedin --accessible <your command>وتأكد أنه يُقرأ كنص عادي نظيف — بلا رموز زخرفية جديدة تتسلل عبر المرشّح — وأن أي كتلة منظّمة جديدة لها معلم. ثم جرّب--high-contrast، و--low-distraction، و--plain(الذي يجب ألا يُصدر أي رموز ألوان مع الإبقاء على التخطيط). النص الجديد الظاهر للمستخدم يحتاج مفتاحا في كل حزمة لغة، حتى تبقى لوحة/a11yوالمساعدة موطّنتين.
سخرية. غير تابعة لـLinkedIn. GPL-3.0-or-later.
Tutorial
- 1 · Orientation
- 2 · How the Code Works
- 3 · Your First Agent Task
- 4 · Prompting & Reviewing
- 5 · Localization
Reference
Satire · Sátira · 風刺. Not affiliated with LinkedIn. GPL-3.0-or-later.