Skip to content
Skip to the documentation
LegatoDocs

Legato · Documentation

Everything this browser does that Chrome does not

Every feature, what it is for, and the key that runs it. Written against the shipping browser: if something here disagrees with the product, this page is the bug.

You can read it straight through in about forty minutes, or jump to a section from the list above.

What Legato is

A normal web browser with a repair layer between the page and whoever reads it out — its own voice, or the screen reader you already use.

Worth knowingKeys on Windows and Linux. This page writes every shortcut the Mac way, with Cmd. On Windows and on Linux each of them uses Ctrl in exactly the same place and nothing else changes: Shift+Cmd+R here is Shift+Ctrl+R there. That holds for every shortcut on this page, with no exceptions — which is why it is said once, here, instead of being repeated in brackets after each one. Read out loud, those brackets double the length of every instruction you are trying to learn. Keys that are already the same everywhere, such as F1 and F5, are written plainly.

Legato is built on Chromium, the same engine as Chrome and Edge. Sites work the same, your logins work the same, video and audio work the same. What is different is what happens in the moment between a page finishing loading and your reader starting to speak.

In that moment Legato looks at how the page was built. Buttons that were never given a name get one. Images with no description get described. Text that a developer made large but never marked as a heading becomes a heading, so your reader can jump by headings the way it should. The page is repaired on your computer, before you hear it.

Worth knowingWho reads it out is your choice. Legato has a voice of its own — switch it on and the browser reads for you, free, on this computer. Or keep NVDA, JAWS, VoiceOver or Orca and nothing changes: your voice, your speed, your braille display, and Legato only makes sure there is something worth reading. Shift+Cmd+L moves between the two, in both directions.

That is the whole design. An overlay takes the tool you already know away from you and gives you a worse one instead. Legato takes nothing away: your reader stays in charge for as long as you want it to, and the browser’s own voice is an offer, never a replacement — it reads this one browser, while a screen reader reads your whole computer.

The short version of the difference

LegatoChrome
A page with unnamed buttonsNames them before your reader speaksReads “button, button, button”
A page with no headingsAdds headings so you can jump by themNo headings to jump by
A cookie wall over the pageNames it, and one key dismisses it with the refusing buttonYou hunt for the close control yourself
“What does this form want?”Answers in one sentenceNo such question exists
ZoomEnlarges the whole browser, toolbar includedEnlarges the page only
Someone reading over your shoulderOne key blacks out the tab, page keeps workingNothing

Repairing pages

What Legato fixes on a page, and how you know it did.

Repair runs by itself after a page loads. You do not press anything. The free rules run on your computer, offline, and cost nothing.

What gets repaired

  • Unnamed controls. A button, link or field that a developer left without a name gets one, taken from what is actually on it.
  • Images with no description. Meaningful images get described; decorative ones are marked as decorative so your reader stops announcing them at all.
  • Missing headings. On a page with no heading markup, large text becomes a real heading, with the level chosen by its size. If the page already has proper headings, this rule stays silent and touches nothing.
  • Form fields. A field with a visible label but no programmatic link to it gets linked. A date field is told to announce its format.
  • Form errors. A field the site rejected is marked as invalid and tied to its own error message — not to the first error on the page.
  • Catalogues and pricing tables built out of plain boxes. Rows and columns are worked out from the actual positions on screen, so “fifth item, second row, second column” becomes something your reader can say.
  • Run-on text. Words glued together by the markup get the space the page forgot, so your reader stops reading two words as one.

Windows that sit on top of the page

Cookie banners, newsletter pop-ups and consent modals are the single most common reason a page cannot be used with a reader: they trap the focus and they hide the scroll. Legato names the window and its buttons once, and Shift+Cmd+K dismisses it.

CarefulDismissing always uses the refusing button — “Only necessary”, “Reject all”, “Close”. Legato never consents on your behalf. Consent is yours to give, and a browser that clicks “Accept all” to be helpful has made a decision that was not its to make.

Knowing whether a page was repaired

There is a state for every page, and it is a real state, not a decoration: not looked at, looked at and already fine, repaired, with the number of fixes, or could not finish. Press Cmd+Shift+. at any time and the current page tells you which one it is, in one sentence.

You can also ask for a repair by hand with Shift+Cmd+R — useful after a page has rebuilt itself, which shopping and booking sites do constantly.

Asking what exactly was repaired

One sentence is the right size for an announcement and the wrong size for an answer, so there is a page behind it. Alt+Cmd+R, or “What was repaired on this page” in the Accessibility menu, opens a full report: how many controls were repaired and what each of them is called now, how many the site left with nothing to build a name from, and how many Legato did not reach in the time it had.

Worth knowingThe report opens by telling you how much of the page it is describing, and that order is deliberate. A shop draws one screen out of five until somebody scrolls, so a repair done without scrolling has honestly repaired the whole document — and covered a fifth of the shop. Said at the end that reads as an excuse; said first it is an instruction: scroll to the end, repair again with Shift+Cmd+R, and come back. The figure remembers the deepest point the page ever reached, so reading to the bottom and coming back up does not shrink it.

Sending the report to whoever built the site

