|
47 | 47 | }, |
48 | 48 | "settings": { |
49 | 49 | "title": "настройки", |
50 | | - "tagline": "настройте ваш опыт использования npmx", |
| 50 | + "tagline": "сделайте npmx удобным для себя", |
51 | 51 | "meta_description": "Настройте npmx.dev под себя: тема, язык и параметры отображения.", |
52 | 52 | "sections": { |
53 | 53 | "appearance": "Внешний вид", |
|
71 | 71 | "translation_progress": "Прогресс перевода" |
72 | 72 | }, |
73 | 73 | "i18n": { |
74 | | - "missing_keys": "{count} отсутствующий перевод | {count} отсутствующих переводов", |
| 74 | + "missing_keys": "{count} отсутствующий перевод | {count} отсутствующих перевода | {count} отсутствующих переводов", |
75 | 75 | "copy_keys": "Скопировать ключи", |
76 | | - "show_more_keys": "Показать еще {count}...", |
| 76 | + "show_more_keys": "Показать ещё {count}...", |
77 | 77 | "contribute_hint": "Помогите улучшить этот перевод, добавив недостающие ключи.", |
78 | 78 | "edit_on_github": "Редактировать на GitHub", |
79 | 79 | "view_guide": "Руководство по переводу" |
80 | 80 | }, |
81 | 81 | "common": { |
82 | 82 | "loading": "Загрузка...", |
83 | | - "loading_more": "Загрузка еще...", |
| 83 | + "loading_more": "Загрузить ещё...", |
84 | 84 | "loading_packages": "Загрузка пакетов...", |
85 | 85 | "end_of_results": "Конец результатов", |
86 | 86 | "try_again": "Попробовать снова", |
|
184 | 184 | "collapse_major": "Свернуть мажорную {major}", |
185 | 185 | "expand_major": "Развернуть мажорную {major}", |
186 | 186 | "other_versions": "Другие версии", |
187 | | - "more_tagged": "еще {count} с тегом", |
| 187 | + "more_tagged": "ещё {count} с тегом", |
188 | 188 | "all_covered": "Все версии охвачены тегами выше", |
189 | 189 | "deprecated_title": "{version} (устарела)" |
190 | 190 | }, |
191 | 191 | "dependencies": { |
192 | 192 | "title": "Зависимости ({count})", |
193 | 193 | "list_label": "Зависимости пакета", |
194 | | - "show_all": "показать все {count} зависимостей", |
| 194 | + "show_all": "показать все ({count})", |
195 | 195 | "optional": "опционально", |
196 | 196 | "view_vulnerabilities": "Посмотреть уязвимости" |
197 | 197 | }, |
198 | 198 | "peer_dependencies": { |
199 | 199 | "title": "Peer-зависимости ({count})", |
200 | 200 | "list_label": "Peer-зависимости пакета", |
201 | | - "show_all": "показать все {count} peer-зависимостей" |
| 201 | + "show_all": "показать все ({count})" |
202 | 202 | }, |
203 | 203 | "optional_dependencies": { |
204 | 204 | "title": "Опциональные зависимости ({count})", |
205 | 205 | "list_label": "Опциональные зависимости пакета", |
206 | | - "show_all": "показать все {count} опциональных зависимостей" |
| 206 | + "show_all": "показать все ({count})" |
207 | 207 | }, |
208 | 208 | "maintainers": { |
209 | 209 | "title": "Мейнтейнеры", |
|
216 | 216 | "add_button": "добавить", |
217 | 217 | "cancel_add": "Отменить добавление владельца", |
218 | 218 | "add_owner": "+ Добавить владельца", |
219 | | - "show_more": "(показать еще {count})", |
| 219 | + "show_more": "(показать ещё {count})", |
220 | 220 | "show_less": "(показать меньше)" |
221 | 221 | }, |
222 | 222 | "downloads": { |
|
241 | 241 | "install_scripts": { |
242 | 242 | "title": "Скрипты установки", |
243 | 243 | "script_label": "(скрипт)", |
244 | | - "npx_packages": "{count} пакет npx | {count} пакетов npx", |
| 244 | + "npx_packages": "{count} пакет npx | {count} пакета npx | {count} пакетов npx", |
245 | 245 | "currently": "сейчас {version}" |
246 | 246 | }, |
247 | 247 | "playgrounds": { |
248 | 248 | "title": "Попробовать", |
249 | 249 | "choose": "выберите песочницу" |
250 | 250 | }, |
251 | 251 | "metrics": { |
252 | | - "esm": "Поддержка ES Modules", |
| 252 | + "esm": "Поддержка ES-модулей", |
253 | 253 | "cjs": "Поддержка CommonJS", |
254 | | - "no_esm": "Нет поддержки ES Modules", |
| 254 | + "no_esm": "Нет поддержки ES-модулей", |
255 | 255 | "types_included": "Типы включены", |
256 | 256 | "types_available": "Типы доступны через {package}", |
257 | 257 | "no_types": "Нет типов TypeScript" |
|
261 | 261 | }, |
262 | 262 | "vulnerabilities": { |
263 | 263 | "no_description": "Описание отсутствует", |
264 | | - "found": "Найдена {count} уязвимость | Найдено {count} уязвимостей", |
265 | | - "deps_found": "Найдена {count} уязвимость | Найдено {count} уязвимостей", |
266 | | - "deps_affected": "Затронута {count} зависимость | Затронуто {count} зависимостей", |
| 264 | + "found": "Найдена {count} уязвимость | Найдено {count} уязвимости |Найдено {count} уязвимостей", |
| 265 | + "deps_found": "Найдена {count} уязвимость | Найдено {count} уязвимости | Найдено {count} уязвимостей", |
| 266 | + "deps_affected": "Затронута {count} зависимость | Затронуто {count} зависимости | Затронуто {count} зависимостей", |
267 | 267 | "tree_found": "{vulns} уязвимость в {packages}/{total} пакетах | {vulns} уязвимостей в {packages}/{total} пакетах", |
268 | 268 | "scanning_tree": "Сканирование дерева зависимостей...", |
269 | 269 | "show_all_packages": "показать все затронутые пакеты ({count})", |
270 | 270 | "no_summary": "Нет сводки", |
271 | 271 | "view_details": "Посмотреть детали уязвимости", |
272 | 272 | "path": "путь", |
273 | | - "more": "+{count} еще", |
274 | | - "packages_failed": "{count} пакет не удалось проверить | {count} пакетов не удалось проверить", |
| 273 | + "more": "ещё +{count}", |
| 274 | + "packages_failed": "{count} пакет не удалось проверить | {count} пакета не удалось проверить | {count} пакетов не удалось проверить", |
275 | 275 | "no_known": "Нет известных уязвимостей в {count} пакетах", |
276 | 276 | "scan_failed": "Не удалось выполнить сканирование на уязвимости", |
277 | 277 | "depth": { |
|
316 | 316 | "filter_label": "Фильтр пакетов", |
317 | 317 | "filter_placeholder": "Фильтровать пакеты...", |
318 | 318 | "sort_label": "Сортировка пакетов", |
319 | | - "showing_count": "Показано {filtered} из {total} пакетов" |
| 319 | + "showing_count": "Показано {filtered} из {total}" |
320 | 320 | }, |
321 | 321 | "skeleton": { |
322 | 322 | "loading": "Загрузка информации о пакете", |
|
333 | 333 | }, |
334 | 334 | "sort": { |
335 | 335 | "downloads": "Больше всего скачиваний", |
336 | | - "updated": "Недавно обновленные", |
| 336 | + "updated": "Недавно обновлённые", |
337 | 337 | "name_asc": "Имя (А-Я)", |
338 | 338 | "name_desc": "Имя (Я-А)" |
339 | 339 | } |
|
403 | 403 | "no_teams": "Команды не найдены", |
404 | 404 | "list_label": "Команды организации", |
405 | 405 | "delete_team": "Удалить команду {name}", |
406 | | - "member_count": "{count} участник | {count} участников", |
| 406 | + "member_count": "{count} участник | {count} участника | {count} участников", |
407 | 407 | "members_of": "Участники {team}", |
408 | 408 | "no_members": "Нет участников", |
409 | 409 | "remove_user": "Удалить {user} из команды", |
|
450 | 450 | "cancel_add": "Отменить добавление участника", |
451 | 451 | "add_member": "+ Добавить участника" |
452 | 452 | }, |
453 | | - "public_packages": "{count} публичный пакет | {count} публичных пакетов", |
| 453 | + "public_packages": "{count} публичный пакет | {count} публичных пакета | {count} публичных пакетов", |
454 | 454 | "page": { |
455 | 455 | "packages_title": "Пакеты", |
456 | 456 | "members_tab": "Участники", |
|
461 | 461 | "no_match": "Нет пакетов, соответствующих \"{query}\"", |
462 | 462 | "not_found": "Организация не найдена", |
463 | 463 | "not_found_message": "Организация \"{'@'}{name}\" не существует в npm", |
464 | | - "filter_placeholder": "Фильтровать {count} пакетов..." |
| 464 | + "filter_placeholder": "Фильтровать {count} пакет... | Фильтровать {count} пакета... | Фильтровать {count} пакетов..." |
465 | 465 | } |
466 | 466 | }, |
467 | 467 | "user": { |
|
477 | 477 | "no_packages_hint": "Этот пользователь может не существовать или у него нет публичных пакетов.", |
478 | 478 | "failed_to_load": "Не удалось загрузить пакеты пользователя", |
479 | 479 | "no_match": "Нет пакетов, соответствующих \"{query}\"", |
480 | | - "filter_placeholder": "Фильтровать {count} пакетов..." |
| 480 | + "filter_placeholder": "Фильтровать {count} пакет... | Фильтровать {count} пакета... | Фильтровать {count} пакетов..." |
481 | 481 | }, |
482 | 482 | "orgs_page": { |
483 | 483 | "title": "Организации", |
|
490 | 490 | "loading": "Загрузка организаций...", |
491 | 491 | "empty": "Организации не найдены.", |
492 | 492 | "empty_hint": "Организации определяются по вашим scoped-пакетам.", |
493 | | - "count": "{count} организация | {count} организаций", |
494 | | - "packages_count": "{count} пакет | {count} пакетов" |
| 493 | + "count": "{count} организация | {count} организации | {count} организаций", |
| 494 | + "packages_count": "{count} пакет | {count} пакета | {count} пакетов" |
495 | 495 | } |
496 | 496 | }, |
497 | 497 | "claim": { |
|
531 | 531 | "raw": "Raw", |
532 | 532 | "view_raw": "Посмотреть исходный файл", |
533 | 533 | "file_too_large": "Файл слишком большой для предпросмотра", |
534 | | - "file_size_warning": "{size} превышает лимит в 500KB для подсветки синтаксиса", |
| 534 | + "file_size_warning": "{size} превышает лимит в 500 КБ для подсветки синтаксиса", |
535 | 535 | "load_anyway": "Загрузить всё равно", |
536 | 536 | "failed_to_load": "Не удалось загрузить файл", |
537 | 537 | "unavailable_hint": "Файл может быть слишком большим или недоступным", |
|
576 | 576 | "updated_within": "Обновлено за", |
577 | 577 | "security": "Безопасность", |
578 | 578 | "keywords": "Ключевые слова", |
579 | | - "more_keywords": "еще +{count}", |
| 579 | + "more_keywords": "ещё +{count}", |
580 | 580 | "clear_all": "Очистить все", |
581 | 581 | "remove_filter": "Удалить фильтр {label}", |
582 | 582 | "download_range": { |
|
652 | 652 | "nav_label": "Пагинация" |
653 | 653 | }, |
654 | 654 | "count": { |
655 | | - "showing_filtered": "{filtered} из {total} пакетов", |
656 | | - "showing_all": "{total} пакетов", |
657 | | - "showing_paginated": "{pageSize} из {total} пакетов" |
| 655 | + "showing_filtered": "{filtered} из {total}", |
| 656 | + "showing_all": "{total}", |
| 657 | + "showing_paginated": "{pageSize} из {total}" |
658 | 658 | }, |
659 | 659 | "table": { |
660 | 660 | "security_warning": "Предупреждение безопасности", |
|
716 | 716 | } |
717 | 717 | } |
718 | 718 | }, |
| 719 | + "account_menu": { |
| 720 | + "connect": "подключить", |
| 721 | + "account": "Аккаунт", |
| 722 | + "npm_cli": "npm CLI", |
| 723 | + "atmosphere": "Atmosphere", |
| 724 | + "npm_cli_desc": "Управление пакетами и организациями", |
| 725 | + "atmosphere_desc": "Социальные функции и идентификация", |
| 726 | + "connect_npm_cli": "Подключиться к npm CLI", |
| 727 | + "connect_atmosphere": "Подключиться к Atmosphere", |
| 728 | + "connecting": "Подключение...", |
| 729 | + "ops": "{count} операция | {count} операции | {count} операций", |
| 730 | + "disconnect": "Выйти" |
| 731 | + }, |
| 732 | + "auth": { |
| 733 | + "modal": { |
| 734 | + "title": "Atmosphere", |
| 735 | + "connected_as": "Вы вошли как {'@'}{handle}", |
| 736 | + "disconnect": "Выйти", |
| 737 | + "connect_prompt": "Войдите через аккаунт Atmosphere", |
| 738 | + "handle_label": "Хендл", |
| 739 | + "handle_placeholder": "alice.npmx.social", |
| 740 | + "connect": "Подключить", |
| 741 | + "create_account": "Создать новый аккаунт", |
| 742 | + "connect_bluesky": "Войти через Bluesky", |
| 743 | + "what_is_atmosphere": "Что такое аккаунт Atmosphere?", |
| 744 | + "atmosphere_explanation": "{npmx} использует протокол {atproto} для работы многих социальных функций, позволяя пользователям владеть своими данными и использовать единый аккаунт для всех совместимых приложений. Создав аккаунт, вы сможете использовать другие приложения, такие как {bluesky} и {tangled}, с той же учетной записью." |
| 745 | + } |
| 746 | + }, |
719 | 747 | "header": { |
720 | 748 | "home": "npmx главная", |
721 | 749 | "github": "GitHub", |
|
0 commit comments