Skip to content

Accessibility kn

James Morris edited this page Jul 29, 2026 · 1 revision

ಅಕ್ಸೆಸಿಬಿಲಿಟಿ

🌎 ಭಾಷೆ: ಕನ್ನಡಎಲ್ಲಾ 33 ಭಾಷೆಗಳನ್ನು ನೋಡಿ

LockedIn CLI ಒಂದು ತಮಾಷೆ, ಆದರೆ ಅದರ accessibility ಅಲ್ಲ. ಇಷ್ಟು ದೃಶ್ಯ-ಸಮೃದ್ಧ terminal UI — gradient wordmark, box-drawing card, braille spinner, emoji — ಅನ್ನು ಸಹಾಯಕ ತಂತ್ರಜ್ಞಾನದೊಂದಿಗೆ ಬಳಸುವುದು ನಿಜವಾಗಿ ಕಷ್ಟ, ನೀವು ಅದಕ್ಕಾಗಿ design ಮಾಡದ ಹೊರತು. ಈ ಪುಟ ವಿವರಿಸುತ್ತದೆ CLI ಏನು ಮಾಡುತ್ತದೆ, ಅದನ್ನು ಹೇಗೆ ಆನ್ ಮಾಡುವುದು, ಮತ್ತು ಅದರ ಹಿಂದಿನ ಸಾಮಾನ್ಯ best practice (ಈ ಪ್ರಾಜೆಕ್ಟ್‌ನ ಆಚೆಗೂ ಉಪಯುಕ್ತ).

ನಾಲ್ಕು ಮೋಡ್‌ಗಳು

ಮೋಡ್ Flag Env ಅದು ಏನು ಮಾಡುತ್ತದೆ
Screen reader --accessible (--a11y, --screen-reader) LOCKEDIN_ACCESSIBLE=1, ಅಥವಾ TERM=dumb ಶುದ್ಧ linear plain text: border ಇಲ್ಲ, ASCII art ಇಲ್ಲ, spinner ಚಲನೆ ಇಲ್ಲ, decorative glyph ಇಲ್ಲ; colour ಆಫ್; ಚಿಕ್ಕ prompt; semantic landmark ("Post:" … "(end of post)").
High contrast --high-contrast (--hc) LOCKEDIN_HIGH_CONTRAST=1 ಕಡಿಮೆ ದೃಷ್ಟಿಗಾಗಿ ಒಂದು high-contrast palette: ಶುದ್ಧ-ಬಿಳಿ secondary text, ಪ್ರಕಾಶಮಾನ accent, dim ಇಲ್ಲ, low-contrast gradient ಬದಲಿಗೆ solid accent.
Low distraction --low-distraction (--calm, --reduce-motion) LOCKEDIN_LOW_DISTRACTION=1, LOCKEDIN_REDUCE_MOTION=1 ಕಡಿಮೆ ಚಲನೆ (spinner animation ಇಲ್ಲ), decorative emoji ಇಲ್ಲ, ಶಾಂತ solid colour — visual layout ಅನ್ನು ಉಳಿಸುತ್ತದೆ. ಕಡಿಮೆ cognitive/sensory ಹೊರೆಗಾಗಿ.
Plain / monochrome --plain (--mono, --monochrome) LOCKEDIN_PLAIN=1, ಅಥವಾ NO_COLOR=1 ಪೂರ್ಣ layout, border, ಮತ್ತು emoji ಉಳಿಸಿಕೊಂಡು ಎಲ್ಲಾ colour ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ. ದುರ್ಬಲ colour support ಇರುವ terminal, logging, ಅಥವಾ ಆದ್ಯತೆಗಾಗಿ. FORCE_COLOR ಅನ್ನು override ಮಾಡುತ್ತದೆ.

ಇವು compose ಆಗುತ್ತವೆ: --high-contrast --low-distraction ನಿಮಗೆ ಒಂದು ಪ್ರಕಾಶಮಾನ, ಶಾಂತ, emoji-ಇಲ್ಲದ UI ಕೊಡುತ್ತದೆ; TERM=dumb terminal ನಲ್ಲಿ ಒಬ್ಬ screen-reader ಬಳಕೆದಾರ ಸ್ವಯಂಚಾಲಿತವಾಗಿ accessible ಮೋಡ್ ಪಡೆಯುತ್ತಾನೆ. ಮೋಡ್‌ಗಳು ಸಂಘರ್ಷಿಸಿದಾಗ, ಹೆಚ್ಚು restrictive ಆದದ್ದು ಗೆಲ್ಲುತ್ತದೆ — monochrome ಒಂದು colour palette ಅನ್ನು ಸೋಲಿಸುತ್ತದೆ, ಮತ್ತು screen-reader ಮೋಡ್ plain ಅನ್ನು ಮೀರುತ್ತದೆ.