The same report saves as a single self-contained page you can attach to an email: what was wrong, grouped by the rule that caught it, then every control with the name it was given and who wrote that name — a rule, the icon-font dictionary, the shared memory of repairs other people’s browsers have already made, or the AI. That last column is the point of the file: a name a model invented is a different kind of fact from a name derived from the page, and the person about to copy one into their markup is entitled to know which is which.

The file is in English, contains nothing executable, and is itself built to be read with a screen reader. The names Legato gives live in your browser only — the site is never modified, for you or for anyone else.

Check-every-page mode

Off by default. Turn it on in settings and Legato inspects the markup of every page first and only repairs the ones that are actually broken. A well-built site is then left completely untouched — and you hear that it was checked and found fine, which is different from hearing nothing.

Reading the page yourself

Browse mode — the arrow keys walk the page, and the browser reads what you land on.

Your screen reader already has a mode like this, and if you are happy with it, keep using it — nothing here replaces it. This one exists for two reasons. It works when no screen reader is running at all, because Legato’s own voice drives it. And it walks the page after the repair, so the headings, buttons and regions it stops at include the ones the site never marked and Legato worked out.

F7 turns it on and off, and so does Alt+Cmd+R if the top row of your keyboard is busy with volume and brightness. The browser says which state you are now in, so you never have to guess by pressing something and listening.

Then the down and up arrows move you one piece at a time — a heading, a paragraph, a link, a list item, a picture — and each one is named as you arrive: what it is, what it says, and whether it is checked, expanded, required or switched off.

Jumping by kind, with one letter

These are the same letters NVDA and JAWS use, deliberately: H for the next heading, 1 to 6 for a heading of that level, K link, B button, L list, T table, D region, G image, F form field, E edit box, X checkbox, R radio button, C list box. Hold Shift and the same letter goes backwards.

Worth knowingThe letters work on a keyboard that has no Latin on it. They are read from the key’s physical position, not from the character it prints, so a Russian, Greek, Ukrainian or Hebrew layout jumps by headings with the key where H lives — without switching layout and without losing the letter you were about to type into a field.

A reads on from where you are to the end of the page, and any key stops it. Ctrl+Home and Ctrl+End go to the top and the end. Ctrl+Alt+arrows walk a table one cell at a time with its headers spoken, so you hear “Price, 340” rather than “340”. Enter presses what you are standing on. Escape leaves the mode, and Ctrl silences the voice at once without leaving anything.

When the page moves underneath you

Pages grow while you read them: a banner drops in, a feed loads more, a menu opens. Legato rebuilds its list of stops when that happens and keeps you on the same thing you were standing on — not on the same number in a list that has since changed. If the thing itself was replaced, it says so and names what is there now, so you can press again if that is the one you wanted.

And when the page is asking for attention somewhere else — an error appeared, a dialog opened — it says so once, and J takes you there. It does not drag you: a page that moves you without asking is the reason so many sites are unusable in the first place.

Taking a piece with you

Copying part of a page — the part you chose, not the whole thing — and hearing what you took.

Selecting text is a mouse gesture. Every way round it is awkward, and all three of the usual ones share the same fault: nothing tells you what you took, so you find out after pasting it somewhere else.

  • A text cursor — the arrow keys that drive it are the same ones browse mode needs, so the two fight over your keyboard.
  • Your screen reader’s own markers — those belong to the reader, work differently in each one, and stop at the edge of what the reader can see.
  • Select all and copy — which takes the menu, the footer and the cookie notice as well, and then you go hunting in a text editor for the paragraph you wanted.

In Legato the copy key answers directly. It is the same shortcut you have always used — Cmd+C on a Mac, Ctrl+C on Windows and Linux — and it only answers when nothing on the page is selected. Select something the ordinary way and the page copies it exactly as it would anywhere else; nothing is taken away.

Three ways to say which piece

  1. 1Draw a frame with the mouse around roughly the part you want, then copy. You get what you circled. The browser works out the whole blocks from what fell inside the frame, so you do not have to hit the edges of a paragraph you cannot see.
  2. 2Or press S where the piece starts, walk to where it ends with the arrows or the wheel, and copy. You get everything in between.
  3. 3Or just copy where you stand, and you get that one thing — the paragraph, the list item, the cell.

It tells you what it took

Not a number of words. A number does not answer the question you actually have, which is “did I get the right piece”. A short piece is read back in full. A long one is read back by its first words and its last — which answers both “is this the right piece” and “did I take too much” in one sentence.

While a start is marked, every step you take makes a quiet click. It means two things at once: the mark is still alive, and that step counted. Silence means there is no mark, so you never walk half a page believing you are collecting something.

Shift+S says what you have collected so far without copying it and without losing the mark. Ask as often as you like. If the page rebuilt itself and the thing you marked is gone, the browser says the start was cleared rather than quietly copying from somewhere else.

Asking the page questions

Your reader answers “what is written here”. These answer “what am I looking at”.

A reader is a faithful narrator: it tells you what is on the page in the order it appears. That is exactly what you want when you are reading, and exactly what you do not want when you have just arrived on a page of four hundred elements and need to know whether you are in the right place.

