Editing

The editor

Three views over the same keys, filters that narrow all three, and a URL that carries what you are looking at — so "the French strings that are still missing" is a link, not a description.

Three views

Reviewing four hundred strings and writing one careful sentence are not the same job, so the same keys are offered three ways. The toggle sits in the toolbar; the source language stays on screen in all three.

Panel

The key tree on the left, one key at a time on the right: source, translation, the context note, the placeholder verdict, the review actions and the discussion on that key.

For depth — the one string somebody sent back, or a key you have to think about.

Inline

Every key of the language under the next, the source beside the field, editable in place. Grouped by file and by key path, with the group heading pinned as you scroll — and below the phone boundary the two stack, source over field.

For context — writing a screen in one pass, where the string before matters.

Table

Every language side by side, one row per key, editable in the cell. The key column and the header stay put while you scroll in either direction.

For bulk — comparing locales, spotting the gaps, filling in a column.

Beside the toggle, one more way to look at a single key: All languages in the panel opens that key in every locale of the project at once, which is the fastest way to see whether a term was translated consistently.

Filters and search

One filter narrows whatever view you are in — the key tree, the inline list and the table all read the same selection. The toolbar shows the active one by name, so a view that is hiding keys always says so.

FilterShows
All Every key in the language. The default, and not in the URL.
Missing Keys with no value at all in this language — the list you are working through.
Translated Keys that have a value: both the ones waiting for review and the ones already approved.
Review The narrower half of the row above — a value is there and nobody has approved it yet.
Rejected Values a reviewer sent back, which are drafts carrying a reason. Where to start.

Needs attention

A sixth filter with no entry in the menu: it is the counter in the branch banner, and clicking it filters the view down to the branch's own unreviewed work — added, changed and deleted keys, and pending renames. Clicking it again clears the filter. It exists on a branch only, because on main there is no operation to review.

Search, and the file filter

Search matches the key name and the source text, so a string you remember but cannot name is still findable. In a project that keeps several files per language, a second control filters by file. All three narrow together: a search inside Missing inside checkout is three conditions, not the last one you touched.

Two things worth knowing

  • A filter that no longer includes the key you had open closes it, rather than leaving a key on screen that the list beside it says is not there.
  • Switching language keeps the filter and the view. Fixing the missing strings in one locale and then the next is the same two clicks each time.
  • AI Translate All is per language and not per filter: it fills every missing value in the locale you are in, whatever the view is currently showing.

Keyboard

Four keys, and no save key: a value is written by itself half a second after you stop typing, so moving on is what saving looks like.

KeyDoes
↑ ↓ Move to the previous or next key in the list as it is currently filtered.
Enter Jump from the list into the translation field for the open key.
/ Focus the search field. On a narrow window, the command palette instead.
⌘K / Ctrl+K The command palette: search keys, switch view, and reach the actions that are not in the toolbar.

The arrows walk the filtered list, not the whole locale — which is what makes Missing plus the arrow keys a way to work through what is left.

On a phone

Below 768 pixels the inline view is the editor: source over translation, full width, with the key tree as a drawer. The toggle is absent rather than disabled, because the other two views need a width that is not there — and your choice is not thrown away. Widen the window and the view you picked comes back.

What the inline view carries, it carries there too: editing, the status dot per key, the context note, a sent-back value with its reason, search and the filters. Approving and the discussion on a key belong to the panel, so they are a wider window's job — a phone is for finishing the last twenty strings, and that works.