-
Notifications
You must be signed in to change notification settings - Fork 0
Accessibility he
🌎 שפה: עברית — ראו את כל 33 השפות
LockedIn CLI הוא בדיחה, אבל הנגישות שלו אינה בדיחה. ממשק טרמינל עשיר כל כך מבחינה חזותית — סמל מילולי בגרדיאנט, כרטיסים בציור-תיבות, ספינרים בברייל, אמוג'י — הוא באמת קשה לשימוש עם טכנולוגיה מסייעת אלא אם מעצבים עבורה. הדף הזה מסביר מה ה-CLI עושה, איך להפעיל את זה ואת שיטות העבודה המומלצות הכלליות מאחוריו (שימושיות הרבה מעבר לפרויקט הזה).
| מצב | דגל | משתנה סביבה | מה זה עושה |
|---|---|---|---|
| קורא מסך |
--accessible (--a11y, --screen-reader) |
LOCKEDIN_ACCESSIBLE=1, או TERM=dumb
|
טקסט פשוט לינארי ונקי: ללא גבולות, ללא ASCII art, ללא תנועת ספינר, ללא גליפים דקורטיביים; צבע כבוי; פרומפט קצר; ציוני דרך סמנטיים ("Post:" … "(end of post)"). |
| ניגודיות גבוהה |
--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 art הוא רעש. מצב נגיש מחליף מבנה חזותי במילים: מסך הפתיחה מכריז "LockedIn CLI" כטקסט, והכרטיסים מקבלים ציוני דרך ("Post:", "(end of post)") כדי שהמשתמשים ידעו היכן בלוק מתחיל ומסתיים.
- לעולם אל תסתמכו על צבע או אייקונים בלבד. משמעות שנישאת רק על ידי צבע או אמוג'י בלתי נראית לחלק מהמשתמשים. שמרו על הטקסט משמעותי כשהצבע כבוי — למשל "Connected with Ava" נקרא היטב ברגע שה-✔ נעלם.
- ספקו חלופות טקסט / הסירו את הרעש. אמוג'י דקורטיבי נקרא בקול באריכות ("📥" → "inbox tray"). מצב נגיש מסיר גליפים דקורטיביים גרידא ושומר את המילים; הסחת דעת מופחתת מסירה את האמוג'י הרועש אך שומרת על הפריסה למשתמשים רואים שרק רוצים רוגע.
-
כבדו תנועה מופחתת. אנימציה (ספינר הברייל) היא הסחת דעת ויכולה להיות טריגר
וסטיבולרי. מצבי נגיש והסחת דעת מופחתת אינם מונפשים — הם מדפיסים את הסטטוס
פעם אחת, באופן סטטי. זה משקף את
prefers-reduced-motionשל הרשת. - הציעו ניגודיות גבוהה. טקסט משני "אפור עמום" בעל ניגודיות נמוכה נכשל בניגודיות WCAG עבור משתמשים רבים. מצב ניגודיות גבוהה מחליף אותו בלבן טהור ומבהיר הדגשות.
- הפחיתו עומס קוגניטיבי. מעבר לראייה, חלק מהמשתמשים צריכים פחות: פחות קישוטים, ללא תנועה, ללא אמוג'י. זה מצב מהמעלה הראשונה כאן, לא מחשבה שלאחר מעשה.
-
כבדו מוסכמות פלטפורמה. ה-CLI כבר מכבד את
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.