-
Notifications
You must be signed in to change notification settings - Fork 0
Accessibility sv
🌎 Språk: Svenska — se alla 33 språk
LockedIn CLI är ett skämt, men dess tillgänglighet är det inte. Ett terminal-UI så här visuellt rikt — gradientlogotyp, kort med rutlinjer, punktskrifts- spinnare, emoji — är genuint svårt att använda med hjälpmedelsteknik om man inte designar för det. Den här sidan förklarar vad CLI:n gör, hur man slår på det, och de allmänna bästa praxis bakom det (användbart långt utöver det här projektet).
| Läge | Flagga | Miljövariabel | Vad det gör |
|---|---|---|---|
| Skärmläsare |
--accessible (--a11y, --screen-reader) |
LOCKEDIN_ACCESSIBLE=1, eller TERM=dumb
|
Ren linjär vanlig text: inga kanter, ingen ASCII-konst, ingen spinnerrörelse, inga dekorativa glyfer; färg av; kort prompt; semantiska landmärken ("Inlägg:" … "(slut på inlägg)"). |
| Hög kontrast |
--high-contrast (--hc) |
LOCKEDIN_HIGH_CONTRAST=1 |
En högkontrastpalett för nedsatt syn: helvit sekundärtext, ljusare accenter, ingen nedtoning, solid accentfärg istället för lågkontrast-gradienten. |
| Låg distraktion |
--low-distraction (--calm, --reduce-motion) |
LOCKEDIN_LOW_DISTRACTION=1, LOCKEDIN_REDUCE_MOTION=1
|
Minskad rörelse (ingen spinneranimation), inga dekorativa emoji, lugn solid färg — behåller den visuella layouten. För minskad kognitiv/sensorisk belastning. |
| Enkel / monokrom |
--plain (--mono, --monochrome) |
LOCKEDIN_PLAIN=1, eller NO_COLOR=1
|
Inaktiverar all färg samtidigt som hela layouten, kanterna och emojin behålls. För terminaler med dåligt färgstöd, loggning, eller preferens. Åsidosätter FORCE_COLOR. |
De kombineras: --high-contrast --low-distraction ger dig ett ljust,
lugnt, emojifritt UI; en skärmläsaranvändare på en TERM=dumb-terminal får
tillgängligt läge automatiskt. När lägen krockar vinner det mest
restriktiva — monokrom slår en färgpalett, och skärmläsarläge åsidosätter
enkelt läge.
lockedin --accessible post
lockedin --high-contrast
lockedin --plain post
LOCKEDIN_LOW_DISTRACTION=1 lockedin auraDu behöver inte bestämma i förväg. Inuti den interaktiva sessionen är
/a11y-slash-kommandot en riktig, fungerande kontrollpanel
(tillgänglighet är inte satiren):
| Skriv | Resultat |
|---|---|
/a11y |
Visa det aktuella tillståndet (på/av) för alla fyra lägen |
/a11y <läge> |
Växla ett: screen-reader, high-contrast, low-distraction, plain (alias som sr / hc / calm / mono fungerar också) |
/a11y reset |
Stäng av alla lägen |
Tillstånd visas alltid som ett explicit på/av-ord, aldrig enbart färg — just de användare det här tjänar kanske inte uppfattar färgen. Panelen är helt lokaliserad.
Det här är principerna vi tillämpade — samma gäller för vilket terminalverktyg som helst.
- Semantik framför dekoration. En skärmläsare läser tecken. Rutlinjer blir "horisontell linje, horisontell linje…"; en ASCII-konst-logotyp är brus. Tillgängligt läge ersätter visuell struktur med ord: splashen tillkännager "LockedIn CLI" som text, och kort får landmärken ("Inlägg:", "(slut på inlägg)") så att användare vet var ett block börjar och slutar.
- Lita aldrig enbart på färg eller ikoner. Betydelse som endast förmedlas av färg eller en emoji är osynlig för vissa användare. Håll texten meningsfull med färgen av — t.ex. läses "Kopplad med Ava" bra när ✔ är borta.
- Erbjud textalternativ / ta bort bruset. Dekorativa emoji läses upp ordrikt ("📥" → "inkorgsfack"). Tillgängligt läge tar bort rent dekorativa glyfer och behåller orden; låg distraktion tar bort de högljudda emojin men behåller layouten för seende användare som bara vill ha lugn.
-
Respektera minskad rörelse. Animation (punktskrifts-spinnaren) är en
distraktion och kan vara en vestibulär utlösare. Tillgängligt och
lågdistraktionslägen animerar inte — de skriver ut statusen en gång,
statiskt. Detta speglar webbens
prefers-reduced-motion. - Erbjud hög kontrast. Lågkontrast "dämpad grå" sekundärtext klarar inte WCAG-kontrast för många användare. Högkontrastläge byter ut det mot rent vitt och ljusare accenter.
- Minska kognitiv belastning. Bortom syn behöver vissa användare mindre: färre finesser, ingen rörelse, ingen emoji. Det är ett förstklassigt läge här, inte en eftertanke.
-
Respektera plattformskonventioner. CLI:n respekterar redan
NO_COLOR; den behandlar ocksåTERM=dumb(vilket många skärmläsare och Emacs-skal exporterar) som "gå tillgängligt", och läserLOCKEDIN_REDUCE_MOTION. Att upptäcka användarens befintliga signaler slår att få dem att konfigurera ännu en sak. - Gör det testbart, och håll det testat. Tillgänglighet som inte är i testgrinden ruttnar. Sviten säkerställer att tillgänglig utdata inte har dekorativa glyfer, att landmärken finns, att hög kontrast byter paletten, och att låg distraktion förblir kantjusterad — på varje språk.
Riktningsformatering är också fail-closed. Arabiska, persiska, hebreiska och
urdu skickar inga bidi-kontroller om inte användaren uttryckligen sätter
LOCKEDIN_BIDI=on för en terminal känd för att stödja isolat;
skärmläsarläge tar bort dem även då. Ingen TTY-sondering eller
terminal-tillåtelselista kan åsidosätta den säkra standarden.
-
a11yFilter(s)tar bort dekorativ Unicode (rutlinjer, block, geometriska, tekniska, dingbats, punktskrift, emoji) och vänsterjusterar texten — tillämpas på all utdata i tillgängligt läge. -
emojiFilter(s)är det lättare lågdistraktionsfiltret: det tar bara bort de högljudda emojin/symbolerna och behåller rutlinjer, punktlistor, pilar och ANSI-färg, så att den visuella layouten överlever. - Färgobjektet
Cbyts till en högkontrastpalett på plats; gradienter faller tillbaka till en solid accent när hög kontrast eller låg distraktion är på. Enkelt läge tvingar varjeC-post tom (färg helt av, även underFORCE_COLOR) utan att röra layouten. -
renderSplash, spinnaren,renderPrompt, ochcardhar semantiska grenar för tillgängligt läge (vanlig text, ingen rörelse, landmärken). - Detektering finns i
detectAccessible/detectHighContrast/detectLowDistraction/detectPlain; ingångspunkten tillämpar dem innan rendering. Sessionens/a11y-kommando (handleA11y+renderA11yStatus) växlar samma moduldelade tillstånd live.
Handledningens granskningschecklista innehåller ett tillgänglighetssteg, och det är en bra vana var som helst:
Kör
lockedin --accessible <ditt kommando>och bekräfta att det läses som ren text — inga nya dekorativa glyfer som smyger förbi filtret — och att varje nytt strukturerat block har ett landmärke. Testa sedan--high-contrast,--low-distraction, och--plain(som måste sända inga färgkoder men behålla layouten). Ny användarsynlig text behöver en nyckel i varje språkpaket, så att/a11y-panelen och hjälpen förblir översatta.
Satir. Inte anknuten till 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.