lockedin --accessible post
lockedin --high-contrast
lockedin --plain post
LOCKEDIN_LOW_DISTRACTION=1 lockedin aura

ಒಂದು session ಒಳಗೆ ಮೋಡ್ switch ಮಾಡುವುದು: /a11y

ನೀವು ಮೊದಲೇ ನಿರ್ಧರಿಸಬೇಕಿಲ್ಲ. interactive session ಒಳಗೆ, /a11y slash command ಒಂದು ನಿಜವಾದ, ಕೆಲಸ ಮಾಡುವ control panel (accessibility satire ಅಲ್ಲ):

ಟೈಪ್ ಮಾಡಿ ಫಲಿತಾಂಶ
/a11y ನಾಲ್ಕೂ ಮೋಡ್‌ಗಳ ಪ್ರಸ್ತುತ ಸ್ಥಿತಿ (on/off) ತೋರಿಸುತ್ತದೆ
/a11y <mode> ಒಂದನ್ನು toggle ಮಾಡಿ: screen-reader, high-contrast, low-distraction, plain (sr / hc / calm / mono ನಂತಹ alias ಗಳೂ ಕೆಲಸ ಮಾಡುತ್ತವೆ)
/a11y reset ಪ್ರತಿ ಮೋಡ್ ಅನ್ನು ಆಫ್ ಮಾಡುತ್ತದೆ

ಸ್ಥಿತಿಯನ್ನು ಯಾವಾಗಲೂ ಒಂದು ಸ್ಪಷ್ಟ on/off ಪದ ಆಗಿ ತೋರಿಸಲಾಗುತ್ತದೆ, ಎಂದಿಗೂ ಕೇವಲ colour ಅಲ್ಲ — ಇದು ಸೇವೆ ಮಾಡುವ ಬಳಕೆದಾರರೇ ಬಹುಶಃ colour ಅನ್ನು ಗ್ರಹಿಸದಿರಬಹುದು. panel ಸಂಪೂರ್ಣವಾಗಿ localized ಆಗಿದೆ.

ಅದರ ಹಿಂದಿನ best practice ಗಳು

