-
Notifications
You must be signed in to change notification settings - Fork 0
Accessibility fi
🌎 Kieli: Suomi — katso kaikki 33 kieltä
LockedIn CLI on vitsi, mutta sen saavutettavuus ei ole. Näin visuaalisesti rikas terminaalikäyttöliittymä — liukuväristä logo, reunuksilla varustetut kortit, braille-spinnerit, emojit — on aidosti vaikea käyttää avustavalla teknologialla, ellei sitä suunnitella sitä varten. Tämä sivu selittää mitä CLI tekee, miten se otetaan käyttöön ja yleiset parhaat käytännöt sen takana (hyödyllisiä paljon tämän projektin ulkopuolellakin).
| Tila | Lippu | Ympäristömuuttuja | Mitä se tekee |
|---|---|---|---|
| Ruudunlukija |
--accessible (--a11y, --screen-reader) |
LOCKEDIN_ACCESSIBLE=1, tai TERM=dumb
|
Siisti lineaarinen pelkkä teksti: ei reunuksia, ei ASCII-taidetta, ei spinnerin liikettä, ei koristeellisia merkkejä; väri pois päältä; lyhyt kehote; semanttiset maamerkit ("Julkaisu:" … "(julkaisu päättyy)"). |
| Korkea kontrasti |
--high-contrast (--hc) |
LOCKEDIN_HIGH_CONTRAST=1 |
Korkean kontrastin paletti heikkonäköisille: puhtaan valkoinen toissijainen teksti, kirkkaammat korostukset, ei himmennystä, kiinteä korostusväri matalakontrastisen liukuvärin sijaan. |
| Matala häiriö |
--low-distraction (--calm, --reduce-motion) |
LOCKEDIN_LOW_DISTRACTION=1, LOCKEDIN_REDUCE_MOTION=1
|
Vähennetty liike (ei spinnerin animaatiota), ei koristeellisia emojeja, rauhallinen kiinteä väri — säilyttää visuaalisen asettelun. Vähentää kognitiivista/aistikuormaa. |
| Pelkistetty / mustavalkoinen |
--plain (--mono, --monochrome) |
LOCKEDIN_PLAIN=1, tai NO_COLOR=1
|
Poistaa kaiken värin säilyttäen täyden asettelun, reunukset ja emojit. Terminaaleille, joilla on huono värituki, lokitukseen tai mieltymykseen. Ohittaa FORCE_COLOR:n. |
Ne yhdistyvät: --high-contrast --low-distraction antaa kirkkaan, rauhallisen,
emojittoman käyttöliittymän; ruudunlukijaa käyttävä henkilö TERM=dumb
-terminaalissa saa saavutettavan tilan automaattisesti. Kun tilat ovat
ristiriidassa, rajoittavampi voittaa — mustavalkoinen voittaa väripaletin, ja
ruudunlukijatila korvaa pelkistetyn tilan.
lockedin --accessible post
lockedin --high-contrast
lockedin --plain post
LOCKEDIN_LOW_DISTRACTION=1 lockedin auraSinun ei tarvitse päättää etukäteen. Interaktiivisen session sisällä
/a11y-slash-komento on aito, toimiva ohjauspaneeli (saavutettavuus ei ole
satiiria):
| Kirjoita | Tulos |
|---|---|
/a11y |
Näyttää kaikkien neljän tilan nykyisen tilan (päällä/pois) |
/a11y <tila> |
Kytkee yhden: screen-reader, high-contrast, low-distraction, plain (myös aliakset kuten sr / hc / calm / mono toimivat) |
/a11y reset |
Sammuttaa kaikki tilat |
Tila näytetään aina selkeänä päällä/pois-sanana, ei koskaan pelkällä värillä — juuri ne käyttäjät, joita tämä palvelee, eivät välttämättä havaitse väriä. Paneeli on täysin lokalisoitu.
Nämä ovat periaatteet, joita sovelsimme — samat pätevät mihin tahansa terminaalityökaluun.
- Semantiikka koristelun sijaan. Ruudunlukija lukee merkkejä. Reunusviivoista tulee "vaakaviiva, vaakaviiva…"; ASCII-taidelogo on melua. Saavutettava tila korvaa visuaalisen rakenteen sanoilla: splash ilmoittaa "LockedIn CLI" tekstinä, ja korteille annetaan maamerkit ("Julkaisu:", "(julkaisu päättyy)"), jotta käyttäjä tietää, mistä lohko alkaa ja päättyy.
- Älä koskaan luota pelkkään väriin tai kuvakkeisiin. Merkitys, jonka välittää vain väri tai emoji, on näkymätön joillekin käyttäjille. Pidä teksti merkityksellisenä myös värin ollessa pois — esim. "Yhdistetty Avan kanssa" toimii hyvin ilman ✔:ää.
- Tarjoa tekstivaihtoehtoja / poista melu. Koristeelliset emojit luetaan ääneen sanallisesti ("📥" → "saapuvan postin kansio"). Saavutettava tila poistaa puhtaasti koristeelliset merkit ja säilyttää sanat; matala häiriö poistaa äänekkäät emojit mutta säilyttää asettelun näkeville käyttäjille, jotka haluavat vain rauhaa.
-
Kunnioita vähennettyä liikettä. Animaatio (braille-spinneri) on häiriö
ja voi laukaista tasapainoelinreaktioita. Saavutettava ja matalan häiriön
tilat eivät animoi — ne tulostavat tilan kerran, staattisesti. Tämä
heijastaa webin
prefers-reduced-motion-asetusta. - Tarjoa korkea kontrasti. Matalakontrastinen "himmeän harmaa" toissijainen teksti epäonnistuu WCAG-kontrastissa monille käyttäjille. Korkean kontrastin tila vaihtaa sen puhtaaseen valkoiseen ja kirkastaa korostukset.
- Vähennä kognitiivista kuormaa. Näön lisäksi jotkut käyttäjät tarvitsevat vähemmän: vähemmän koristeita, ei liikettä, ei emojeja. Se on tässä ensiluokkainen tila, ei jälkiajatus.
-
Kunnioita alustan käytäntöjä. CLI kunnioittaa jo
NO_COLOR-muuttujaa; se myös käsitteleeTERM=dumb:n (jonka monet ruudunlukijat ja Emacs-kuoret asettavat) kuin "mene saavutettavaan tilaan", ja lukeeLOCKEDIN_REDUCE_MOTION:n. Käyttäjän olemassa olevien signaalien tunnistaminen on parempi kuin uuden asetuksen lisääminen. - Tee siitä testattava, ja pidä se testattuna. Saavutettavuus, joka ei ole testiportissa, rappeutuu. Testisarja varmistaa, että saavutettavassa tulosteessa ei ole koristeellisia merkkejä, että maamerkit ovat läsnä, että korkea kontrasti vaihtaa paletin ja että matala häiriö pysyy reunustettuna — jokaisella kielellä.
Suuntamuotoilu on myös oletuksena turvallinen. Arabia, persia, heprea ja urdu
eivät oletuksena lähetä bidi-ohjausmerkkejä, ellei käyttäjä nimenomaisesti aseta
LOCKEDIN_BIDI=on terminaalille, jonka tiedetään tukevan eristeitä;
ruudunlukijatila poistaa ne silloinkin. Mikään TTY-tunnistus tai
terminaaliluettelo ei voi ohittaa tätä turvallista oletusta.
-
a11yFilter(s)poistaa koristeellisen Unicoden (reunusviivat, lohkot, geometriset, tekniset, dingbatit, braillen, emojit) ja tasaa tekstin vasempaan reunaan — sovelletaan kaikkeen tulosteeseen saavutettavassa tilassa. -
emojiFilter(s)on kevyempi matalan häiriön suodatin: se poistaa vain äänekkäät emojit/symbolit ja säilyttää reunusviivat, luetelmamerkit, nuolet ja ANSI-värin, jotta visuaalinen asettelu säilyy. - Väriobjekti
Cvaihdetaan paikallaan korkean kontrastin paletiksi; liukuvärit palautuvat kiinteään korostukseen, kun korkea kontrasti tai matala häiriö on käytössä. Pelkistetty tila pakottaa jokaisenC-merkinnän tyhjäksi (väri täysin pois, jopaFORCE_COLOR:n alla) koskematta asetteluun. -
renderSplashilla, spinnerillä,renderPromptilla jacardilla on semanttiset haarat saavutettavaa tilaa varten (pelkkä teksti, ei liikettä, maamerkit). - Tunnistus asuu
detectAccessible/detectHighContrast/detectLowDistraction/detectPlain-funktioissa; sisääntulokohta soveltaa niitä ennen renderöintiä. Session sisäinen/a11y-komento (handleA11y+renderA11yStatus) kytkee samaa moduulitason tilaa reaaliajassa.
Opetusohjelman arviointilista sisältää saavutettavuusvaiheen, ja se on hyvä tapa missä tahansa:
Aja
lockedin --accessible <komentosi>ja varmista, että se toimii siistinä pelkkänä tekstinä — ei uusia koristeellisia merkkejä, jotka livahtavat suodattimen ohi — ja että jokaisella uudella jäsennellyllä lohkolla on maamerkki. Kokeile sitten--high-contrast,--low-distractionja--plain(jonka täytyy tulostaa ei värikoodeja mutta säilyttää asettelu). Uusi käyttäjälle näkyvä teksti tarvitsee avaimen jokaisessa kielipaketissa, jotta/a11y-paneeli ja ohje pysyvät käännettyinä.
Satiiria. Ei sidoksissa LinkedIniin. 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.