diff --git a/DuckDuckGo/ru.lproj/HomeRow.strings b/DuckDuckGo/ru.lproj/HomeRow.strings index 53f5af4463..4a4265b120 100644 --- a/DuckDuckGo/ru.lproj/HomeRow.strings +++ b/DuckDuckGo/ru.lproj/HomeRow.strings @@ -8,5 +8,5 @@ "f6f-QY-3H3.text" = "Добавьте DuckDuckGo на док-панель для быстрого и удобного доступа!"; /* Class = "UILabel"; text = "Add DuckDuckGo to Home"; ObjectID = "Tah-vQ-mf9"; */ -"Tah-vQ-mf9.text" = "Добавьте DuckDuckGo на домашний экран"; +"Tah-vQ-mf9.text" = "Добавьте DuckDuckGo на главный экран"; diff --git a/DuckDuckGo/ru.lproj/Localizable.strings b/DuckDuckGo/ru.lproj/Localizable.strings index 3c22edb920..2fb34dfd2e 100644 --- a/DuckDuckGo/ru.lproj/Localizable.strings +++ b/DuckDuckGo/ru.lproj/Localizable.strings @@ -107,7 +107,7 @@ "addWidget.description" = "Быстрый доступ к конфиденциальному поиску и любимым сайтам."; /* No comment provided by engineer. */ -"addWidget.settings.firstParagraph" = "Удерживайте нажатие на домашнем экране, чтобы запустить режим настройки."; +"addWidget.settings.firstParagraph" = "Удерживайте нажатие на главном экране, чтобы запустить режим настройки."; /* Replacement string is a plus button icon. */ "addWidget.settings.secondParagraph.%@" = "Нажмите кнопку «плюс» %@."; @@ -125,7 +125,7 @@ "alert.title.bookmarkAll" = "Добавить все вкладки в закладки?"; /* Disable protection alert */ -"alert.title.disable.protection" = "Добавить в незащищенные сайты"; +"alert.title.disable.protection" = "Добавить в незащищённые сайты"; /* Disable potection alert placeholder - leave as it is */ "alert.title.disable.protection.placeholder" = "www.example.com"; @@ -143,10 +143,10 @@ "auth.alert.login.button" = "Войти"; /* Authentication Alert - populated with a domain name */ -"auth.alert.message.encrypted" = "Войдите в %@. Ваши учетные данные надежно защищены."; +"auth.alert.message.encrypted" = "Войдите в %@. Ваши учётные данные надёжно защищены."; /* Authentication Alert - populated with a domain name */ -"auth.alert.message.plain" = "Войдите в %@. Ваш пароль передается по незащищенному каналу (соединение не зашифровано)."; +"auth.alert.message.plain" = "Войдите в %@. Ваш пароль передаётся по незащищённому каналу (соединение не зашифровано)."; /* Authentication Password field placeholder */ "auth.alert.password.placeholder" = "Пароль"; @@ -158,7 +158,7 @@ "auth.alert.username.placeholder" = "Имя пользователя"; /* No comment provided by engineer. */ -"autoclear.off" = "Выключено"; +"autoclear.off" = "Отключено"; /* No comment provided by engineer. */ "autoclear.on" = "Включено"; @@ -176,7 +176,7 @@ "autofill.hide-password" = "Скрыть пароль"; /* Disable action for alert when asking the user if they want to keep using autofill */ -"autofill.keep-enabled.alert.disable" = "Выключить"; +"autofill.keep-enabled.alert.disable" = "Отключить"; /* Confirm action for alert when asking the user if they want to keep using autofill */ "autofill.keep-enabled.alert.keep-using" = "Сохранять"; @@ -191,10 +191,10 @@ "autofill.login-save-action-button.toast" = "Просмотр"; /* Message displayed after saving an autofill login */ -"autofill.login-saved.toast" = "Логин сохранен"; +"autofill.login-saved.toast" = "Логин сохранён"; /* Message displayed after updating an autofill login */ -"autofill.login-updated.toast" = "Логин обновлен"; +"autofill.login-updated.toast" = "Логин обновлён"; /* Menu item text for copying autofill login details */ "autofill.logins.copy-prompt" = "Копировать %@"; @@ -272,16 +272,16 @@ "autofill.logins.details.username" = "Имя пользователя"; /* Subtitle for view displayed when autofill has no items */ -"autofill.logins.empty-view.subtitle" = "Учетные данные сохранены и защищены на вашем устройстве."; +"autofill.logins.empty-view.subtitle" = "Учётные данные сохранены и защищены на вашем устройстве."; /* Title for view displayed when autofill has no items */ -"autofill.logins.empty-view.title" = "Сохраненных логинов пока нет"; +"autofill.logins.empty-view.title" = "Сохранённых логинов пока нет"; /* Cancel button for auth when opening login list */ "autofill.logins.list.auth.cancel" = "Отменить"; /* Reason for auth when opening login list */ -"autofill.logins.list.auth.reason" = "Чтобы открыть сохраненные логины, разблокируйте устройство"; +"autofill.logins.list.auth.reason" = "Чтобы открыть сохранённые логины, разблокируйте устройство"; /* Title for close navigation button */ "autofill.logins.list.close-title" = "Закрыть"; @@ -290,10 +290,10 @@ "autofill.logins.list.enable" = "Сохранить и заполнять автоматически"; /* Toast message when a login item is deleted */ -"autofill.logins.list.login-deleted-message" = "Логин для %@ удален"; +"autofill.logins.list.login-deleted-message" = "Логин для %@ удалён"; /* Toast message when a login item without a title is deleted */ -"autofill.logins.list.login-deleted-message-no-title" = "Логин удален"; +"autofill.logins.list.login-deleted-message-no-title" = "Логин удалён"; /* Placeholder for search field on autofill login listing */ "autofill.logins.list.search-placeholder" = "Поиск логинов"; @@ -314,7 +314,7 @@ "autofill.logins.prompt.auth.cancel" = "Отменить"; /* Reason for auth during login prompt */ -"autofill.logins.prompt.auth.reason" = "Разблокируйте, чтобы использовать сохраненный логин"; +"autofill.logins.prompt.auth.reason" = "Разблокируйте, чтобы использовать сохранённый логин"; /* Title for section of autofill logins that are an exact match to the current website */ "autofill.logins.prompt.exact.match.title" = "С этого сайта"; @@ -329,7 +329,7 @@ "autofill.logins.prompt.password.button.title" = "Пароль %@"; /* Title for autofill login prompt */ -"autofill.logins.prompt.title" = "Использовать сохраненный логин?"; +"autofill.logins.prompt.title" = "Использовать сохранённый логин?"; /* Subtitle displayed when there are no results on Autofill search, example : No Result (Title) for Duck (Subtitle) */ "autofill.logins.search.no-results.subtitle" = "по запросу «%@»"; @@ -338,10 +338,10 @@ "autofill.logins.search.no-results.title" = "Нет результатов"; /* Subtitle for prompt to use suggested strong password for creating a login */ -"autofill.password-generation-prompt.subtitle" = "Пароль будет сохранен в разделе «Логины»."; +"autofill.password-generation-prompt.subtitle" = "Пароль будет сохранён в разделе «Логины»."; /* Title for prompt to use suggested strong password for creating a login */ -"autofill.password-generation-prompt.title" = "Использовать пароль, сгенерированный DuckDuckGo?"; +"autofill.password-generation-prompt.title" = "Использовать пароль, созданный DuckDuckGo?"; /* Button title choosing to use the suggested generated password for creating a login */ "autofill.password-generation-prompt.use-generated-password.cta" = "Использовать предложенный"; @@ -350,7 +350,7 @@ "autofill.password-generation-prompt.use-own-password.cta" = "Создать собственный"; /* Message displayed on modal asking for the user to save the login for the first time */ -"autofill.save-login.new-user.message" = "Учетные данные надежно хранятся на вашем устройстве, а проконтролировать их можно в меню «Логины» в «Настройках»."; +"autofill.save-login.new-user.message" = "Учётные данные надёжно хранятся на вашем устройстве, а проконтролировать их можно в меню «Логины» в «Настройках»."; /* Title displayed on modal asking for the user to save the login for the first time */ "autofill.save-login.new-user.title" = "Хотите, чтобы DuckDuckGo сохранил логин?"; @@ -374,7 +374,7 @@ "autofill.show-password" = "Показать пароль"; /* Message displayed on modal asking for the user to update the password */ -"autofill.update-password.message" = "DuckDuckGo обновит логин, сохраненный на вашем устройстве."; +"autofill.update-password.message" = "DuckDuckGo обновит логин, сохранённый на вашем устройстве."; /* Confirm CTA displayed on modal asking for the user to update the password */ "autofill.update-password.save.CTA" = "Обновить пароль"; @@ -557,19 +557,19 @@ "dax.onboarding.browsing.one.tracker.cta" = "Дай пять!"; /* First paramter is a string - network name, 2nd parameter is a string - domain name */ -"dax.onboarding.browsing.site.is.major.tracker" = "Внимание! Мы не можем скрыть вашу активность от %1$@ на %2$@.\n\nИспользуйте наш браузер, и мы сократим объем собираемой о вас информации, заблокировав трекеры %1$@ на других сайтах."; +"dax.onboarding.browsing.site.is.major.tracker" = "Внимание! Мы не можем скрыть вашу активность от %1$@ на %2$@.\n\nИспользуйте наш браузер, и мы сократим объём собираемой о вас информации, заблокировав трекеры %1$@ на других сайтах."; /* No comment provided by engineer. */ "dax.onboarding.browsing.site.is.major.tracker.cta" = "Понятно"; /* Parameters are domain names (strings) */ -"dax.onboarding.browsing.site.owned.by.major.tracker" = "Внимание! Так как %1$@ принадлежит сети %2$@, мы не можем скрыть вашу активность на этом ресурсе.\n\nИспользуйте наш браузер, и мы сократим объем собираемой о вас информации, заблокировав трекеры %2$@ на других сайтах."; +"dax.onboarding.browsing.site.owned.by.major.tracker" = "Внимание! Так как %1$@ принадлежит сети %2$@, мы не можем скрыть вашу активность на этом ресурсе.\n\nИспользуйте наш браузер, и мы сократим объём собираемой о вас информации, заблокировав трекеры %2$@ на других сайтах."; /* Got It */ "dax.onboarding.browsing.site.owned.by.major.tracker.cta" = "Понятно"; /* No comment provided by engineer. */ -"dax.onboarding.browsing.without.trackers" = "Вы жмете на кнопки и листаете страницы — мы блокируем трекеры.\n\nПользуйтесь сайтами без страха!"; +"dax.onboarding.browsing.without.trackers" = "Вы жмёте на кнопки и листаете страницы — мы блокируем трекеры.\n\nПользуйтесь сайтами без страха!"; /* No comment provided by engineer. */ "dax.onboarding.browsing.without.trackers.cta" = "Понятно"; @@ -590,7 +590,7 @@ "dax.onboarding.home.add.favorite.accessible" = "Посещайте любимые сайты в мгновение ока! Посетите один из своих любимых сайтов. Затем нажмите кнопку меню и выберите «Добавить в избранное»."; /* No comment provided by engineer. */ -"dax.onboarding.home.initial" = "А теперь попробуйте заглянуть на любимый сайт!\n\nМы заблокируем трекеры и пресечем слежку. И даже постараемся повысить безопасность соединения 🔒"; +"dax.onboarding.home.initial" = "А теперь попробуйте заглянуть на любимый сайт!\n\nМы заблокируем трекеры и пресечём слежку. И даже постараемся повысить безопасность соединения 🔒"; /* ad = advertisment */ "dax.onboarding.home.subsequent" = "Проще некуда!\n\nПросматривать сайтам с нами — значит навсегда попрощаться с назойливой рекламой 👍"; @@ -650,7 +650,7 @@ "downloads.message.download-complete" = "Завершена загрузка файла %@"; /* Message confirming the file was deleted. Parameter is file's filename */ -"downloads.message.download-deleted" = "Файл %@ удален"; +"downloads.message.download-deleted" = "Файл %@ удалён"; /* Message informing that the download has failed due to connection issues */ "downloads.message.download-failed" = "Ошибка загрузки. Проверьте подключение к интернету."; @@ -695,10 +695,10 @@ "email.settings.enabled" = "Включено"; /* Footer text for the email feature */ -"email.settings.footer" = "Снятие почтовой защиты на данном устройстве лишит вас возможности вносить свой личный адрес на Duck или свежесгенерированный приватный адрес Duck в поле для электронной почты при посещении сайтов.

