|
4 | 4 |
|
5 | 5 | Пожалуйста, используйте этот ишью, если вы хотите что-то перевести и узнать.
|
6 | 6 |
|
| 7 | +## Оглавление |
| 8 | + |
| 9 | +* [Перевод на русский язык сайта reactjs.org](#Перевод-на-русский-язык-сайта-reactjsorg) |
| 10 | + * [Оглавление](#Оглавление) |
| 11 | + * [Общие правила](#Общие-правила) |
| 12 | + * [Слово живое и мёртвое](#Слово-живое-и-мёртвое) |
| 13 | + * [Универсальное руководство по стилю](#Универсальное-руководство-по-стилю) |
| 14 | + * [Идентификаторы заголовков](#Идентификаторы-заголовков) |
| 15 | + * [Текст в блоках кода](#Текст-в-блоках-кода) |
| 16 | + * [Внешние ссылки](#Внешние-ссылки) |
| 17 | + * [Соглашение по переводу (глоссарий)](#Соглашение-по-переводу-глоссарий) |
| 18 | + |
7 | 19 | ## Общие правила
|
8 | 20 |
|
9 | 21 | - _Вы_ и его производные пишите с маленькой буквы
|
10 |
| -- Всегда используйте букву `ё` |
| 22 | +- Всегда используйте букву `ё` (это легко соблюдать с помощью [данного npm-пакета](https://github.com/hcodes/eyo)) |
11 | 23 | - Используйте тире вместо дефиса (оно должно быть намного длиннее, чем дефис). Тире: `—`, дефис: `-`
|
12 | 24 | - Переводите комментарии в примерах кода, но не содержимое
|
13 | 25 | - Используйте терминологию [словаря «Веб-стандартов»](https://github.com/web-standards-ru/dictionary), если нет исходного варианта в таблице ниже
|
14 | 26 | - Ссылки на ресурсы (MDN, Wikipedia) должны вести на русскую версию, если есть соответствующий перевод.
|
15 | 27 | - Иностранные имена переводите с указанием оригинального имени в скобках: _Дэн Абрамов (Dan Abramov)_. При этом обязательно проверьте уже существующий перевод имени в [словаре имён «Веб-стандартов»](https://github.com/web-standards-ru/dictionary/blob/master/names.md)
|
| 28 | +- Не переводите наименования компаний (Facebook, Airbnb), библиотек (Jest, Enzyme) и т.д. |
| 29 | +- Не переводите аббревиатуры (API, DOM, HOC, UI). |
16 | 30 | - Исключайте отсылки на пол читателя (см. секцию 3 на [этой странице](http://www.un.org/ru/gender-inclusive-language/guidelines.shtml))
|
17 | 31 | - Названия статей и заголовки пишутся с одной заглавной буквы («Компоненты и пропсы», не «Компоненты и Пропсы»).
|
18 | 32 |
|
19 |
| -## Слово живое и мёртвое |
| 33 | +### Слово живое и мёртвое |
20 | 34 |
|
21 | 35 | Прежде чем переводить, почитайте пару страниц из «Слова живого и мёртвого» Норы Галь. Хотя бы эти две:
|
22 | 36 |
|
|
48 | 62 |
|
49 | 63 | Небольшие вольности в переводе допускаются, но только если они помогают передать смысл. Перевод не должен быть ни деревянным, ни фамильярным. Истина где-то посередине.
|
50 | 64 |
|
51 |
| -## Соглашение по переводу |
| 65 | +## Универсальное руководство по стилю |
| 66 | + |
| 67 | +Описанные ниже правила пришли [из репозитория](https://github.com/reactjs/reactjs.org-translation/blob/master/style-guide.md), предписывающего стиль общий для **всех** языков, на которые переводится документация. |
| 68 | + |
| 69 | +### Идентификаторы заголовков |
| 70 | + |
| 71 | +Каждый заголовок имеет явный идентификатор: |
| 72 | + |
| 73 | +```md |
| 74 | +## Try React {#try-react} |
| 75 | +``` |
| 76 | + |
| 77 | +**НЕ** переводите такие идентификаторы! Они используются для навигации. Изменение идентификатора неизбежно приведёт к поломке, если на документ ссылкаются извне, например так: |
| 78 | + |
| 79 | +```md |
| 80 | +Прочтите [главу для начинающих](/getting-started#try-react), чтобы узнать больше. |
| 81 | +``` |
| 82 | + |
| 83 | +✅ Можно: |
| 84 | + |
| 85 | +```md |
| 86 | +## Попробуйте React {#try-react} |
| 87 | +``` |
| 88 | + |
| 89 | +❌ НЕЛЬЗЯ: |
| 90 | + |
| 91 | +```md |
| 92 | +## Попробуйте React {#попробуйте-react} |
| 93 | +``` |
| 94 | + |
| 95 | +Это сломает ссылку, приведённую в примере выше. |
| 96 | + |
| 97 | +### Текст в блоках кода |
| 98 | + |
| 99 | +Не переводите текст в блоках кода, кроме комментариев. А вот комментарии и текст в строках следует переводить, если они не относятся к коду. |
| 100 | + |
| 101 | +Пример: |
| 102 | +```js |
| 103 | +// Example |
| 104 | +const element = <h1>Hello, world</h1>; |
| 105 | +ReactDOM.render(element, document.getElementById('root')); |
| 106 | +``` |
| 107 | + |
| 108 | +✅ МОЖНО: |
| 109 | + |
| 110 | +```js |
| 111 | +// Пример |
| 112 | +const element = <h1>Hello, world</h1>; |
| 113 | +ReactDOM.render(element, document.getElementById('root')); |
| 114 | +``` |
| 115 | + |
| 116 | +✅ ТОЖЕ МОЖНО: |
| 117 | + |
| 118 | +```js |
| 119 | +// Пример |
| 120 | +const element = <h1>Здравствуй, мир!</h1>; |
| 121 | +ReactDOM.render(element, document.getElementById('root')); |
| 122 | +``` |
| 123 | + |
| 124 | +❌ НЕЛЬЗЯ: |
| 125 | + |
| 126 | +```js |
| 127 | +// Пример |
| 128 | +const element = <h1>Здравствуй, мир!</h1>; |
| 129 | +// "root" ссылается на идентификатор элемента. |
| 130 | +// Не переводите его! |
| 131 | +ReactDOM.render(element, document.getElementById('корень')); |
| 132 | +``` |
| 133 | + |
| 134 | +❌ СОВСЕМ НЕЛЬЗЯ: |
| 135 | + |
| 136 | +```js |
| 137 | +// Пример |
| 138 | +пост элемент = <з1>Здравствуй, мир!</з1>; |
| 139 | +РеактДОМ.отрендери(элемент, документ.получиЭлементПоАйди('корень')); |
| 140 | +``` |
| 141 | + |
| 142 | +### Внешние ссылки |
| 143 | + |
| 144 | +Если внешняя ссылка ведёт к статье на [MDN] или [Wikipedia], и там существует статья на русском языке, исправьте ссылку, чтобы она указывала на русский вариант, даже если он неполный или требует улучшения. |
| 145 | + |
| 146 | +[MDN]: https://developer.mozilla.org/en-US/ |
| 147 | +[Wikipedia]: https://en.wikipedia.org/wiki/Main_Page |
| 148 | + |
| 149 | +Пример: |
| 150 | + |
| 151 | +```md |
| 152 | +React elements are [immutable](https://en.wikipedia.org/wiki/Immutable_object). |
| 153 | +``` |
| 154 | + |
| 155 | +✅ OK: |
| 156 | + |
| 157 | +```md |
| 158 | +Элементы React [иммутабельны](https://ru.wikipedia.org/wiki/%D0%9D%D0%B5%D0%B8%D0%B7%D0%BC%D0%B5%D0%BD%D1%8F%D0%B5%D0%BC%D1%8B%D0%B9_%D0%BE%D0%B1%D1%8A%D0%B5%D0%BA%D1%82). |
| 159 | +``` |
| 160 | + |
| 161 | +Для ссылок, у которых нету языковых эквивалентов (Stack Overflow, видео на YouTube, и т. д.), просто оставьте оригинальный вариант как есть. |
| 162 | + |
| 163 | +## Соглашение по переводу (глоссарий) |
| 164 | + |
| 165 | +**Пожалуйста, поддерживайте глоссарий в алфавитном порядке.** |
52 | 166 |
|
53 | 167 | | Оригинальный термин | Перевод |
|
54 | 168 | | ------------------ | ---------- |
|
| 169 | +| API reference | справочник API | |
55 | 170 | | array | массив |
|
56 | 171 | | arrow function | стрелочная функция |
|
57 | 172 | | attribute | атрибут |
|
| 173 | +| batch | группа обновлений | |
| 174 | +| batching | группировка | |
| 175 | +| bind | привязка | |
58 | 176 | | bug | баг, дефект |
|
59 | 177 | | bundler | бандлер |
|
60 | 178 | | callback | колбэк |
|
61 | 179 | | camelCase | *camelCase* |
|
| 180 | +| child | дочерний | |
| 181 | +| child component | дочерний компонент | |
62 | 182 | | class component | классовый компонент |
|
| 183 | +| cleanup | сброс (*напр., сбрасываемый эффект, сбросить эффект, сбрасывающая функция*) | |
| 184 | +| code splitting | разделение кода | |
| 185 | +| codemod | codemod-скрипт | |
| 186 | +| commit | фиксация | |
| 187 | +| context | контекст | |
63 | 188 | | (un)controlled component | (не)контролируемый компонент |
|
| 189 | +| cross-cutting concerns | cквозная функциональность | |
| 190 | +| custom | пользовательский (*напр., пользовательские хуки*) | |
64 | 191 | | debugging | отладка |
|
65 |
| -| DOM container | DOM-контейнер | |
66 |
| -| error | ошибка | |
67 |
| -| debugging | отладка | |
| 192 | +| destructuring | деструктуризация | |
68 | 193 | | development | разработка |
|
69 | 194 | | development mode | режим разработки |
|
| 195 | +| developer tools | инструменты разработки | |
| 196 | +| display name | отображаемое имя | |
| 197 | +| DOM container | DOM-контейнер | |
| 198 | +| effect | эффект | |
| 199 | +| error | ошибка | |
| 200 | +| error boundary | предохранитель | |
| 201 | +| escape hatch | лазейка (*напр., императивные лазейки*) | |
| 202 | +| fallback | запасной | |
| 203 | +| feature | возможность (*менее предпочтительный синоним: функциональность*) | |
| 204 | +| folder | папка | |
70 | 205 | | framework | фреймворк |
|
71 | 206 | | function component | функциональный компонент |
|
72 |
| -| hook | хук | |
| 207 | +| helper | вспомогательный(ая); *напр., helper function — вспомогательная функция* | |
| 208 | +| Higher-Order Component(s) | Компонент(ы) высшего порядка | |
| 209 | +| hook | хук *(с маленькой буквы)* *(напр., хук эффекта, хук контекста)* | |
| 210 | +| incapsulation | инкапсуляция | |
| 211 | +| incapsulated | инкапсулированный | |
73 | 212 | | key | ключ |
|
74 | 213 | | lazy initialization | ленивая инициализация |
|
75 | 214 | | library | библиотека |
|
|
78 | 217 | | lifting state up | подъём состояния, поднимать состояние |
|
79 | 218 | | local state | внутреннее состояние |
|
80 | 219 | | lowercase | нижний регистр |
|
| 220 | +| mixin | примесь | |
81 | 221 | | mock | фиктивный |
|
82 | 222 | | (im)mutable | (им)мутабельный |
|
83 | 223 | | (im)mutability | (им)мутабельность |
|
| 224 | +| (un)mount | (раз)монтирование | |
84 | 225 | | mutate | мутировать |
|
| 226 | +| native | нативный | |
85 | 227 | | Note | Примечание |
|
| 228 | +| online | онлайн | |
| 229 | +| online playground | онлайн-песочница | |
86 | 230 | | paint | отрисовка, перерисовка |
|
| 231 | +| persistent | персистентность, персистентный | |
| 232 | +| phase | этап (*напр., этап рендеринга, этап фиксации*) | |
87 | 233 | | prop | проп *(ед. ч.)* |
|
88 | 234 | | props | пропсы *(мн. ч.)* |
|
89 | 235 | | production | продакшен |
|
90 | 236 | | production mode | продакшен-режим |
|
91 |
| -| reuse | повторное использование, переиспользование | |
92 | 237 | | React | React |
|
93 | 238 | | React element | React-элемент, элемент React |
|
94 | 239 | | reconciliation | согласование |
|
| 240 | +| reducer | редюсер | |
| 241 | +| ref | реф *(ед. ч.)* | |
| 242 | +| refs | рефы *(мн. ч.)* | |
| 243 | +| ref forwarding | перенаправление рефа | |
95 | 244 | | render(ing) | рендер, рендерить, отрендерить |
|
| 245 | +| renderer | рендерер (*напр., поверхностный рендерер*) | |
96 | 246 | | re-render(ing) | (по контексту) рендер, повторный рендер, последующий рендер, отрендерить снова |
|
97 | 247 | | render prop | рендер-проп *(ед. ч.)* |
|
98 | 248 | | render props | рендер-пропсы *(мн. ч.)* |
|
99 |
| -| ref | реф *(ед. ч.)* | |
100 |
| -| refs | рефы *(мн. ч.)* | |
| 249 | +| reuse | повторное использование, переиспользование | |
| 250 | +| (previous/next) section | (предыдущая/следующая) глава *(только в разделе Основные понятия)* | |
| 251 | +| shallow | поверхностное (сравнение, равенство), поверхностный (рендеринг) | |
| 252 | +| side effect | побочный эффект | |
| 253 | +| snapshot | снимок | |
101 | 254 | | state | состояние |
|
| 255 | +| stateful component | компонент с состоянием | |
| 256 | +| stateless component | компонент без состояния | |
| 257 | +| suspense | задержка | |
102 | 258 | | tag | тег |
|
103 | 259 | | template literals | шаблонные строки |
|
| 260 | +| Tip | Совет | |
| 261 | +| TLDR | Вкратце | |
104 | 262 | | Try it on CodePen | Посмотреть на CodePen |
|
| 263 | +| tutorial | введение | |
| 264 | +| unidirectional data flow | однонаправленный поток данных | |
105 | 265 | | UI | UI |
|
| 266 | +| update | обновление | |
106 | 267 | | user interface | интерфейс (добавляйте «пользовательский» только если по контексту непонятно) |
|
107 |
| -| Tip | Совет | |
108 | 268 | | Warning | Предупреждение |
|
0 commit comments