PressAnd you get
Shift+Cmd+OThe page at a glance: how many sections, links, forms and images it has. The shape of it, before you commit to reading it. Works offline.
Shift+Cmd+IA description of the image under your cursor, including images the site never described.
Shift+Cmd+FWhat this form wants of you, in one sentence — before you start filling it in, not after it rejects you.
Shift+Cmd+CThe table or the grid, read as a table: which row, which column, which header a cell belongs to.
Shift+Cmd+EThe page again, in plain words — for terms-and-conditions prose and government forms.
Worth knowingNone of these exists in Chrome in any form, with or without an extension. This is the part of Legato that is genuinely new rather than better.

Things the page does that nobody announced

Pages change under you without saying so. Legato watches for the three changes that matter and says them:

  • A feed loaded more. “Twenty more added.” Announced at most once every four seconds, so an infinite feed does not turn into a monologue.
  • A countdown is running. Ticket sites and banks hold your session for a few minutes and then drop it. Legato tells you when it notices the timer, and again when a minute is left. A clock that merely displays the time is not treated as a countdown.
  • The site went quiet after you did something. You pressed submit, the page answered, and the site never announced its own answer. Legato reads it out. This is the only thing Legato says without being asked, and the rule is deliberately narrow: only straight after an action of yours, and only when the site did not announce it itself.

Getting things done on a page

Reaching the thing you came for — and doing the same journey again next month.

CarefulOne rule runs through every feature in this section: Legato moves the focus, you press the button. Anything irreversible — pay, send, confirm, delete — stays under your hand. You cannot check with a glance what a browser just clicked for you, so it does not click.

Name a place, then go back to it

Sites rename things, move them and redesign around them. Shift+Cmd+N pins your own word to a place on a site: “call this the send button”. The name is yours, it is stored per site, and it does not alter the page in any way.

Shift+Cmd+J then takes you there — by your name for it, or by any wording actually on the page. If there is no such thing, you get a refusal and a list of what is nearby, instead of being dropped somewhere and left to work it out.

If the site has changed so much that your name no longer points anywhere, Legato says so explicitly. A stale label that quietly does nothing is worse than no label.

Two verbs, two behaviours, and the line between them never moves: Shift+Cmd+J takes you to something. Shift+Cmd+A presses it.

Record a journey and repeat it

Renewing a permit, paying the same bill, booking the same appointment — the same fifteen steps through the same badly built pages, every time.

  1. 1Shift+Cmd+M starts recording. Do the journey once, normally.
  2. 2Shift+Cmd+M again stops it, and you give the route a name.
  3. 3Shift+Cmd+U replays it. Legato walks the steps and stops where you are needed — at a payment button, at a field only you can fill. Press Shift+Cmd+U again to carry on from there.
Worth knowingA route records which controls you used and what the fields were called — never what you typed into them. There is no card number, no password and no date of birth in a saved route, by construction rather than by policy.

Forms

Shift+Cmd+Y, before you send: what is still empty and what the site has already refused, in one sentence, with the focus moved to the first thing that needs you. Fields that are fine are not mentioned — a complaint list that includes the things you got right is a list you have to read twice.

Where you stopped reading

Shift+Cmd+P takes you back to where you were. The anchor is the text you were on, not a position on the page, so it survives a reload and survives the site rearranging itself. Legato offers to take you there; it does not jump on its own.

“Prove you are human”

Shift+Cmd+X finds the check, names which kind it is, and moves you to its audio alternative. Legato does not try to solve captchas and will not pretend to. What it removes is the part that was actually impossible: finding the thing at all.

If you use a mouse

For people who can find the pointer but not what is under it — and for anyone who would rather turn a wheel than press an arrow.

A mouse is usually treated as the thing blind people do not use, and then nothing is built for the people in between: low vision, an unsteady hand, a tremor, one working arm, or simply somebody who finds a wheel easier than a keyboard. Legato does two things with the mouse, and each is a separate switch you can turn off.

The pointer says what it is on

Rest the pointer on something and the browser names it — the button, the link, the field and what it is called. Cross into another part of the page and it names the region you have entered. This half needs no mode and takes nothing away: clicking, dragging and scrolling all behave as they always did.

The wheel walks the page

In browse mode the wheel stops scrolling and starts stepping: one turn, one thing, named out loud. Turn it sideways, or hold Shift, to change what it steps by — headings, links, regions, fields. Z locks the walk inside the region you are in, so a long feed stops throwing you into the footer, and the side buttons of the mouse jump from region to region.

The step size is adjustable, and it matters more than it sounds: a trackpad sends many tiny events and a wheel sends one firm click, so the same setting cannot suit both. Small for a trackpad, large for a wheel.

Walls at the edges

When the pointer runs off the edge of the page there is a short sound — a wall. Without it, moving the mouse past the end of the content is silence, and silence is indistinguishable from a browser that has stopped answering. The sound is the difference between “there is nothing there” and “something is broken”.

A ring under the right button

Right-click anywhere on a page and a ring of circles opens in the middle of the window: describe this image, read this block, the page at a glance, what this form wants, where the pointer is. Everything Legato can do, in the one place a hand reaches without aiming.

The wheel turns the ring and clicks like a cylinder, one click per item. The left button presses whatever is chosen, wherever your hand happens to be resting — you never have to travel to the thing you picked. The right button closes it.

Hold the right button down and turn the wheel, and the chosen item moves around the circle instead: put what you use every day under your hand, and the browser remembers where you put it.