Если вы хотите полностью удалить свои адреса Duck, задать нам вопрос или отправить отзывы и предложения, пишите нам: support@duck.com."; +"email.settings.footer" = "Снятие почтовой защиты на данном устройстве лишит вас возможности вносить свой личный адрес на Duck или свежесозданный приватный адрес Duck в поле для электронной почты при посещении сайтов.

Если вы хотите полностью удалить свои адреса Duck, задать нам вопрос или отправить отзывы и предложения, пишите нам: support@duck.com."; /* Signed out state for the email feature */ -"email.settings.off" = "Выключено"; +"email.settings.off" = "Отключено"; /* Subtitle for the email settings cell */ "email.settings.subtitle" = "Блокировка почтовых трекеров и скрытие адреса"; @@ -710,7 +710,7 @@ "email.signup-prompt.alert.exit" = "Выйти из настройки"; /* Title for exiting the Email Protection signup early alert */ -"email.signup-prompt.alert.title" = "Если вы прервете настройку, ваш адрес Duck Address не сохранится!"; +"email.signup-prompt.alert.title" = "Если вы прервёте настройку, ваш адрес Duck Address не сохранится!"; /* Button title choosing not to sign up for email protection and not to be prompted again */ "email.signup-prompt.do-not-signup-button.cta" = "Больше не показывать"; @@ -758,7 +758,7 @@ "feedback.browserFeatures.images" = "Работа с изображениями"; /* No comment provided by engineer. */ -"feedback.browserFeatures.navigation" = "Переход вперед и назад и/или обновление страницы"; +"feedback.browserFeatures.navigation" = "Переход вперёд и назад и/или обновление страницы"; /* No comment provided by engineer. */ "feedback.browserFeatures.other" = "Ничего из перечисленного"; @@ -926,7 +926,7 @@ "fireButtonAnimation.airstream.name" = "Воздушный поток"; /* No comment provided by engineer. */ -"fireButtonAnimation.fireRising.name" = "Инферно"; +"fireButtonAnimation.fireRising.name" = "Пламя"; /* No comment provided by engineer. */ "fireButtonAnimation.none.name" = "Без анимации"; @@ -935,7 +935,7 @@ "fireButtonAnimation.waterSwirl.name" = "Водоворот"; /* No comment provided by engineer. */ -"home.row.onboarding.header" = "Добавьте DuckDuckGo на домашний экран!"; +"home.row.onboarding.header" = "Добавьте DuckDuckGo на главный экран!"; /* No comment provided by engineer. */ "home.row.reminder.message" = "Добавьте DuckDuckGo на док-панель для быстрого доступа!"; @@ -947,7 +947,7 @@ "homeTab.searchAndFavorites" = "Введите поисковый запрос или адрес сайта"; /* Home tab title */ -"homeTab.title" = "Домашняя"; +"homeTab.title" = "Главная"; /* No comment provided by engineer. */ "keyCommandAddBookmark" = "Добавить закладку"; @@ -959,7 +959,7 @@ "keyCommandBrowserBack" = "Назад"; /* No comment provided by engineer. */ -"keyCommandBrowserForward" = "Вперед"; +"keyCommandBrowserForward" = "Вперёд"; /* No comment provided by engineer. */ "keyCommandClose" = "Закрыть"; @@ -1076,7 +1076,7 @@ "onboarding.widgets.continueButton" = "Добавить виджет"; /* No comment provided by engineer. */ -"onboarding.widgets.header" = "Пользоваться DuckDuckGo стало еще проще."; +"onboarding.widgets.header" = "Пользоваться DuckDuckGo стало ещё проще."; /* No comment provided by engineer. */ "onboarding.widgets.skipButton" = "Позже"; @@ -1106,16 +1106,16 @@ "open.externally.failed" = "Приложение для открытия этой ссылки не найдено"; /* No comment provided by engineer. */ -"preserveLogins.domain.list.footer" = "Чтобы вам не приходилось каждый раз входить в свою учетную запись, сайты используют куки-файлы. Если сделать сайт огнеупорным, мы не будем стирать его куки-файлы, даже если вы воспользуетесь кнопкой «Огонь». Но мы по-прежнему будем блокировать сторонние трекеры, в том числе на огнеупорных сайтах."; +"preserveLogins.domain.list.footer" = "Чтобы вам не приходилось каждый раз входить в свою учётную запись, сайты используют куки-файлы. Если сделать сайт огнеупорным, мы не будем стирать его куки-файлы, даже если вы воспользуетесь кнопкой «Огонь». Но мы по-прежнему будем блокировать сторонние трекеры, в том числе на огнеупорных сайтах."; /* Section header above Fireproofed websites list */ "preserveLogins.domain.list.title" = "Огнеупорные сайты"; /* Alert message explaining to users that the benefit of fireproofing a site is that they will be kept signed in */ -"preserveLogins.fireproof.message" = "Вам не придется заново входить в свою учетную запись даже после применения кнопки «Огонь»."; +"preserveLogins.fireproof.message" = "Вам не придётся заново входить в свою учётную запись даже после применения кнопки «Огонь»."; /* Parameter is a string - domain name. Alert title prompting user to fireproof a site so they can stay signed in */ -"preserveLogins.fireproof.title" = "Сделать сайт %@ огнеупорным, чтобы не выходить из учетной записи?"; +"preserveLogins.fireproof.title" = "Сделать сайт %@ огнеупорным, чтобы не выходить из учётной записи?"; /* Confirm fireproofing action */ "preserveLogins.menu.confirm" = "Сделать огнеупорным"; @@ -1157,7 +1157,7 @@ "prompt.custom.url.scheme.open" = "Открыть"; /* No comment provided by engineer. */ -"prompt.custom.url.scheme.prompt" = "Выйти из DuckDuckGo для просмотра этого контента?"; +"prompt.custom.url.scheme.prompt" = "Выйти из DuckDuckGo для просмотра этого содержимого?"; /* Alert title */ "prompt.custom.url.scheme.title" = "Открыть в другом приложении?"; @@ -1175,7 +1175,7 @@ "section.title.favorites" = "Избранное"; /* No comment provided by engineer. */ -"settings.about.text" = "DuckDuckGo задает новый стандарт доверия в сети.\n\nНаш браузер оснащен всеми функциями защиты личных данных в интернете, включая блокировку трекеров, надежное шифрование и конфиденциальный поиск DuckDuckGo.\n\nИнтернет — не место для постоянной слежки, а скрыться от посторонних глаз должно быть не сложнее, чем закрыть жалюзи на окнах."; +"settings.about.text" = "DuckDuckGo задаёт новый стандарт доверия в сети.\n\nНаш браузер оснащён всеми функциями защиты личных данных в интернете, включая блокировку трекеров, надёжное шифрование и конфиденциальный поиск DuckDuckGo.\n\nИнтернет — не место для постоянной слежки, а скрыться от посторонних глаз должно быть не сложнее, чем закрыть жалюзи на окнах."; /* Report a Broken Site screen confirmation button */ "siteFeedback.buttonText" = "Отправить жалобу"; @@ -1196,13 +1196,13 @@ "siteFeedback.urlPlaceholder" = "На каком сайте возникает проблема?"; /* Accessibility label on remove button */ -"tab.close.home" = "Закрыть домашнюю вкладку"; +"tab.close.home" = "Закрыть главную вкладку"; /* Accesibility label: first string is website title, second is address */ "tab.close.with.title.and.address" = "Закрыть сайт «%1$@» по адресу %2$@"; /* Accessibility label on tab cell */ -"tab.open.home" = "Открыть домашнюю вкладку"; +"tab.open.home" = "Открыть главную вкладку"; /* Accesibility label: first string is website title, second is address */ "tab.open.with.title.and.address" = "Открыть сайт «%1$@» по адресу %2$@"; @@ -1217,7 +1217,7 @@ "textSize.footer" = "Размер текста — %@"; /* Dark Theme entry */ -"theme.acc.dark" = "Темная"; +"theme.acc.dark" = "Тёмная"; /* Short entry for Default System theme */ "theme.acc.default" = "Тема системы"; @@ -1226,7 +1226,7 @@ "theme.acc.light" = "Светлая"; /* Dark Theme entry */ -"theme.name.dark" = "Темная"; +"theme.name.dark" = "Тёмная"; /* Entry for Default System theme */ "theme.name.default" = "По умолчанию"; diff --git a/DuckDuckGo/ru.lproj/Localizable.stringsdict b/DuckDuckGo/ru.lproj/Localizable.stringsdict index 33e60942d5..0c2fb3fb62 100644 --- a/DuckDuckGo/ru.lproj/Localizable.stringsdict +++ b/DuckDuckGo/ru.lproj/Localizable.stringsdict @@ -33,25 +33,25 @@ NSStringFormatValueTypeKey d one - *%2$@, %3$@* и еще *1 сервис* пытались вести за вами слежку. + *%2$@, %3$@* и ещё *1 сервис* пытались вести за вами слежку. Но мы их заблокировали! ☝️ Заходя на новый сайт, вы всегда можете проверить, шпионит ли он за вами: просто загляните в адресную строку. few - *%2$@, %3$@* и еще *%1$d сервиса* пытались вести за вами слежку. + *%2$@, %3$@* и ещё *%1$d сервиса* пытались вести за вами слежку. Но мы их заблокировали! ☝️ Заходя на новый сайт, вы всегда можете проверить, шпионит ли он за вами: просто загляните в адресную строку. many - *%2$@, %3$@* и еще *%1$d сервисов* пытались вести за вами слежку. + *%2$@, %3$@* и ещё *%1$d сервисов* пытались вести за вами слежку. Но мы их заблокировали! ☝️ Заходя на новый сайт, вы всегда можете проверить, шпионит ли он за вами: просто загляните в адресную строку. other - *%2$@, %3$@* и другие сервисы *(еще %1$d)* пытались вести за вами слежку. + *%2$@, %3$@* и другие сервисы *(ещё %1$d)* пытались вести за вами слежку. Но мы их заблокировали! @@ -167,9 +167,13 @@ NSStringFormatSpecTypeKey NSStringPluralRuleType other - %d tracking attempts + Попыток отслеживания: %d one - %d tracking attempt + %d попытка отслеживания + few + %d попытки отслеживания + many + %d попыток отслеживания NSStringFormatValueTypeKey d @@ -183,9 +187,13 @@ NSStringFormatSpecTypeKey NSStringPluralRuleType other - %d tracking attempts + Попыток отслеживания: %d one - %d tracking attempt + %d попытка отслеживания + few + %d попытки отслеживания + many + %d попыток отслеживания NSStringFormatValueTypeKey d diff --git a/DuckDuckGo/ru.lproj/Main.strings b/DuckDuckGo/ru.lproj/Main.strings index ad87d393bf..1f7e652537 100644 --- a/DuckDuckGo/ru.lproj/Main.strings +++ b/DuckDuckGo/ru.lproj/Main.strings @@ -1,5 +1,5 @@ /* Class = "UIBarButtonItem"; title = "Browse Forward"; ObjectID = "cUp-YP-aMf"; */ -"cUp-YP-aMf.title" = "Вперед"; +"cUp-YP-aMf.title" = "Вперёд"; /* Class = "UIBarButtonItem"; title = "Tab Switcher"; ObjectID = "K7o-WL-SC5"; */ "K7o-WL-SC5.title" = "Переключатель вкладок"; diff --git a/DuckDuckGo/ru.lproj/OmniBar.strings b/DuckDuckGo/ru.lproj/OmniBar.strings index 81efa98a8e..17fc161a33 100644 --- a/DuckDuckGo/ru.lproj/OmniBar.strings +++ b/DuckDuckGo/ru.lproj/OmniBar.strings @@ -2,7 +2,7 @@ "1rB-5w-de3.accessibilityLabel" = "Настройки"; /* Class = "UIButton"; accessibilityLabel = "Browse forward"; ObjectID = "aXg-p3-oeq"; */ -"aXg-p3-oeq.accessibilityLabel" = "Вперед"; +"aXg-p3-oeq.accessibilityLabel" = "Вперёд"; /* Class = "UIButton"; accessibilityLabel = "Clear Text"; ObjectID = "Dt8-We-5tV"; */ "Dt8-We-5tV.accessibilityLabel" = "Удалить текст"; diff --git a/DuckDuckGo/ru.lproj/Onboarding.strings b/DuckDuckGo/ru.lproj/Onboarding.strings index 4edd5f11b2..e3d413dc85 100644 --- a/DuckDuckGo/ru.lproj/Onboarding.strings +++ b/DuckDuckGo/ru.lproj/Onboarding.strings @@ -1,5 +1,5 @@ /* Class = "UIViewController"; title = "Open links with peace of mind, every time."; ObjectID = "0MQ-7J-rAM"; */ -"0MQ-7J-rAM.title" = "Открывайте ссылки, ни о чем не беспокоясь."; +"0MQ-7J-rAM.title" = "Открывайте ссылки, ни о чём не беспокоясь."; /* Class = "UIViewController"; title = "Quickly search or visit your favorite sites, all while protecting your privacy."; ObjectID = "3xN-1o-4I4"; */ "3xN-1o-4I4.title" = "Быстрый поиск и посещение любимых сайтов без всякой слежки."; diff --git a/DuckDuckGo/ru.lproj/PrivacyDashboard.strings b/DuckDuckGo/ru.lproj/PrivacyDashboard.strings index 75181675d4..109b2cdf97 100644 --- a/DuckDuckGo/ru.lproj/PrivacyDashboard.strings +++ b/DuckDuckGo/ru.lproj/PrivacyDashboard.strings @@ -65,7 +65,7 @@ "F5w-e3-JfY.text" = "www.example.com"; /* Class = "UIButton"; normalTitle = "Unprotected Sites"; ObjectID = "fqL-1Q-ilH"; */ -"fqL-1Q-ilH.normalTitle" = "Незащищенные сайты"; +"fqL-1Q-ilH.normalTitle" = "Незащищённые сайты"; /* Class = "UILabel"; text = "Networks Blocked"; ObjectID = "Ge6-9h-2z5"; */ "Ge6-9h-2z5.text" = "Заблокированы сети трекеров"; @@ -86,10 +86,10 @@ "J3L-KE-1Vb.text" = "Метка"; /* Class = "UILabel"; text = "No privacy practices found"; ObjectID = "k0S-dU-EUe"; */ -"k0S-dU-EUe.text" = "Уровень конфиденциальности не определен"; +"k0S-dU-EUe.text" = "Уровень конфиденциальности не определён"; /* Class = "UIButton"; normalTitle = "Unprotected Sites"; ObjectID = "Kme-pZ-l7N"; */ -"Kme-pZ-l7N.normalTitle" = "Незащищенные сайты"; +"Kme-pZ-l7N.normalTitle" = "Незащищённые сайты"; /* Class = "UILabel"; text = "Label"; ObjectID = "Mv2-oP-SQd"; */ "Mv2-oP-SQd.text" = "Метка"; @@ -122,7 +122,7 @@ "Y3q-u7-IeX.text" = "ЧАСТОТА БЛОКИРОВАНИЯ"; /* Class = "UILabel"; text = "8 Other Domains Loaded"; ObjectID = "YDP-RX-LaV"; */ -"YDP-RX-LaV.text" = "Загружено еще 8 доменов"; +"YDP-RX-LaV.text" = "Загружено ещё 8 доменов"; /* Class = "UILabel"; text = "Encrypted Connection"; ObjectID = "zz1-Q4-Fxr"; */ "zz1-Q4-Fxr.text" = "Зашифрованное соединение"; diff --git a/DuckDuckGo/ru.lproj/Settings.strings b/DuckDuckGo/ru.lproj/Settings.strings index 174c044a8e..151d78e77d 100644 --- a/DuckDuckGo/ru.lproj/Settings.strings +++ b/DuckDuckGo/ru.lproj/Settings.strings @@ -86,7 +86,7 @@ "dj9-vh-Rig.headerTitle" = "Внешний вид"; /* Class = "UITableViewSection"; footerTitle = "If Touch ID, Face ID or a system passcode is set, you’ll be requested to unlock the app when opening."; ObjectID = "dOj-jn-mSN"; */ -"dOj-jn-mSN.footerTitle" = "Если система защищена технологией Touch ID или Face ID либо кодом доступа, при запуске вам придется разблокировать приложение."; +"dOj-jn-mSN.footerTitle" = "Если система защищена технологией Touch ID или Face ID либо кодом доступа, при запуске вам придётся разблокировать приложение."; /* Class = "UITableViewSection"; headerTitle = "Privacy"; ObjectID = "dOj-jn-mSN"; */ "dOj-jn-mSN.headerTitle" = "Настройки конфиденциальности"; @@ -122,7 +122,7 @@ "fdJ-b1-Des.title" = "Автоудаление данных"; /* Class = "UILabel"; text = "Unprotected Sites"; ObjectID = "FHC-1z-Z3v"; */ -"FHC-1z-Z3v.text" = "Незащищенные сайты"; +"FHC-1z-Z3v.text" = "Незащищённые сайты"; /* Class = "UITableViewSection"; headerTitle = "About"; ObjectID = "FpT-1C-xtx"; */ "FpT-1C-xtx.headerTitle" = "О нас"; @@ -131,7 +131,7 @@ "fV3-86-QQj.title" = "Глобальный контроль конфиденциальности (GPC)"; /* Class = "UILabel"; text = "Add Widget to Home Screen"; ObjectID = "Fxu-zn-51Z"; */ -"Fxu-zn-51Z.text" = "Добавьте виджет на домашний экран"; +"Fxu-zn-51Z.text" = "Добавьте виджет на главный экран"; /* Class = "UILabel"; text = "Fire Button Animation"; ObjectID = "gBo-Cu-e2k"; Note = "Fire button animation settings item"; */ "gBo-Cu-e2k.text" = "Aнимация кнопки «Огонь»"; @@ -170,7 +170,7 @@ "OfP-Kw-IOk.text" = "Огнеупорных сайтов нет"; /* Class = "UINavigationItem"; title = "Unprotected Sites"; ObjectID = "OHV-qC-tL9"; */ -"OHV-qC-tL9.title" = "Незащищенные сайты"; +"OHV-qC-tL9.title" = "Незащищённые сайты"; /* Class = "UILabel"; text = "About DuckDuckGo"; ObjectID = "oM7-1o-9oY"; */ "oM7-1o-9oY.text" = "Несколько слов о DuckDuckGo"; @@ -212,7 +212,7 @@ "vPz-uO-6gB.text" = "Глобальный контроль конфиденциальности (GPC)"; /* Class = "UITableViewSection"; footerTitle = "App exit is defined by swiping the app to close it while inactivity is when the app is in the background."; ObjectID = "vSJ-YJ-bBs"; Note = "Timing setting for automatic data clearing function"; */ -"vSJ-YJ-bBs.footerTitle" = "Под выходом из приложения подразумевается закрытие свайпом, а под бездействием — работа в фоновом режиме."; +"vSJ-YJ-bBs.footerTitle" = "Под выходом из приложения подразумевается закрытие проводя пальцем, а под бездействием — работа в фоновом режиме."; /* Class = "UITableViewSection"; headerTitle = "Desired timing"; ObjectID = "vSJ-YJ-bBs"; Note = "Timing setting for automatic data clearing function"; */ "vSJ-YJ-bBs.headerTitle" = "Предпочитаемое время"; @@ -242,8 +242,8 @@ "zvh-2e-Wmz.text" = "Сайты без защиты конфиденциальности."; /* Class = "UITableViewController"; title = "Home Screen"; ObjectID = "zWP-d3-nVc"; */ -"zWP-d3-nVc.title" = "Домашний экран"; +"zWP-d3-nVc.title" = "Главный экран"; /* Class = "UINavigationItem"; title = "Add Widget to Home Screen"; ObjectID = "zZa-pF-SHk"; */ -"zZa-pF-SHk.title" = "Добавьте виджет на домашний экран"; +"zZa-pF-SHk.title" = "Добавьте виджет на главный экран"; diff --git a/DuckDuckGoTests/MockFiles/remote-messaging-config-example.json b/DuckDuckGoTests/MockFiles/remote-messaging-config-example.json index b20e33e6db..6f901bb698 100644 --- a/DuckDuckGoTests/MockFiles/remote-messaging-config-example.json +++ b/DuckDuckGoTests/MockFiles/remote-messaging-config-example.json @@ -65,8 +65,8 @@ "descriptionText": "Descripción." }, "ru": { - "titleText": "Here goes a title", - "descriptionText": "description" + "titleText": "А сюда и название", + "descriptionText": "описание" } } }, diff --git a/Widgets/ru.lproj/Localizable.strings b/Widgets/ru.lproj/Localizable.strings index 137b724614..9536b89934 100644 --- a/Widgets/ru.lproj/Localizable.strings +++ b/Widgets/ru.lproj/Localizable.strings @@ -17,7 +17,7 @@ "lock.screen.widget.fire.description" = "Моментальное удаление истории просмотров и запуск нового приватного поиска в DuckDuckGo."; /* Title shown to the user when adding the Fire Button lock screen widget */ -"lock.screen.widget.fire.title" = "Fire Button"; +"lock.screen.widget.fire.title" = "Кнопка «Тревога»"; /* Description shown to the user when adding the Search lock screen widget */ "lock.screen.widget.search.description" = "Моментальный запуск приватного поиска в DuckDuckGo."; @@ -38,7 +38,7 @@ "widget.gallery.search.and.favorites.display.name" = "Поиск и избранное"; /* Description of search only widget in widget gallery */ -"widget.gallery.search.description" = "Конфиденциальный поиск через DuckDuckGo в два счета."; +"widget.gallery.search.description" = "Конфиденциальный поиск через DuckDuckGo в два счёта."; /* Display name for search only widget in widget gallery */ "widget.gallery.search.display.name" = "Поиск"; diff --git a/fastlane/metadata/ru/description.txt b/fastlane/metadata/ru/description.txt index 6e28acf372..23b5f89dd1 100644 --- a/fastlane/metadata/ru/description.txt +++ b/fastlane/metadata/ru/description.txt @@ -18,9 +18,9 @@ ПОВСЕДНЕВНЫЙ КОНТРОЛЬ КОНФИДЕНЦИАЛЬНОСТИ • Кнопка «Тревога» для удаления данных — теперь закрыть вкладки и очистить данные браузера можно нажатием специальной кнопки «Тревога». -• Определите устраивающие вас параметры конфиденциальности с помощью Глобального контроля конфиденциальности (GPC) — в приложение уже встроен GPC, который автоматически выбирает отказ сайтам в праве продавать или передавать вашу персональную информацию. Возможность использования такого контроля для принудительного соблюдения ваших законных прав (согласно требований, например, CCPA и GDPR в действующей или последующей редакции) зависит от законодательства в месте вашего пребывания.  +• Определите устраивающие вас параметры конфиденциальности с помощью «Глобального контроля конфиденциальности» (GPC) — в приложение уже встроен GPC, который автоматически выбирает отказ сайтам в праве продавать или передавать вашу персональную информацию. Возможность использования такого контроля для принудительного соблюдения ваших законных прав (согласно требований, например, CCPA и GDPR в действующей или последующей редакции) зависит от законодательства в месте вашего пребывания.  -Защита от загрузки сторонних трекеров после нажатия рекламных объявлений в DuckDuckGo намного превосходит то, что предлагает большинство популярных браузеров по умолчанию. Тем не менее, мы постоянно работаем над расширением такой защиты. В настоящее время она не предотвращает загрузку запросов bat.bing.com на сайте рекламодателя после перехода на него по рекламному объявлению в DuckDuckGo, когда рекламодатель отслеживает конверсию на своем сайте. Однако такие запросы блокируются во всех других случаях. Это связано с тем, что реклама в поиске DuckDuckGo ведется на условиях партнерства с Microsoft. В рамках этого партнерства просмотр рекламы на DuckDuckGo является анонимным, так как Microsoft обязалась не профилировать наших пользователей при нажатии ими объявлений. +Защита от загрузки сторонних трекеров после нажатия рекламных объявлений в DuckDuckGo намного превосходит то, что предлагает большинство популярных браузеров по умолчанию. Тем не менее, мы постоянно работаем над расширением такой защиты. В настоящее время она не предотвращает загрузку запросов bat.bing.com на сайте рекламодателя после перехода на него по рекламному объявлению в DuckDuckGo, когда рекламодатель отслеживает конверсию на своем сайте. Однако такие запросы блокируются во всех других случаях. Это связано с тем, что реклама в поиске DuckDuckGo ведётся на условиях партнёрства с Майкрософт. В рамках этого партнерства просмотр рекламы на DuckDuckGo является анонимным, так как Майкрософт обязалась не профилировать наших пользователей при нажатии ими объявлений.    Читайте подробнее о средствах защиты от отслеживания на странице https://help.duckduckgo.com/privacy/web-tracking-protections/.   diff --git a/fastlane/metadata/ru/release_notes.txt b/fastlane/metadata/ru/release_notes.txt new file mode 100644 index 0000000000..43e89e4233 --- /dev/null +++ b/fastlane/metadata/ru/release_notes.txt @@ -0,0 +1,5 @@ +Что нового в этом выпуске? +Исправления ошибок и другие улучшения. + +Есть замечания? +Вы всегда можете связаться с нами по адресу https://duckduckgo.com/feedback. \ No newline at end of file diff --git a/fastlane/metadata/ru/subtitle.txt b/fastlane/metadata/ru/subtitle.txt index 4a1e7682f0..2ea23fdf6e 100644 --- a/fastlane/metadata/ru/subtitle.txt +++ b/fastlane/metadata/ru/subtitle.txt @@ -1 +1 @@ -Privacy, simplified. +Максимум конфиденциальности, минимум усилий.