WinterGram/submodules/TelegramPresentationData/Sources/WinterGramStrings.swift

257 lines
18 KiB
Swift
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import Foundation
import PresentationStrings
// WinterGram's own UI strings live in `Telegram-iOS/en.lproj/Localizable.strings` under the
// `WinterGram.*` namespace and are consumed through Telegram's standard generated accessors
// (`strings.WinterGram_*`). English is served by the bundled `en.lproj` fallback baked into the
// generated `PresentationStrings`. Telegram's server language packs do not carry our fork keys,
// so to localize them we seed the active strings dictionary at construction time (see
// `PresentationData.swift`). This table is that seed: symbolic key -> translation. Add a new
// language by returning its table from `winterGramSeedStrings(languageCode:)`.
private let winterGramRussianSeed: [String: String] = [
"WinterGram.APPEARANCE": "ОФОРМЛЕНИЕ",
"WinterGram.AddVisualGift": "Добавить визуальный подарок",
"WinterGram.AddVisuallyToProfile": "Добавить визуально в профиль",
"WinterGram.AllowSavingRestrictedContent": "Сохранять защищённый контент",
"WinterGram.Always": "Всегда",
"WinterGram.Appearance": "Оформление",
"WinterGram.AppearanceFooter": "Форма аватаров и сообщений, шрифты и пак иконок применяются во всём приложении.",
"WinterGram.ApplyToBubbles": "Применять к сообщениям",
"WinterGram.ApplyToChatList": "Применять к списку чатов",
"WinterGram.ApplyToNavigationBars": "Применять к панелям навигации",
"WinterGram.ApplyToTabBar": "Применять к таб-бару",
"WinterGram.AutoMarkAsRead": "Авто-прочтение",
"WinterGram.AutoPrivacy": "Автоконфиденциальность",
"WinterGram.StashPrivacy.ProfilePhoto": "Аватарка",
"WinterGram.StashPrivacy.PhoneNumber": "Номер телефона",
"WinterGram.StashPrivacy.Presence": "Время захода",
"WinterGram.StashPrivacy.Forwards": "Пересылка сообщений",
"WinterGram.StashPrivacy.VoiceCalls": "Звонки",
"WinterGram.StashPrivacy.Birthday": "День рождения",
"WinterGram.StashPrivacy.GiftsAutoSave": "Подарки",
"WinterGram.StashPrivacy.Bio": "О себе",
"WinterGram.StashPrivacy.SavedMusic": "Сохранённая музыка",
"WinterGram.StashPrivacy.GroupInvitations": "Приглашения",
"WinterGram.Automatic": "Автоматически",
"WinterGram.AvatarShape": "Форма аватара",
"WinterGram.CoreMenu": "Ядро",
"WinterGram.Core": "Ядро",
"WinterGram.BadgeDeveloperRole": "— разработчик WinterGram.",
"WinterGram.BadgeDeveloperSuffix": "поддержал(а) разработку WinterGram и получил(а) уникальный значок.",
"WinterGram.BadgeOfficialChannelSuffix": "— официальный ресурс WinterGram.",
"WinterGram.Beta": "Бета",
"WinterGram.BubbleRadius": "Скругление сообщений",
"WinterGram.CHAT": "ЧАТ",
"WinterGram.Categories": "Категории",
"WinterGram.Channel": "Канал",
"WinterGram.AddTemplate": "Добавить шаблон",
"WinterGram.LearnMore": "Подробнее",
"WinterGram.Links": "Ссылки",
"WinterGram.LinksFooter": "WinterGram\nВерсия: Beta v1.0.0",
"WinterGram.MutualContact": "Взаимный контакт",
"WinterGram.NotMutualContact": "Не взаимный контакт",
"WinterGram.Other": "Прочее",
"WinterGram.Releases": "Релизы",
"WinterGram.ReadAfterAction": "Читать при действиях",
"WinterGram.DontReadMessages": "Не читать сообщения",
"WinterGram.DontReadStories": "Не читать истории",
"WinterGram.DontSendOnline": "Не отправлять «онлайн»",
"WinterGram.DontSendTyping": "Не отправлять «печатает»",
"WinterGram.AutoOffline": "Автоматический «офлайн»",
"WinterGram.Chat": "Чат",
"WinterGram.ClearSavedDeletedMessages": "Очистить сохранённые удалённые",
"WinterGram.ConfirmGIFs": "Подтверждать GIF",
"WinterGram.ConfirmStickers": "Подтверждать стикеры",
"WinterGram.ConfirmVoiceMessages": "Подтверждать голосовые",
"WinterGram.ConfirmStoryView": "Предупреждать перед просмотром историй",
"WinterGram.Custom": "Свой...",
"WinterGram.CustomFont": "Свой шрифт",
"WinterGram.Default": "По умолчанию",
"WinterGram.Disabled": "Отключено",
"WinterGram.DefaultReaction": "Реакция по умолчанию",
"WinterGram.DefaultRealDevice": "Сбросить (реальное устройство)",
"WinterGram.DeletedAndEditedMessagesAreKeptLocallyOnThisDeviceOnly": "Удалённые и изменённые сообщения хранятся только на этом устройстве.",
"WinterGram.Desktop": "Десктоп",
"WinterGram.DeletedMark": "Метка удаления",
"WinterGram.NFTGift": "NFT",
"WinterGram.RegularGift": "Обычный подарок",
"WinterGram.DimDeletedMessages": "Затемнять удалённые сообщения",
"WinterGram.ShowDeletionTime": "Показывать время удаления",
"WinterGram.TopBanner": "Верхний баннер",
"WinterGram.Solid": "Сплошной",
"WinterGram.Glass": "Стекло",
"WinterGram.Gradient": "Градиент",
"WinterGram.Outline": "Контур",
"WinterGram.DisableAds": "Отключить рекламу",
"WinterGram.DisableOpenLinkWarning": "Без предупреждения о ссылках",
"WinterGram.DoNotChange": "Не изменять",
"WinterGram.EmptyNoPasscode": "Пусто = без пароля",
"WinterGram.EnterNFTLinkEGHttpsTMeNftSlug": "Введите ссылку на NFT (напр. https://t.me/nft/slug)",
"WinterGram.EnterPasscode": "Введите пароль",
"WinterGram.Everything": "Всё",
"WinterGram.FEATURES": "ФУНКЦИИ",
"WinterGram.Features": "Функции",
"WinterGram.ForwardWithoutAuthor": "Пересылка без автора",
"WinterGram.GHOSTMODE": "РЕЖИМ ПРИЗРАКА",
"WinterGram.GhostMode": "Режим призрака",
"WinterGram.GiftAddedVisuallyToProfile": "Подарок добавлен визуально в профиль",
"WinterGram.HIDDENARCHIVE": "СКРЫТЫЙ АРХИВ",
"WinterGram.HISTORY": "ИСТОРИЯ",
"WinterGram.Hidden": "Скрыто",
"WinterGram.HiddenArchive": "Скрытый архив",
"WinterGram.HideEditedMark": "Скрывать метку «изменено»",
"WinterGram.HideFromStashedPeers": "Скрывать от скрытых чатов",
"WinterGram.HidePremiumStatuses": "Скрыть Premium-статусы",
"WinterGram.HideStories": "Скрыть истории",
"WinterGram.History": "История",
"WinterGram.INFORMATION": "ИНФОРМАЦИЯ",
"WinterGram.IconPack": "Пак иконок",
"WinterGram.InGhostMode": "В режиме призрака",
"WinterGram.IncreaseWebViewHeight": "Увеличить высоту WebView",
"WinterGram.Information": "Информация",
"WinterGram.InfoFooter": "WinterGram · независимый iOS-клиент · GPLv2 © reekeer\n\nWntGram Beta · v1.0.0",
"WinterGram.LocalPremium": "Локальный Premium",
"WinterGram.LocalPremiumUnlocksPremiumOnlyUIOnThisDeviceItDoesNotGrantServerSidePremium": "Локальный Premium открывает Premium-интерфейс на этом устройстве, но не даёт серверный Premium.",
"WinterGram.MessageTranslation": "Перевод сообщений",
"WinterGram.Messages": "Сообщения",
"WinterGram.MonospaceFont": "Моноширинный шрифт",
"WinterGram.MuteNotifications": "Без уведомлений",
"WinterGram.Never": "Никогда",
"WinterGram.None": "Нет",
"WinterGram.Off": "Выкл.",
"WinterGram.OnlineTracker": "Трекер онлайна",
"WinterGram.OnlyAddedEmojiStickers": "Только добавленные эмодзи и стикеры",
"WinterGram.PrivacyFirstMessagingClient": "Приватный мессенджер",
"WinterGram.ProfileName": "Имя профиля",
"WinterGram.Plugins": "Плагины",
"WinterGram.Restart": "Рестарт",
"WinterGram.RestartRequired": "Нужен рестарт",
"WinterGram.Round": "Круг",
"WinterGram.Rounded": "Скруглённый",
"WinterGram.SPOOFING": "ПОДМЕНА",
"WinterGram.SPYMODE": "РЕЖИМ ШПИОНА",
"WinterGram.SpyMode": "Режим шпиона",
"WinterGram.SaveCurrentAsProfile": "Сохранить как профиль +",
"WinterGram.SaveDeletedFromBots": "Сохранять удалённые от ботов",
"WinterGram.SaveDeletedMessages": "Сохранять удалённые сообщения",
"WinterGram.SaveEditHistory": "Сохранять историю правок",
"WinterGram.SendWithoutSound": "Отправлять без звука",
"WinterGram.ShowMessageSeconds": "Секунды в сообщениях",
"WinterGram.ShowPeerID": "Показывать ID",
"WinterGram.ShowRegistrationDate": "Показывать дату регистрации",
"WinterGram.RegistrationDate": "Дата регистрации",
"WinterGram.SingleCornerRadius": "Одиночное скругление",
"WinterGram.SomeSettingsWillTakeEffectAfterRestart": "Некоторые настройки вступят в силу после перезапуска.",
"WinterGram.SpoofAppVersion": "Версия приложения",
"WinterGram.SpoofDeviceModel": "Модель устройства",
"WinterGram.SpoofTheDeviceModelAppVersionAndWebViewPlatformReportedToTelegramAndMiniAppsAPIIDHashUseYourOwnCredentialsFromMyTelegramOrgChangingThemRequiresReLogin": "Подменяет модель устройства, версию приложения и платформу WebView, которые сообщаются Telegram и мини-приложениям. API ID/Hash — это ваши данные с my.telegram.org; их изменение требует повторного входа.",
"WinterGram.Spoofing": "Подмена",
"WinterGram.Square": "Квадрат",
"WinterGram.Squircle": "Сквиркл",
"WinterGram.StashPasscode": "Пароль скрытых",
"WinterGram.StashedChats": "Скрытые чаты",
"WinterGram.StashedChatsAreHiddenFromTheMainListAndAccessibleOnlyHere": "Скрытые чаты не показываются в основном списке и доступны только здесь.",
"WinterGram.HiddenArchiveInfo": "Чаты в скрытом архиве не показываются в списке чатов. Зажмите чат в списке, чтобы скрыть или вернуть его.",
"WinterGram.HiddenArchiveEmpty": "Скрытый архив пуст.",
"WinterGram.Stories": "Истории",
"WinterGram.System": "Системный",
"WinterGram.Templates": "Шаблоны",
"WinterGram.TrackOnlineStatus": "Отслеживать статус «в сети»",
"WinterGram.TranslationProvider": "Сервис перевода",
"WinterGram.TransparencyBlurAndTintCanBeFineTunedPerSurfaceTurnLiquidGlassOffForTheStandardOpaqueLook": "Прозрачность, блюр и оттенок настраиваются по каждой поверхности. Выключите Liquid Glass для обычного непрозрачного вида.",
"WinterGram.UseDefaultTelegramBranding": "Стандартный бренд",
"WinterGram.UseScheduledMessages": "Отложенная отправка",
"WinterGram.Version": "Версия",
"WinterGram.VisualGift": "Визуал. подарок",
"WinterGram.WebViewPlatform": "Платформа WebView",
"WinterGram.WhenGhostModeIsOnWinterGramStopsSendingReadReceiptsOnlineStatusAndTypingActivity": "Когда режим призрака включён, WinterGram не отправляет отметки о прочтении, статус «в сети» и набор текста.",
"WinterGram.WinterGramWntIsAPrivacyFocusedMessagingClientForIPhoneANativePortOfTheAyuGramExperienceItAddsGhostModeSavedDeletedMessagesAndEditHistoryAHiddenArchiveLocalPremiumAdRemovalDeepCustomizationAndLiquidGlass": "Модифицированный клиент Telegram.",
"WinterGram.Yandex": "Яндекс",
"WinterGram.DeletedMessages.Title": "Удалённые сообщения",
"WinterGram.DeletedMessages.Total": "Всего",
"WinterGram.DeletedMessages.SelectTypes": "Выберите типы",
"WinterGram.DeletedMessages.DeleteSelected": "Удалить выбранное",
"WinterGram.DeletedMessages.ConfirmDelete": "Удалить выбранные сохранённые удалённые сообщения? Это нельзя отменить.",
"WinterGram.DeletedMessages.Deleted": "Освобождено %@",
"WinterGram.DeletedMessages.Text": "Сообщения",
"WinterGram.DeletedMessages.Photos": "Фото",
"WinterGram.DeletedMessages.Videos": "Видео",
"WinterGram.DeletedMessages.Voice": "Голосовые",
"WinterGram.DeletedMessages.VideoMessages": "Кружочки",
"WinterGram.DeletedMessages.Music": "Музыка",
"WinterGram.DeletedMessages.Stickers": "Стикеры",
"WinterGram.DeletedMessages.Other": "Другое",
"WinterGram.DeletedMessages.TopChats": "Топ чатов",
"WinterGram.DeleteSelected": "Удалить выбранное",
]
/// Returns WinterGram's fork-string translations for the given base language code, to be merged
/// into the active `PresentationStrings` component dictionaries. Empty when the language has no
/// bundled translation (English is handled by the generated `en.lproj` fallback).
public func winterGramSeedStrings(languageCode: String) -> [String: String] {
if languageCode.hasPrefix("ru") {
return winterGramRussianSeed
}
return [:]
}
/// Localizes a WinterGram option/section label chosen at runtime (dropdown selections, section
/// titles) by routing the known English value to its generated accessor. Unknown user input
/// such as custom fonts, reactions, or spoofed identifiers is returned unchanged.
public func wntOption(_ english: String, _ strings: PresentationStrings) -> String {
switch english {
case "Off": return strings.WinterGram_Off
case "Solid": return strings.WinterGram_Solid
case "Glass": return strings.WinterGram_Glass
case "Gradient": return strings.WinterGram_Gradient
case "Outline": return strings.WinterGram_Outline
case "Messages": return strings.WinterGram_Messages
case "Stories": return strings.WinterGram_Stories
case "Everything": return strings.WinterGram_Everything
case "Disabled": return strings.WinterGram_Disabled
case "Never": return strings.WinterGram_Never
case "In Ghost Mode": return strings.WinterGram_InGhostMode
case "Always": return strings.WinterGram_Always
case "Hidden": return strings.WinterGram_Hidden
case "Telegram API": return strings.WinterGram_TelegramAPI
case "Bot API": return strings.WinterGram_BotAPI
case "Telegram": return strings.WinterGram_Telegram
case "Google": return strings.WinterGram_Google
case "Yandex": return strings.WinterGram_Yandex
case "System": return strings.WinterGram_System
case "Automatic": return strings.WinterGram_Automatic
case "iOS": return strings.WinterGram_IOS
case "Android": return strings.WinterGram_Android
case "macOS": return strings.WinterGram_MacOS
case "Desktop": return strings.WinterGram_Desktop
case "WinterGram": return strings.WinterGram_WinterGram
case "Ayu": return strings.WinterGram_AyuGram
case "exteraGram": return strings.WinterGram_ExteraGram
case "Round": return strings.WinterGram_Round
case "Squircle": return strings.WinterGram_Squircle
case "Rounded": return strings.WinterGram_Rounded
case "Square": return strings.WinterGram_Square
case "Ghost Mode": return strings.WinterGram_GhostMode
case "History": return strings.WinterGram_History
case "Hidden Archive": return strings.WinterGram_HiddenArchive
case "Features": return strings.WinterGram_Features
case "Chat": return strings.WinterGram_Chat
case "Appearance": return strings.WinterGram_Appearance
case "Liquid Glass": return strings.WinterGram_LiquidGlass
case "Spoofing": return strings.WinterGram_Spoofing
case "Information": return strings.WinterGram_Information
case "None": return strings.WinterGram_None
case "Releases": return strings.WinterGram_Releases
case "Channel": return strings.WinterGram_Channel
case "Beta": return strings.WinterGram_Beta
case "Other": return strings.WinterGram_Other
case "Core": return strings.WinterGram_Core
case "Core Menu": return strings.WinterGram_CoreMenu
case "Default": return strings.WinterGram_Default
case "Do Not Change": return strings.WinterGram_DoNotChange
case "Hide From Stashed Peers": return strings.WinterGram_HideFromStashedPeers
case "Add Template": return strings.WinterGram_AddTemplate
case "Plugins": return strings.WinterGram_Plugins
default: return english
}
}