في Github ، نحن ملتزمون بجعل أدواتنا متاحة حقًا لكل مطور ، بغض النظر عن القدرة أو مجموعة الأدوات. واجهة سطر الأوامر (CLI) هي جزء حيوي من تجربة المطور ، و جيثب كلي هو منتجنا الذي يجلب قوة جيثب إلى محطةك.
عندما يتعلق الأمر بإمكانية الوصول ، تختلف المحطة بشكل أساسي عن متصفح الويب أو واجهة مستخدم رسومية ، مع نسب يسبق الويب نفسه. على الرغم من أن معايير مثل إرشادات إمكانية الوصول إلى محتوى الويب (WCAG) توفر مسارًا واضحًا لجعل التطبيقات على شبكة الإنترنت والتطبيقات الرسومية يمكن الوصول إليها ، لا يوجد معيار مكافئ وشامل للمحطة و CLIs. عروض W3C بعض الإرشادات عالية المستوى للبرامج غير وايب، لكنه لا يتوقف عن وصف التقنيات الخرسانية ، مما يترك الكثير من التفسير والابتكار.
لقد تحدتنا هذه الفجوة في التفكير بشكل خلاق وعميق حول ما يجب أن يبدو عليه الوصول في المحطة. لدينا الحديثة معاينة عامة يركز على تلبية احتياجات ثلاث مجموعات رئيسية: المستخدمون الذين يعتمدون على قراء الشاشة ، والمستخدمين الذين يحتاجون إلى تباين عالٍ بين الخلفية والنص ، والمستخدمين الذين يحتاجون إلى خيارات ألوان قابلة للتخصيص. يهدف عملنا إلى جعل Github CLI أكثر شمولاً للجميع ، بغض النظر عن كيفية تفاعلك مع محطةك. يجري gh a11y
في أحدث إصدار من Github CLI لتمكين هذه الميزات ، أو القراءة للتعرف على طريقنا إلى تصميم وتنفيذها.
فهم المشهد الطرفي
تختلف تطبيقات خط الأوامر المستندة إلى النص بشكل أساسي عن التطبيقات الرسومية أو الويب. في صفحة الويب ، تستخدم التقنيات المساعدة مثل قراء الشاشة نموذج كائن المستند (DOM) لاستنتاج بنية وسياق الصفحة. يمكن تصميم صفحات الويب بحيث يكون بنية DOM صديقة لهذه التقنيات دون التأثير على التصميم المرئي للصفحة. على النقيض من ذلك ، فإن الإخراج الأساسي لـ CLI هو نص عادي ، دون ترميز مخفي. يعمل المحاكي الطرفي بمثابة “وكيل المستخدم” لتطبيقات النص ، مما يجعل الأحرف حسب توجيهات تطبيق الخادم. التقنيات المساعدة الوصول إلى مصفوفة الشخصيات هذه ، وتحليل تصميمها ، ومحاولة استنتاج الهيكل. كما إرشادات WCAG2ICT ملاحظات ، تعني إمكانية الوصول في هذه المساحة ضمان توفر جميع إخراج النص للتقنيات المساعدة ، وأن المعلومات الهيكلية يتم نقلها بطريقة يمكن تحديدها برمجياً – حتى لو لم يكن هناك علامة صريحة.
في سعينا لتحسين قابلية استخدام GitHub CLI للمكفوفين ، والرؤية المنخفضة ، و Colorblind ، وجدنا أنفسنا في التنقل في مشهد مع الكثير من التوجيهات ، ولكن القليل من التقنيات الملموسة لتنفيذ التجارب التي يمكن الوصول إليها. لقد درسنا كيف تتفاعل التكنولوجيا المساعدة مع المحطات: كيف يقوم قراء الشاشة بمراجعة الإخراج ، وكيف يمكن تخصيص اللون والتباين ، وكيف يمكن استنتاج الإشارات الهيكلية من نص عادي. تحتوي معاينتنا العامة الأخيرة على استكشافات في حالات الاستخدام المختلفة في هذه المساحات.
إعادة التفكير في المطالبات والتقدم لقراء الشاشة
إحدى نقاط القوة الخاصة بـ GitHub CLI كتطبيق سطر الأوامر هي تجربتها الغنية ، والتي تمنح مستخدمينا واجهة تفاعلية لإدخال خيارات الأوامر. ومع ذلك ، فإن هذه التجربة التفاعلية الغنية تطرح عقبة على قراء شاشة تخليق الكلام: يمكن أن تكون الإشارات المرئية غير الألفابية والاستخدامات لإعادة رسم الشاشة الثابتة للتأثيرات المرئية أو الأخرى صعبة لتفسيرها بشكل صحيح على أنها الكلام.
لتقليل الارتباك وجعل من السهل على مستخدمي الأعمى والمنخفضين في الرؤية الإجابة على الأسئلة بثقة والتنقل في الخيارات ، نقدم تجربة مطالبة تتيح لقراء شاشة توليف الكلام نقل المطالبات بدقة للمستخدمين. تم تصميم Prodpter الجديد الخاص بنا باستخدام المصدر المفتوح لـ Charm charmbracelet/huh
مكتبة مطالبة.
حالة استخدام أخرى حيث يتم إعادة رسم المحطة للتأثير البصري عند إظهار أشرطة التقدم. يستخدم تطبيقنا الحالي “Spinner” الذي تم إجراؤه من خلال إعادة رسم الشاشة لعرض أحرف برايل مختلفة (نعم ، نقدر المفارقة) لإعطاء المستخدم الإشارة إلى أن أمرهم ينفذ. لا يتعامل قراء شاشة توليف الكلام إلى هذا جيدًا:
تم استبدال هذا بمؤشر تقدم نص ثابت (مع رسالة ذات صلة بالإجراء الذي يتم اتخاذه حيثما أمكن ، وتراجع إلى رسالة “عمل …” عامة). نحن نعمل على تحديد مجالات أخرى يمكننا زيادة تحسين النص السياقي.
اللون والتباين والتخصيص
اللون هو أكثر من ديكور في المحطة: إنه أداة حيوية لتسليط الضوء على المعلومات ، وأخطاء الإشارة ، وتوجيهات سير العمل. ولكن يمكن أن يكون اللون أيضًا حاجزًا – إذا كان التباين بين لون الخلفية الطرفية والنص المعروض عليه منخفضًا جدًا ، فسيواجه بعض المستخدمين صعوبة في تمييز المعلومات المعروضة. على عكس متصفح الويب ، لا يتم تعيين لون خلفية المحطة بواسطة التطبيق. تتم معالجة هذه المهمة من قبل محاكي محطة المستخدم. من أجل الحفاظ على التباين ، من المهم أن يأخذ تطبيق سطر الأوامر هذا المتغير في الاعتبار. لم تأخذ لوحة الألوان القديمة المستخدمة لتقديم تخفيض التنفيذ لون خلفية المحطة في الاعتبار ، مما يؤدي إلى انخفاض التباين في بعض الحالات.

