[READ-ONLY] a fast, modern browser for the npm registry
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

feat(i18n): update Russian translations (#521)

Co-authored-by: Daniel Roe <daniel@roe.dev>

authored by

Bugo
Daniel Roe
and committed by
GitHub
d9172a92 ebe40024

+116 -60
+58 -30
i18n/locales/ru-RU.json
··· 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": { ··· 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": "Предупреждение безопасности", ··· 714 714 "description": "Узнавайте последние новости об npmx.", 715 715 "cta": "Подписаться в Bluesky" 716 716 } 717 + } 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}, с той же учетной записью." 717 745 } 718 746 }, 719 747 "header": {
+58 -30
lunaria/files/ru-RU.json
··· 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": { ··· 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": "Предупреждение безопасности", ··· 714 714 "description": "Узнавайте последние новости об npmx.", 715 715 "cta": "Подписаться в Bluesky" 716 716 } 717 + } 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}, с той же учетной записью." 717 745 } 718 746 }, 719 747 "header": {