Worth knowingThe ring exists because the system menu cannot be read by our own voice — macOS and Windows draw that one, and nothing of ours can speak inside it. Someone who switched their screen reader off in our favour would open the right button and hear silence. If you would rather have the familiar Chrome menu, switch this off and Legato stops touching the right button altogether. With the mouse helper off, the ring becomes a plain list you walk with the arrows.

What the browser says, and when

A tool for a screen reader has to be careful about talking. Here is every rule.

Legato speaks through your reader, in the page’s own live region — the place your reading cursor already is. This matters for JAWS in particular: an announcement made in the browser’s toolbar instead of the page is an announcement JAWS users never hear. With the browser’s own voice switched on, the same sentences are spoken by that voice instead; the rules below do not change, only who says them.

  • One event, one sentence. Never two announcements for one thing that happened.
  • “Analysing” is silent. You are told when there is a result, not when work starts.
  • Numbers, not adjectives. “Repaired: 3” rather than “page repaired”.
  • Ask any time. Cmd+Shift+. reports the state of the current page on demand. Everything else stays quiet until you ask.

Sounds instead of sentences

Three short tones, each under a third of a second: work finished, nothing found, something needs you. They play over your reader rather than interrupting it, which is the point — you learn that a page is done while your reader is still reading the previous one.

Volume is adjustable in settings, from very quiet to prominent, because a hearing aid and a hearing loss need opposite settings and one factory number serves neither. There is a list of every sound with a button to play each one, so you can learn them before you meet them.

Your own call sign

Four notes of your own, played just before Legato’s own results — first “this is me”, then “here is what happened”. In a shared room or an open-plan office, it is how you know the sound was yours and not the machine next to you. Type a name and Legato offers five ways it could sound; you pick the one you recognise, or turn the whole thing off.

It is written in note letters — CEGA, DFAC — so it survives being said out loud: dictate it over the phone, put it in an email signature, read it off a forum post. The letters ARE the notes, not a link to a file, so at the other end it sounds the same with nothing downloaded. Your call sign travels with your settings to another computer.

Dictation

The search field takes dictation from your system (Cmd+Shift+V on macOS). It stops on its own when you stop talking, and it works out your speaking rhythm rather than counting to a fixed number of seconds — someone who speaks slowly gets a wide pause window from the first word, not after the third failure. Then it reads back what it heard before searching.

How much it tells you

The same browser, three amounts of talking — because a child on their first day and someone who has used this for a year do not need the same sentence.

Most tools pick one level of verbosity and defend it. It is the wrong shape of decision: on day one “Heading, level two, Prices — press Enter to open” is exactly what you need, and by week three it is nine words in the way of one.

SettingWhat changes
In detailNames where you are and what to press. Meant for a child at school, or anyone in their first week.
NormallyThe usual amount — what you get if you change nothing.
BrieflyThe shortest form that is still unambiguous, for someone who knows this browser by heart.

It changes only the phrases we wrote a variant for. Everything else sounds the same at every level, which is deliberate: a setting that silently rewrites everything the browser says would make two people’s copies impossible to compare when one of them is on the phone helping the other.

Two more settings live next to it and do the same kind of work. Pause before speaking puts a short gap in front of an announcement, so it does not tread on the last word your reader was saying. Sound signals sets how loud the tones are, from very quiet to prominent — a hearing aid and a hearing loss need opposite ends of that scale.

Things that are not work

A shelf inside the browser, one button away on the toolbar. Five things, none of them a job that had to be done.

Accessible software is almost entirely about tasks: fill this in, submit that, renew the other. It is a strange gap, because nobody chooses a browser for the forms. Each of these opens in its own tab and says up front what it is — a game, a tool, or something to make.

Atmosphere

Eighty-three recordings and six melodies that play quietly behind whatever you are reading — rain, a brook, wind in leaves, crickets, a farmyard, an owl somewhere a long way off. You choose what plays. None of it is needed to use the browser; it is here because reading all day is easier in a place you would choose to be.

Press a sound and it plays once, close and clear, and then joins your set. That single playback is also the quickest way for a child to learn what a cow, a lion or a cuckoo sounds like. Fifteen of the recordings are backgrounds that run without stopping, stitched so you never hear the loop come round. The other sixty-eight speak once every minute and a half to five minutes, and never while the browser is talking — a looped owl becomes an alarm clock inside a minute, which is why they are not looped.

Everything steps back while Legato speaks and comes up again after. The sounds are levelled against each other, so no one of them sits on top of the rest, and the further layers are filtered as well as quietened — distance is as much about losing the hiss as it is about volume.

Three buttons sit above the list.

  • Silence. Stops everything at once, including a melody and a single voice that had already started.
  • Random. Builds a set that holds together. It draws from a smaller pool that leaves out everything which reads as agitated.
  • Match the time of day. Builds a set from your own clock and keeps following it — dawn birds in the morning, crickets and a night breeze after dark. It changes over by itself while you work.

Six melodies sit behind all of it, one at a time and a long way back: a pentatonic line, a raga, a handpan, a Japanese hirajoshi scale, a choral swell and singing bowls. They are played rather than recorded, so no two minutes of them repeat. Save a set you like and it comes back by name; you can keep twenty-four. Whatever is playing survives quitting the browser, so the morning does not start with building it again.