ಇವು ನಾವು ಅನ್ವಯಿಸಿದ ತತ್ವಗಳು — ಅವೇ ಯಾವುದೇ terminal tool ಗೆ ಅನ್ವಯಿಸುತ್ತವೆ.

  1. ಅಲಂಕಾರಕ್ಕಿಂತ semantics. ಒಂದು screen reader character ಗಳನ್ನು ಓದುತ್ತದೆ. Box-drawing border ಗಳು "horizontal line, horizontal line…" ಆಗುತ್ತವೆ; ಒಂದು ASCII-art wordmark ಗದ್ದಲ. Accessible ಮೋಡ್ visual ರಚನೆಯನ್ನು ಪದಗಳಿಂದ ಬದಲಾಯಿಸುತ್ತದೆ: splash "LockedIn CLI" ಅನ್ನು text ಆಗಿ ಘೋಷಿಸುತ್ತದೆ, ಮತ್ತು card ಗಳಿಗೆ landmark ("Post:", "(end of post)") ಸಿಗುತ್ತವೆ ಇದರಿಂದ ಬಳಕೆದಾರರು block ಎಲ್ಲಿ ಆರಂಭ ಮತ್ತು ಮುಗಿಯುತ್ತದೆ ಎಂದು ತಿಳಿಯುತ್ತಾರೆ.
  2. ಎಂದಿಗೂ ಕೇವಲ colour ಅಥವಾ icon ಮೇಲೆ ಅವಲಂಬಿಸಬೇಡಿ. ಕೇವಲ colour ಅಥವಾ ಒಂದು emoji ಹೊತ್ತ ಅರ್ಥ ಕೆಲವು ಬಳಕೆದಾರರಿಗೆ ಅದೃಶ್ಯ. colour ಆಫ್ ಇದ್ದಾಗಲೂ text ಅನ್ನು ಅರ್ಥಪೂರ್ಣವಾಗಿ ಇಡಿ — ಉದಾ. ✔ ಹೋದ ಮೇಲೂ "Connected with Ava" ಸರಿಯಾಗಿ ಓದುತ್ತದೆ.
  3. Text ಪರ್ಯಾಯ ಕೊಡಿ / ಗದ್ದಲ ತೆಗೆಯಿರಿ. Decorative emoji ಗಳು ವಿವರವಾಗಿ ಗಟ್ಟಿಯಾಗಿ ಓದಲ್ಪಡುತ್ತವೆ ("📥" → "inbox tray"). Accessible ಮೋಡ್ ಶುದ್ಧ decorative glyph ಗಳನ್ನು ತೆಗೆದು ಪದಗಳನ್ನು ಇಡುತ್ತದೆ; low-distraction ಗಟ್ಟಿ emoji ತೆಗೆಯುತ್ತದೆ ಆದರೆ ಕೇವಲ ಶಾಂತಿ ಬಯಸುವ ದೃಷ್ಟಿಯುಳ್ಳ ಬಳಕೆದಾರರಿಗಾಗಿ layout ಇಡುತ್ತದೆ.
  4. ಕಡಿಮೆ ಚಲನೆಯನ್ನು ಗೌರವಿಸಿ. Animation (braille spinner) ಒಂದು distraction ಮತ್ತು ಒಂದು vestibular trigger ಆಗಬಹುದು. Accessible ಮತ್ತು low-distraction ಮೋಡ್‌ಗಳು animate ಮಾಡುವುದಿಲ್ಲ — ಅವು status ಅನ್ನು ಒಮ್ಮೆ, ಸ್ಥಿರವಾಗಿ print ಮಾಡುತ್ತವೆ. ಇದು web ನ prefers-reduced-motion ಅನ್ನು ಪ್ರತಿಬಿಂಬಿಸುತ್ತದೆ.
  5. High contrast ಕೊಡಿ. Low-contrast "muted gray" secondary text ಅನೇಕ ಬಳಕೆದಾರರಿಗೆ WCAG contrast ನಲ್ಲಿ fail ಆಗುತ್ತದೆ. High-contrast ಮೋಡ್ ಅದನ್ನು ಶುದ್ಧ ಬಿಳಿಗೆ ಬದಲಾಯಿಸುತ್ತದೆ ಮತ್ತು accent ಗಳನ್ನು ಪ್ರಕಾಶಗೊಳಿಸುತ್ತದೆ.
  6. Cognitive load ಕಡಿಮೆ ಮಾಡಿ. ದೃಷ್ಟಿಯ ಆಚೆಗೆ, ಕೆಲವು ಬಳಕೆದಾರರಿಗೆ ಕಡಿಮೆ ಬೇಕು: ಕಡಿಮೆ ಅಲಂಕಾರ, ಚಲನೆ ಇಲ್ಲ, emoji ಇಲ್ಲ. ಇಲ್ಲಿ ಅದು ಒಂದು first-class ಮೋಡ್, ನಂತರ ಯೋಚಿಸುವ ವಿಷಯವಲ್ಲ.
  7. Platform convention ಗೌರವಿಸಿ. CLI ಈಗಾಗಲೇ NO_COLOR ಅನ್ನು ಗೌರವಿಸುತ್ತದೆ; ಅದು TERM=dumb ಅನ್ನೂ (ಅನೇಕ screen-reader ಮತ್ತು Emacs shell export ಮಾಡುವುದು) "accessible ಆಗು" ಎಂದು ಪರಿಗಣಿಸುತ್ತದೆ, ಮತ್ತು LOCKEDIN_REDUCE_MOTION ಅನ್ನು ಓದುತ್ತದೆ. ಬಳಕೆದಾರರ ಅಸ್ತಿತ್ವದ signal ಗಳನ್ನು ಗುರುತಿಸುವುದು ಅವರಿಗೆ ಇನ್ನೊಂದು ವಿಷಯ configure ಮಾಡಿಸುವುದಕ್ಕಿಂತ ಉತ್ತಮ.
  8. ಅದನ್ನು testable ಮಾಡಿ, ಮತ್ತು tested ಇಡಿ. test ಗೇಟ್‌ನಲ್ಲಿ ಇಲ್ಲದ accessibility ಕೊಳೆಯುತ್ತದೆ. suite accessible output ನಲ್ಲಿ ಯಾವುದೇ decorative glyph ಇಲ್ಲ, landmark ಇವೆ, high contrast palette ಬದಲಾಯಿಸುತ್ತದೆ, ಮತ್ತು low-distraction border-aligned ಆಗಿ ಉಳಿಯುತ್ತದೆ ಎಂದು ಪ್ರತಿ ಭಾಷೆಯಲ್ಲಿ assert ಮಾಡುತ್ತದೆ.

Directional formatting ಕೂಡ fail-closed. ಅರೇಬಿಕ್, ಪರ್ಷಿಯನ್, ಹೀಬ್ರೂ, ಮತ್ತು ಉರ್ದು ಯಾವುದೇ bidi control ಅನ್ನು ಹೊರಸೂಸುವುದಿಲ್ಲ, ಬಳಕೆದಾರ isolate ಗಳನ್ನು support ಮಾಡುವುದೆಂದು ತಿಳಿದ terminal ಗಾಗಿ ಸ್ಪಷ್ಟವಾಗಿ LOCKEDIN_BIDI=on ಸೆಟ್ ಮಾಡದ ಹೊರತು; screen-reader ಮೋಡ್ ಆಗಲೂ ಅವನ್ನು ತೆಗೆಯುತ್ತದೆ. ಯಾವುದೇ TTY probe ಅಥವಾ terminal allowlist ಆ ಸುರಕ್ಷಿತ default ಅನ್ನು override ಮಾಡಲಾಗದು.

