diff --git a/STYLE_GUIDE.md b/STYLE_GUIDE.md index c8dff066b..640138535 100644 --- a/STYLE_GUIDE.md +++ b/STYLE_GUIDE.md @@ -1,59 +1,97 @@ -# Guida di Stile Universale +# Guida di Stile -> This Style Guide is based on the [Universal Style Guide](https://github.com/reactjs/reactjs.org-translation/blob/master/style-guide.md) -> -> Questa Guida di Stile è basata sulla [Universal Style Guide](https://github.com/reactjs/reactjs.org-translation/blob/master/style-guide.md) +> Basata sulla [Universal Style Guide](https://github.com/reactjs/reactjs.org-translation/blob/master/style-guide.md) del progetto di traduzione React. -Questa Guida di Stile descrive le regole che dovrebbero essere applicate a **tutte** le lingue. +Regole per tradurre la documentazione di [it.react.dev](https://it.react.dev). Per la terminologia, consulta sempre il [Glossario](./GLOSSARY.md). -NOTA PER I MANUTENTORI: Potreste voler tradurre questa guida in modo che sia più accessibile ai traduttori. +--- ## Glossario -Vedi [qui](https://github.com/reactjs/it.reactjs.org/blob/master/GLOSSARY.md) +Vedi [GLOSSARY.md](./GLOSSARY.md) in questo repository. -## ID delle intestazioni +Prima di tradurre o revisionare una pagina, leggi le voci pertinenti. **Non introdurre varianti** se il glossario ha già una voce confermata. Le [pagine legacy](./GLOSSARY.md#pagine-legacy-con-deviazioni-note) non annullano le regole per le nuove traduzioni. -Tutte le intestazioni hanno degli ID espliciti, ad esempio: +--- -```md -## Try React {#try-react} -``` +## Registro e tono + +### Registro + +Usa il **tu** informale, coerente con le pagine già tradotte: + +✅ *Quando aggiorni lo state, React renderizza di nuovo il componente.* + +❌ *Quando l'utente aggiorna lo state...* (evita la terza persona distante salvo casi eccezionali) + +### Tono per tipo di pagina + +| Tipo | Tono | Esempio | +| ---- | ---- | ------- | +| Learn | Conversazionale, pedagogico | *Ecco cosa succede...*, *Potresti chiederti...* | +| Reference | Tecnico, esaustivo | *Chiama `useState` al top level...* | +| Blog | Fattuale, preciso | Evita linguaggio promozionale | + +--- + +## Terminologia e coerenza + +### Policy anglicismi + +Segui la policy del [Glossario](./GLOSSARY.md#policy-sugli-anglicismi): + +1. API, identificatori e concetti core React → **inglese** (`props`, `state`, `hooks`) +2. Concetti spiegati in prosa con equivalente stabile → **italiano** (*renderizzare*, *gestore di eventi*, *Effetto*) +3. Loanword tecnici senza equivalente univoco → **inglese** (*commit*, *dispatch*, *Suspense*) + +### Maiuscole + +| Contesto | Regola | Esempio | +| -------- | ------ | ------- | +| Concetti core React in prosa | minuscolo | *le props*, *lo state*, *gli hooks* | +| Nomi propri React | maiuscola | *Effetto*, *Strict Mode*, *Suspense*, *Hook* | +| API e codice | come in inglese | `useState`, `createRoot` | -**Non** tradurre questi ID! Sono utilizzati per la navigazione e non funzioneranno più se il documento è referenziato dall'esterno. +### Coerenza obbligatoria -Ad esempio, dato questo link: +- **Non alternare** *state* e *stato* per lo stesso concetto React → sempre *state* +- **Non alternare** *gestore di eventi* e *event handler* → preferire *gestore di eventi* +- **Non alternare** *renderizzare* e *rendere* → preferire *renderizzare* +- Usa *Effetto* (maiuscola) per il concetto React; *effetto collaterale* per side effect generici; *effetto* minuscolo solo fuori dal contesto React + +--- + +## ID delle intestazioni + +Tutte le intestazioni hanno ID espliciti: ```md -See the [beginning section](/getting-started#try-react) for more information. +## Try React {#try-react} ``` -✅ COSÌ VA BENE: +**Non tradurre gli ID.** Servono per la navigazione e i link interni. + +✅ Corretto: ```md ## Prova React {#try-react} ``` -❌ COSÌ NO: +❌ Errato: ```md ## Prova React {#prova-react} ``` -Nel secondo modo il link in alto non funzionerà più. +I commenti `{/*english-slug*/}` dopo le intestazioni restano in inglese. + +--- ## Testo nei blocchi di codice -Non tradurre il testo nei blocchi di codice, a parte i commenti. Potresti voler tradurre anche il testo delle stringhe, ma fai attenzione a non tradurre le stringhe che costituiscono riferimenti al codice! +Non tradurre il codice, **eccetto i commenti**. Attenzione alle stringhe: traduci solo se non sono riferimenti al codice (ID DOM, nomi di variabili, API). -Ad esempio: -```js -// Example -const element =