Worth knowingWhere it is, and what it keeps doing. The shelf button on the toolbar, or the Accessibility menu, and then Atmosphere. The sound is played by the browser itself rather than by that page, so once it is running you can leave it, work in any tab, or close the atmosphere page entirely and it keeps playing. To change it or stop it, come back the same way.

Backgammon you can actually play blind

Long nardy and short backgammon, against the machine or against another person. The board is playable with your eyes shut, and that took more than reading the squares aloud: you hear where a checker lands using both dice rather than one, a move with both dice is a single keypress, and bearing off happens by itself once it can.

A refused move explains why instead of beeping at you. Changing sides is a sound rather than a sentence. There is an undo, you can resign, and the score reads off the board. Over the network you need a callsign, the join code is dictated character by character so it survives being said on the phone, and you can knock on the board to get the other person’s attention.

Your family tree

Walk your ancestors with the keys, with the panel beside you. What makes it different from a genealogy site is that it is honest about the holes: it tells you where the records survived, where they exist only as photographs nobody has typed up, and where they burned. A line that stops says why it stops — the record names no parent, or the record exists and we could not fetch it, or we simply stopped searching at that depth, which says nothing about your family at all.

It comes with a bundled set of real people to walk around in, and it reads a GEDCOM file if you already have one from somewhere else.

Out loud

Hear what a machine says on a real web page — and, more to the point, where it says nothing at all. It is the quickest way to show a sighted colleague what an unlabelled button sounds like, without asking them to install a screen reader and learn it first.

Postcards

Write a postcard that reads itself aloud: pick a picture, write the lines, send it to somebody who will hear it. The picture is not a decorative afterthought with alt text bolted on — it is built from described parts, so the sky, the ground, the season and what is in the foreground each have a sentence. The person receiving it hears a picture rather than being told there is one.

Shopping

A shop page rebuilt into the five facts you actually need before you press Buy.

A product page is the worst-shaped document on the web for someone listening to it. The thing you came for — is it in stock, what does it cost, is that the price with delivery — sits somewhere inside four hundred elements of carousel, cross-sell, reviews and “customers also bought”.

Product card in the Accessibility menu answers it in one place: what the thing is, the price, whether it is in stock or on back order or sold out or in the shop only, the description, and the pictures with whatever caption the shop gave them — and it says out loud when the shop gave them none.

It is a reading of the page you are on, not a shop of ours. The Buy button stays the shop’s own button on the shop’s own page, and going back to it is one keystroke. We are not standing between you and the money.

CarefulThis reads the shops that publish their product data in the ordinary machine-readable way, which most large ones do. A shop that publishes nothing gets read as an ordinary page — repaired, but not folded into a card. It is not a promise that every shop on the web will work.

If you see a little

Most people called blind are not. Seventeen page fixes, two one-button setups, and an interface that stopped being smaller than Chrome’s.

Software for blind people tends to assume nothing is visible, and everyone with some sight left falls through the gap. These are switches, each one aimed at a specific way a page defeats a person who can see it but not comfortably.

  • Lift the smallest text — the type below the size anyone can be expected to read.
  • Darken faint text — grey-on-grey body copy brought up to a contrast that holds.
  • One column when zoomed in — a wide page folds instead of making you scroll sideways to read a line.
  • Larger tap targets — buttons grow to a size a shaking hand can hit.
  • Bright focus ring — you can see where you are, even over a sticky header.
  • Sharper chart colours — inside charts and diagrams only, so a graph stops being three indistinguishable pastels.
  • Say the colour in words — a field the site marked wrong only by turning it red gets the word as well.
  • Stop flashing, and stop the motion — for migraine, for photosensitivity, and for anyone who cannot read past a moving carousel.
  • Buttons instead of dragging, and menus that wait for you — 0.8 seconds after the pointer leaves, which is the difference between a menu and a trap.
  • Reach buttons from the keyboard — blocks that behave like buttons but are skipped by Tab become real stops.
  • Keep the focus where it lands, and keep it inside dialogs — for sites that throw it away the instant it arrives.
  • One thing at a time, do not let a second press through, and ask before money leaves.

Two buttons switch on the right group in one go: Set it up for poor eyesight and Set it up for keyboard only. Each says how many switches it turned on and what that means in a sentence, and every one of them is still an individual switch below, so you can undo any single decision it made for you.

Worth knowingEvery fix is checked by measurement, and removes itself if it makes the page worse. That is the whole reason to trust a repair layer at all: a rule that lifts small text is a good rule until it collides with a site that laid its type out by hand, and the only honest answer is to measure the result rather than to argue about the rule.

The browser’s own interface has a size switch too, and it needed one: our chrome was set smaller than Chrome’s around it, forty-two places under twelve pixels. Zoom is on the usual keys, the whole page can be given over to the content with F11, and the site settings button sits in the address bar — the one place sites tell you to look for it.

Braille, and hearing little

Everything Legato says out loud also exists as text — because a spoken-only tool is unusable to a deafblind person, and awkward for a hard-of-hearing one.

When the browser reads through your screen reader, braille comes free: we write into the page’s own live region, your reader picks it up, and your display shows it. That is how it has always worked.