ಇದು ಹೇಗೆ ಕಟ್ಟಲ್ಪಟ್ಟಿದೆ (ಕುತೂಹಲಿಗಳಿಗಾಗಿ)

  • a11yFilter(s) decorative Unicode (box-drawing, block, geometric, technical, dingbats, braille, emoji) ಅನ್ನು ತೆಗೆದು text ಅನ್ನು ಎಡಕ್ಕೆ flush ಮಾಡುತ್ತದೆ — accessible ಮೋಡ್‌ನಲ್ಲಿ ಎಲ್ಲಾ output ಗೆ ಅನ್ವಯ.
  • emojiFilter(s) ಹಗುರ low-distraction filter: ಇದು ಕೇವಲ ಗಟ್ಟಿ emoji/symbol ತೆಗೆಯುತ್ತದೆ ಮತ್ತು box-drawing, bullet, arrow, ಮತ್ತು ANSI colour ಅನ್ನು ಉಳಿಸುತ್ತದೆ, ಇದರಿಂದ visual layout ಉಳಿಯುತ್ತದೆ.
  • colour object C ಅನ್ನು ಸ್ಥಳದಲ್ಲೇ high-contrast palette ಗೆ ಬದಲಾಯಿಸಲಾಗುತ್ತದೆ; high-contrast ಅಥವಾ low-distraction ಆನ್ ಇದ್ದಾಗ gradient ಗಳು solid accent ಗೆ fall back ಆಗುತ್ತವೆ. Plain ಮೋಡ್ ಪ್ರತಿ C entry ಅನ್ನು ಖಾಲಿ ಮಾಡುತ್ತದೆ (colour ಸಂಪೂರ್ಣ ಆಫ್, FORCE_COLOR ಅಡಿಯಲ್ಲೂ) layout ಅನ್ನು ಮುಟ್ಟದೆ.
  • renderSplash, spinner, renderPrompt, ಮತ್ತು card ಗೆ accessible ಮೋಡ್‌ಗಾಗಿ semantic branch ಗಳಿವೆ (plain text, ಚಲನೆ ಇಲ್ಲ, landmark).
  • Detection detectAccessible / detectHighContrast / detectLowDistraction / detectPlain ನಲ್ಲಿ ಇರುತ್ತದೆ; entry point render ಗೆ ಮೊದಲು ಅವನ್ನು ಅನ್ವಯಿಸುತ್ತದೆ. in-session /a11y command (handleA11y + renderA11yStatus) ಅದೇ module-level state ಅನ್ನು live toggle ಮಾಡುತ್ತದೆ.

ಒಂದು feature ಸೇರಿಸಿದಾಗ ಇದನ್ನು ಕೆಲಸ ಮಾಡುತ್ತ ಇಡುವುದು

ಟ್ಯುಟೋರಿಯಲ್‌ನ review checklist ನಲ್ಲಿ ಒಂದು accessibility ಹಂತ ಸೇರಿದೆ, ಮತ್ತು ಇದು ಎಲ್ಲೆಡೆ ಒಂದು ಒಳ್ಳೆಯ ಅಭ್ಯಾಸ:

lockedin --accessible <your command> ಚಲಾಯಿಸಿ ಮತ್ತು ಅದು ಶುದ್ಧ plain text ಆಗಿ ಓದುತ್ತದೆ ಎಂದು ಖಚಿತಪಡಿಸಿ — filter ದಾಟಿ ಯಾವುದೇ ಹೊಸ decorative glyph ನುಸುಳುತ್ತಿಲ್ಲ — ಮತ್ತು ಯಾವುದೇ ಹೊಸ structured block ಗೆ ಒಂದು landmark ಇದೆ. ನಂತರ --high-contrast, --low-distraction, ಮತ್ತು --plain ಪ್ರಯತ್ನಿಸಿ (ಇವು ಯಾವುದೇ colour code ಹೊರಸೂಸಬಾರದು ಆದರೆ layout ಇಡಬೇಕು). ಹೊಸ user-visible text ಗೆ ಪ್ರತಿ ಭಾಷೆಯ bundle ನಲ್ಲಿ ಒಂದು key ಬೇಕು, ಇದರಿಂದ /a11y panel ಮತ್ತು help ಅನುವಾದಿತವಾಗಿ ಉಳಿಯುತ್ತವೆ.


Satire. LinkedIn ಜೊತೆ ಸಂಬಂಧಿತವಲ್ಲ. GPL-3.0-or-later.

📘 LockedIn CLI wiki

Tutorial

Reference


Satire · Sátira · 風刺. Not affiliated with LinkedIn. GPL-3.0-or-later.

Clone this wiki locally