الألوان نفسها مهمة أيضا. بيئات الطرفية المختلفة لها قدرات ألوان متنوعة (بعض الدعم 4 بت ، وبعض 8 بت ، وبعض 24 بت ، وما إلى ذلك). بغض النظر عن القدرة ، تمكن المحطات المستخدمين من تخصيص تفضيلات الألوان الخاصة بهم ، واختيار كيفية عرض الأشكال المختلفة. ومع ذلك ، تدعم معظم المحطات فقط تغيير مجموعة فرعية محدودة من الألوان: وهي الألوان الستة عشر في جدول الألوان 4 بت. بذلت Github CLI جهودًا مكثفة لمحاذاة لوحات الألوان الخاصة بنا مع ألوان 4 بت حتى يتمكن مستخدمونا من تخصيص تجربتهم تمامًا باستخدام تفضيلاتهم الطرفية. بنينا على رأس أسس إمكانية الوصول رائدة من قبل التمهيدي عند تحديد أي ألوان 4 بت لاستخدامها.

تهدف تحسيناتنا إلى دعم مجموعة واسعة من احتياجات المطورين ، من المستخدمين المكفوفين الذين يحتاجون إلى قراء الشاشة ، إلى مستخدمي الرؤية المنخفضة الذين يحتاجون إلى تباين عالٍ ، إلى مستخدمين Colorblind الذين يحتاجون إلى خيارات ألوان قابلة للتخصيص. لكن هذه المعاينة العامة لا تشمأ نهاية التزام فريقنا بتمكين جميع المطورين من استخدام Github CLI. نعتزم تسهيل على مؤلفي التمديد لدينا تنفيذ نفس تحسينات إمكانية الوصول التي أجريناها إلى CORE CLI. سيسمح ذلك للمستخدمين بتجربة متماسكة في جميع أوامر GitHub CLI ، الرسمية أو التي يتم صيانتها ، بحيث يمكن الوصول إلى المزيد من سير العمل بشكل افتراضي. نحن نبحث أيضًا في تجارب لتخصيص تنسيق إخراج الجداول من خلال الأوامر ليتم قراءتها/تفسيرها بسهولة أكبر بواسطة قراء الشاشة. نحن متحمسون لمواصلة رحلة الوصول لدينا.
لم نتمكن من الوصول إلى هذا الحد دون تعاون مع أصدقائنا في سحر وزملائنا في فريق الوصول إلى GitHub.
دعوة للحصول على ردود الفعل
ندعوك لمساعدتنا في هدفنا لجعل Github Cli تجربة لجميع المطورين:
- جربها: تحديث github cli إلى v2.72.0 وركض
gh a11y
في المحطة الخاصة بك لمعرفة المزيد حول تمكين هذه الميزات الجديدة التي يمكن الوصول إليها. - شارك تجربتك: انضم إلى لدينا مناقشة إمكانية الوصول إلى Github CLI لتقديم الملاحظات أو الاقتراحات.
- تواصل معنا: إذا كانت لديك تجربة حية ذات صلة بأشخاص إمكانية الوصول لدينا ، أو تواصل مع فريق إمكانية الوصول أو المشاركة في لوحة المناقشة.
نتطلع
يعد تكييف معايير إمكانية الوصول لخط الأوامر تحديًا – وفرصة. نحن ملتزمون بمشاركة نهجنا والتعلم من المجتمع والمساعدة في وضع معيار جديد لأدوات CLI التي يمكن الوصول إليها.
شكرًا لك على بناء GitHub أكثر سهولة معنا.
هل تريد مساعدتنا في جعل جيثب المنزل لجميع المطورين؟ يتعلم أكثر حول جهود الوصول إلى جيثب.
كتبه
اترك تعليقاً