The problem is our own voice. It goes to the speakers and skips that hidden line beside the page — and that line is exactly what your reader turns into braille. So a person who switched to Legato’s voice lost their display without being told.

Keep the braille display fed sends every phrase to both: you hear us, and the same words reach your display as letters. It is meant for one specific setup — your screen reader running with its speech switched off and braille left on. If the reader still speaks, you will hear everything twice, and the setting says so before you turn it on.

Two hundred and seventy-one phrases the browser could say were audited against this: every one of them now exists somewhere a display can reach. There is also What you said before in the View menu — the last things the browser announced, as text you can go back and read, for when a sentence went past while you were doing something else.

And for video with no captions of its own, the menu opens your system’s live captions rather than pretending we have a better transcriber than the operating system does.

Privacy at your desk

The screen you cannot see is still a screen everyone else can read.

A monitor showing your bank balance is useless to you and perfectly legible to whoever is standing behind you. And people who use a screen reader share a computer with a sighted helper far more often than most users do.

Shift+Cmd+S blacks out the current tab. The page keeps working, your reader keeps reading it, and the picture goes dark. The address bar and tabs stay visible, so anyone helping you can still see where you are — and so a person with some remaining sight can find the control to turn it off again.

Why not just use your reader’s screen curtain

You may already know it: VoiceOver has one on Control-Option-Shift-S, and NVDA has had one on NVDA+Ctrl+Escape since version 2024.1. Both black out the entire monitor — notifications, other windows, everything.

That is stronger, and sometimes it is exactly right. But it also blinds the sighted person sitting next to you, who is there precisely to help. Legato blacks out one tab: the one with your bank or your medical records goes dark, and they can still help you with everything else on the machine.

CarefulTwo honest limits, both said aloud the first time you use it. Your reader is still audible — sound is the channel that actually leaks, and the fix for that is headphones. And this is not private browsing: history and cookies are saved as usual. The screen is always visible again after a restart.

Where your pages go

The repair rules and the built-in model run on your computer. Ordinary browsing is repaired without anything leaving the machine.

Three features do use our cloud, because they need a large model: describing an image, explaining a page in plain words, and reading a form. Those send the relevant fragment of the page and nothing else, only when you press the key for them, and never on their own.

The everyday browser, rebuilt for a reader

Things Chrome also has — done differently because of who is using them.

In LegatoIn Chrome
ZoomCmd+Plus enlarges the whole browser — tabs, address bar, settings, all of itEnlarges the page. The address bar you opened it with stays small
Find on pageCmd+F and F3, because JAWS takes Cmd+F for itself. Says “12 matches”, then “3 of 12”Cmd+F only
DownloadsEvery step is a spoken sentence: downloading, saved as this name in this folder, did not finish. No dialog opens, so nothing steals your focusA silent bar; the file lands with no announcement
The browser menuOpens as a card in your theme and at your zoom, with a search box over all forty items across six sectionsA system menu at system size; you memorise where things are
Moving between panesF6 moves between the page and the browser’s own controls, in both directionsSeveral presses of F6 through panes nobody named
Pinned sitesNamed by what the site calls itself, not by its address — a reader saying “rozetka dot com dot ua” letter by letter helps nobodyFavicons, which are not readable at all
ThemesFour: modern or classic, each light or dark, plus twenty-four accent colours, and the accent applies to scrollbars tooLight, dark, and a theme gallery aimed at decoration

The ordinary things are ordinary

Tabs, pinning, reopening a closed tab, bookmarks, history, back and forward, printing, private downloads folder, full-screen video, picture-in-picture, screen sharing, sign-in keys — all present, all on the shortcuts you already know from Chrome. Nothing was reinvented for the sake of being different.

Chrome extensions install and run. Sign-in keys — passkeys — work, and are off until you turn them on, so nothing changes for sites until you decide it should.

Your reader, your system

Legato works with the reader you already have. It does not need to be told which one you use, and switching it on changes nothing about how your reader behaves. That is the default, and it stays the default — the browser also has a voice of its own, described in the next chapter, but it never starts speaking unless you ask it to.

ReaderSystemNotes
NVDAWindowsRecommended. NVDA follows the markup strictly, so a repair to the markup is a repair you hear.
JAWSWindowsWorks. JAWS also guesses at broken pages on its own, so on some pages you will notice the difference less.
VoiceOvermacOSRecommended, for the same reason as NVDA.
OrcaLinuxWorks.
A braille displayAnyThrough your reader, as usual — repairs reach braille the same way they reach speech.
Worth knowingThe stricter your reader is about following the markup, the more Legato is worth to you — because the repair happens in the markup. We would rather say that plainly than claim an equal benefit everywhere.

Systems

Windows, macOS and Linux. Android is planned. On iPhone and iPad, Apple does not allow a browser to bring its own engine, so what can exist there is a Safari extension rather than Legato itself — an honest difference rather than a coming-soon.

The browser’s own voice

Legato can read to you itself, with no screen reader running at all. Here is what that means and what it costs.

On the first run, straight after the language, Legato asks one question: who speaks. The first answer — your own screen reader — is already selected, so pressing Continue changes nothing. The second switches on a voice that belongs to the browser.

Shift+Cmd+L moves between the two at any moment, in both directions. The same switch sits in Settings under “Browser voice”, directly below the language — in this browser the voice is a property of the language, so the two questions are asked one after the other.

The voices

  • Twenty-two languages, forty-six voices. Every language the browser speaks except Japanese and Chinese, for which no free voice is yet good enough — an honest gap rather than a coming-soon. The voice runs on your computer: nothing is sent anywhere, nothing is charged by the sentence, and it works with no network at all.
  • Downloaded once. Voices are not shipped inside the browser — together they would be about 1.5 GB against a 420 MB browser. The one for the language you read in is around sixty megabytes, and the browser says out loud when the download begins and when it lands.
  • You pick which one. Where a language has more than one voice — Russian has three, English and Turkish two — the list is offered rather than decided for you, and the confirmation is spoken in the voice you have just picked.
  • It follows the language. Change the interface language and the voice changes with it. Your pick is remembered per language, so a trip to another language and back returns the voice you chose, not the first on the list.

Handing over from your reader

This is the one genuinely dangerous minute in the product, and it is treated as one. Switching our voice on for the first time does not tell you that your reader can go. It asks you to confirm that you can hear us, and only a confirmed answer unlocks the sentence about switching the reader off. Answer that you hear nothing and the screen says the opposite — keep your reader — through the live region, which your reader still speaks.

Worth knowingA screen reader reads your whole computer. Legato reads one browser. That difference is on the handover screen itself, because you need it before you decide, not after. We never switch your reader off for you — on macOS there is no such API, and there should not be one.

Braille

Our voice goes to the speakers and skips the hidden line beside the page — and that line is exactly what your reader turns into braille. One setting, “Keep the braille display fed”, sends every phrase to both. It is meant for one arrangement: reader running, its speech off, braille left on. If the reader is still speaking, you will hear everything twice.

Speed, and the pause before it

Speech rate runs from 0.7× to 3× on named steps, and the sample is spoken at the new rate as you move it. Slip is the pause before the voice starts, up to half a second. Hold Tab down through a hundred buttons and without it every focus move begins a phrase the next one cuts off; with it you hear exactly one thing — where you stopped.

One more setting belongs to the voice rather than to the repair: starting with the computer. It exists for whoever has switched their own reader off in our favour and would otherwise have to launch the browser with a reader that is no longer running.

Settings, in plain words

What is behind Cmd+Comma, grouped the way it is grouped in the browser.

Settings has a search box at the top, and it searches the descriptions as well as the names — so “braille”, “too loud” or “stop moving” find the right switch without you knowing what we called it.

GroupWhat is in it
LanguageThe interface language, and separately the languages you read — which is what decides when a passage in another language gets another voice.
Page repairRepair automatically or on request, announce the result out loud, name unlabelled buttons and fields, and whether to ask the shared memory of names first.
Page fixesThe seventeen switches above, plus the two one-button setups.
Browser voiceWho speaks, which voice, how fast, and the pause before speaking.
Sound signalsHow loud the tones are, and your own four-note callsign.
How much to promptIn detail, normally, or briefly.
AppearanceTheme, style, colour, larger interface text, less motion.
MouseWhether the wheel walks the page, the step size, whether the pointer says what it is on, and the ring under the right button.
PrivacyWhat leaves the machine, and the cloud features listed one by one.
Camera and microphoneWhich sites may use them.
Sign-in keysPasskeys, off until you turn them on.
ExtensionsChrome extensions install and run here.
Sync with ChromeBookmarks, history, open tabs and site icons.
Moving to another computerWrite everything to one file, read it back on the other machine.
LicenceThe paid part — what it covers and what it costs.
SuggestionsTell us what is missing, from inside the browser.

Two live outside the groups because they change the whole machine rather than the browser: Open links from other programs in Legato, and Open the browser at login — that second one is for whoever has no screen reader running and needs the browser to be there before they can ask for it.

Moving in from Chrome

One button brings across your bookmarks, your history, your open tabs and your site icons. Your history matters more than it sounds: it is what makes the address bar suggest the right site from three letters on the first day, instead of after a month of rebuilding it.

Legato keeps its own history from then on, so “take me back to where I was ten minutes ago” works from the first session.

Moving to another computer

Settings, bookmarks, your place names and your saved routes can be written to one file and read back on the other machine — or carried across with a short code. Your names and routes are the part it would genuinely hurt to rebuild, which is why they travel.

The first run

A short walkthrough that you can leave at any point with Escape, and which never starts again on its own. Basic repairs work immediately, with no key and no account.

Updates, and what changed

A new version arrives on its own, and you can find out what is in it without asking anyone.

Legato checks for a new version and tells you when there is one, and Update Legato in the Accessibility menu asks now rather than waiting. Nothing installs behind your back mid-task.

What’s New, in the Help menu, is the other half and it exists because a blind tester asked for it in as many words. Updating a browser and having no way to learn what changed means you cannot re-test the thing that was broken for you last month — you are left pressing keys to find out.

The page is built for a heading list rather than for the eye: the page name is the first heading, every version number is a second-level heading, and each topic inside a release is a third. Jumping between releases is therefore one key pressed repeatedly, and “what is in this one” is answered without listening to anything else. Every release that ever reached a person is there, back to the first published build; versions that were built and handed to nobody are named and excluded, because they are not part of what you have.

Worth knowingThose notes are written by hand, per release, in English only — and the page says so at the top before you spend time on it. Running them through machine translation would publish claims about the product that nobody had read.

Every shortcut

Cmd on macOS, Ctrl on Windows and Linux, unless a row says otherwise.

Reading a page with the arrows (browse mode)

KeysWhat it does
F7 · Alt+Cmd+RBrowse mode on and off — read the whole page with the arrow keys
↓ · ↑Next and previous piece of the page: headings, paragraphs, links, lists
A · Insert+↓ · Ctrl+Alt+ARead on from here to the end of the page; any key stops it. The long forms are the NVDA and VoiceOver chords your fingers may already know
H · 1–6Next heading · next heading of that level (Shift goes backwards)
K · B · L · T · D · GNext link · button · list · table · region · image
F · E · X · R · CNext form field · edit box · checkbox · radio button · list box
Ctrl+Alt+arrowsWalk a table by cell, with its headers spoken
Ctrl+Home · Ctrl+EndTop and end of the page
Cmd+CCopy the piece you chose — where you stand, what you framed with the mouse, or everything since the mark
S · Shift+SMark the start of a piece · say what has been collected so far, without copying
ZLock the walk inside this region, and let it out again
JGo to whatever the page is asking attention for
EnterPress what the reading cursor is on
EscapeLeave browse mode
CtrlSilence the voice right now
Worth knowingOn a Mac keyboard the top row belongs to media keys out of the box, so F7 alone skips a music track instead: press Fn+F7, use Alt+Cmd+R, or turn on “Use F1, F2, etc. keys as standard function keys” in System Settings → Keyboard once.

Understanding a page

KeysWhat it does
Shift+Cmd+RRepair this page now
Cmd+Shift+.Report the state of this page
Shift+Cmd+OThe page at a glance
Shift+Cmd+IDescribe this image
Shift+Cmd+FWhat this form wants
Shift+Cmd+CRead the table or grid
Shift+Cmd+EExplain in plain words
Shift+Cmd+K · Alt+Cmd+KDismiss the window over the page · step past it without dismissing
Alt+Cmd+OContents of this page
Alt+Cmd+FRead the form back as it will be sent
Alt+Cmd+NWhere did this name come from — the site’s own, or worked out by Legato
Alt+Cmd+BProduct card — a shop page folded into what you need before buying
Alt+Cmd+.What you said before — the browser’s last announcements, as text

Moving and acting

KeysWhat it does
Shift+Cmd+JGo to… (moves the focus, presses nothing)
Shift+Cmd+APress by voice
Shift+Cmd+NName this place
Shift+Cmd+MStart or stop recording a route
Shift+Cmd+UReplay a route, or carry on from where it stopped
Shift+Cmd+YCheck the form before sending
Shift+Cmd+PRead on from where I stopped
Shift+Cmd+XGo to the “prove you are human” check
Alt+Cmd+MGo to the main thing on this page
Alt+Cmd+SSkip a region nobody named
Alt+Cmd+PMake a postcard

Privacy and appearance

KeysWhat it does
Shift+Cmd+SBlack out the screen for this tab, and back
Shift+Cmd+DLight or dark theme
Alt+Cmd+DNext appearance theme
Cmd+CommaSettings

The browser itself

KeysWhat it does
Cmd+LAddress bar
F6 · Shift+F6Move between the page and the browser controls
Cmd+T · Cmd+W · Shift+Cmd+TNew tab · close tab · reopen the closed one
Ctrl+Tab · Cmd+1…9Switch tabs
Cmd+EBack to the tab you were just on
Cmd+[ · Cmd+]Back and forward
Cmd+F · F3Find on page (F3 for JAWS users)
Cmd+G · Shift+Cmd+GNext and previous match
Cmd+Shift+BBookmarks
Alt+Cmd+L · Ctrl+JDownloads (macOS · Windows and Linux)
Cmd+Shift+VDictate into the search field (macOS)
F1The browser tour
Alt+Cmd+UCheck for a new version of Legato
Shift+Cmd+/This list, inside the browser
F11Give the whole window to the page
Worth knowingEvery one of these is also in the browser menu, under Accessibility, with its shortcut spoken next to it — and the menu has a search box. You never have to remember which section something is in.

What Legato does not do

The list we would rather you read here than discover later.

  • It does not read your whole computer. The browser’s own voice reads this browser and nothing else; outside it — the desktop, your mail client, a document — only a screen reader speaks for you.
  • It does not solve captchas. It finds them and takes you to the audio alternative. Solving them for you would be both against the site’s rules and unreliable.
  • It does not press irreversible buttons. Not by voice, not in a replayed route. Pay, send, confirm and delete are yours.
  • It does not consent for you. Cookie walls are dismissed with the refusing option, never the accepting one.
  • It has no voice input of its own. It uses your system’s dictation, which is better than anything we could ship and is already set up the way you like it.
  • It cannot fix a page that has no content. A site that draws everything as unlabelled images on a canvas has nothing for a repair to work with, and Legato will tell you that rather than pretend.
  • It does not play films with copy protection yet. Some paid streaming services will not run.
Worth knowingIf something on this page does not match what your copy of Legato does, the browser is right and this page is wrong — tell us and we will fix the page.