From 77ab5b9f595994a5872943eb84e02ce52df07efa Mon Sep 17 00:00:00 2001 From: Alex Maslov Date: Thu, 21 Apr 2022 10:39:45 -0400 Subject: [PATCH 01/16] add rus --- Xcodes.xcodeproj/project.pbxproj | 6 + .../xcshareddata/xcschemes/Xcodes.xcscheme | 1 + Xcodes/Resources/Licenses.rtf | 2 +- Xcodes/Resources/ru.lproj/Localizable.strings | 215 ++++++++++++++++++ Xcodes/XcodesApp.swift | 8 +- 5 files changed, 227 insertions(+), 5 deletions(-) create mode 100644 Xcodes/Resources/ru.lproj/Localizable.strings diff --git a/Xcodes.xcodeproj/project.pbxproj b/Xcodes.xcodeproj/project.pbxproj index 333da06..5967b75 100644 --- a/Xcodes.xcodeproj/project.pbxproj +++ b/Xcodes.xcodeproj/project.pbxproj @@ -166,6 +166,7 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 4A5AAA1D28118FAD00528958 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = ""; }; 536CFDD1263C94DE00026CE0 /* SignedInView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignedInView.swift; sourceTree = ""; }; 536CFDD3263C9A8000026CE0 /* XcodesSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodesSheet.swift; sourceTree = ""; }; 53CBAB2B263DCC9100410495 /* XcodesAlert.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodesAlert.swift; sourceTree = ""; }; @@ -689,6 +690,7 @@ knownRegions = ( en, Base, + ru, ); mainGroup = CAD2E7952449574E00113D76; packageReferences = ( @@ -887,6 +889,7 @@ isa = PBXVariantGroup; children = ( E872EE4F2808D4F100D3DD8B /* en */, + 4A5AAA1D28118FAD00528958 /* ru */, ); name = Localizable.strings; sourceTree = ""; @@ -898,6 +901,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; @@ -1083,6 +1087,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; @@ -1145,6 +1150,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; diff --git a/Xcodes.xcodeproj/xcshareddata/xcschemes/Xcodes.xcscheme b/Xcodes.xcodeproj/xcshareddata/xcschemes/Xcodes.xcscheme index b181a5b..71c4833 100644 --- a/Xcodes.xcodeproj/xcshareddata/xcschemes/Xcodes.xcscheme +++ b/Xcodes.xcodeproj/xcshareddata/xcschemes/Xcodes.xcscheme @@ -44,6 +44,7 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" + language = "ru" launchStyle = "0" useCustomWorkingDirectory = "NO" ignoresPersistentStateOnLaunch = "NO" diff --git a/Xcodes/Resources/Licenses.rtf b/Xcodes/Resources/Licenses.rtf index 4800d6a..f2290ab 100644 --- a/Xcodes/Resources/Licenses.rtf +++ b/Xcodes/Resources/Licenses.rtf @@ -1,4 +1,4 @@ -{\rtf1\ansi\ansicpg1252\cocoartf2638 +{\rtf1\ansi\ansicpg1252\cocoartf2580 \cocoatextscaling0\cocoaplatform0{\fonttbl\f0\fnil\fcharset0 .SFNS-Regular;} {\colortbl;\red255\green255\blue255;} {\*\expandedcolortbl;;} diff --git a/Xcodes/Resources/ru.lproj/Localizable.strings b/Xcodes/Resources/ru.lproj/Localizable.strings new file mode 100644 index 0000000..4c1db6b --- /dev/null +++ b/Xcodes/Resources/ru.lproj/Localizable.strings @@ -0,0 +1,215 @@ +// Menu +"Menu.About" = "О Xcodes"; +"Menu.CheckForUpdates" = "Проверить наличие обновлений..."; +"Menu.Acknowledgements" = "Благодарности Xcodes"; +"Menu.GitHubRepo" = "Репозиторий Xcodes GitHub"; +"Menu.ReportABug" = "Сообщить об ошибке"; +"Menu.RequestNewFeature" = "Запросить новую функцию"; + +// Common +"Install" = "Установить"; +"InstallDescription" = "Установить эту версию"; +"RevealInFinder" = "Показать в Finder"; +"Active" = "Активный"; +"MakeActive" = "Сделать активным"; +"Open" = "Открытым"; +"OpenDescription" = "Открыть эту версию"; +"CopyPath" = "Копировать путь"; +"CreateSymLink" = "Создать символическую ссылку как Xcode.app"; +"Uninstall" = "Удалить"; +"Selected" = "Выбрано"; +"Select" = "Выбирать"; +"Cancel" = "Отмена"; +"Next" = "Следующий"; +"Continue" = "Продолжать"; +"Close" = "Закрывать"; + +// Info Pane +"IdenticalBuilds" = "Идентичные сборки"; +"IdenticalBuilds.help" = "Иногда предварительная и релизная версии представляют собой одну и ту же сборку. Xcodes автоматически отображает эти версии вместе."; + +"ReleaseDate" = "Дата выпуска"; +"ReleaseNotes" = "Примечания к выпуску"; +"ReleaseNotes.help" = "Просмотреть примечания к выпуску"; +"Compatibility" = "Совместимость"; +"MacOSRequirement" = "Требуется macOS %@ или новее"; +"SDKs" = "SDK"; +"Compilers" = "Компиляторы"; +"DownloadSize" = "Размер загрузки"; +"NoXcodeSelected" = "Xcode не выбран"; + +// Installation Steps +"InstallationStepDescription" = "Шаг %@ из %@: %@"; +"DownloadingPercentDescription" = "Скачивание: %@% завершено"; +"StopInstallation" = "Остановить установку"; +"DownloadingError" = "Информация о загрузке не найдена"; + +// About +"VersionWithBuild" = "Версия %@ (%@)"; +"GithubRepo" = "Репозиторий GitHub"; +"Acknowledgements" = "Благодарности"; +"UnxipExperiment" = "Распаковать эксперимент"; +"License" = "Лицензия"; + +// General Preference Pane +"General" = "Общий"; +"AppleID" = "Идентификатор Apple ID"; +"SignIn" = "Войти"; +"Notifications" = "Уведомления"; + +// Updates Preference Pane +"Updates" = "Обновления"; +"Versions" = "Версии"; +"AutomaticInstallNewVersion" = "Автоматически устанавливать новые версии Xcode"; +"IncludePreRelease" = "Включить предварительные/бета-версии"; +"AppUpdates" = "Обновления Xcodes.app"; +"CheckForAppUpdates" = "Автоматически проверять наличие обновлений приложения"; +"CheckNow" = "Проверь сейчас"; +"LastChecked" = "Последняя проверка: %@"; +"Never" = "Никогда"; + +// Advanced Preference Pane +"Advanced" = "Передовой"; +"LocalCachePath" = "Путь к локальному кэшу"; +"LocalCachePathDescription" = "Xcodes кэширует доступные версии Xcode и временно загружает новые версии в каталог"; +"Change" = "Сдача"; +"Active/Select" = "Активировать/Выбрать"; +"AutomaticallyCreateSymbolicLink" = "Автоматически создавать символическую ссылку на Xcodes.app"; +"AutomaticallyCreateSymbolicLinkDescription" = "Когда вы делаете версию Xcode активной/выбранной, попробуйте создать символическую ссылку с именем Xcode.app в каталоге установки"; +"DataSource" = "Источник данных"; +"DataSourceDescription" = "Источник данных Apple очищает веб-сайт Apple Developer. Он всегда показывает последние доступные выпуски, но является более уязвимым.\n\nВыпуски Xcode — это неофициальный список выпусков Xcode. Он предоставляется в виде правильно сформированных данных, содержит дополнительные информация, которую Apple не всегда может получить от Apple и которая с меньшей вероятностью будет повреждена, если Apple изменит дизайн своего веб-сайта для разработчиков."; +"Downloader" = "Загрузчик"; +"DownloaderDescription" = "aria2 использует до 16 подключений для загрузки Xcode в 3-5 раз быстрее, чем URLSession. Он поставляется в виде исполняемого файла вместе с исходным кодом в Xcodes, чтобы соответствовать лицензии GPLv2.\n\nURLSession — это API Apple по умолчанию для выполнения запросов URL. "; +"PrivilegedHelper" = "Привилегированный помощник"; +"PrivilegedHelperDescription" = "Xcodes использует отдельный привилегированный помощник для выполнения задач от имени пользователя root. Это вещи, которые потребуют sudo в командной строке, включая шаги после установки и переключение версий Xcode с помощью xcode-select.\n\nВам будет предложено указать вашу macOS пароль учетной записи для его установки."; +"HelperInstalled" = "Помощник установлен"; +"HelperNotInstalled" = "Помощник не установлен"; +"InstallHelper" = "Установить помощник"; + +// Experiment Preference Pane +"Experiments" = "Эксперименты"; +"FasterUnxip" = "Быстрее разархивировать"; +"UseUnxipExperiment" = "При распаковке используйте эксперимент"; +"FasterUnxipDescription" = "Благодаря @_saagarjha этот эксперимент может увеличить скорость распаковки до 70% для некоторых систем.\n\nДополнительную информацию о том, как это достигается, можно увидеть в репозитории unxip — https://github.com/saagarjha/unxip. "; + +// Notifications +"AccessGranted" = "Доступ разрешен. Вы будете получать уведомления от Xcodes."; +"AccessDenied" = "⚠️ Отказано в доступе ⚠️\n\nПожалуйста, откройте настройки уведомлений и выберите Xcodes, если хотите разрешить доступ."; +"NotificationSettings" = "Настройки уведомлений"; +"EnableNotifications" = "Включить уведомления"; + +// SignIn +"SignInWithApple" = "Войти со своим Apple ID."; +"AppleID" = "Идентификатор Apple ID:"; +"Password" = "Пароль:"; +"Required" = "Необходимый"; +"SignOut" = "Выход"; + +// SMS/2FA +"DigitCodeDescription" = "Введите %@ цифровой код с одного из ваших доверенных устройств:"; +"SendSMS" = "Отправить смс"; +"EnterDigitCodeDescription" = "Введите %@ цифровой код, отправленный на %@: "; +"SelectTrustedPhone" = "Выберите доверенный номер телефона для получения %@ цифрового кода по SMS:"; +"NoTrustedPhones" = "В вашей учетной записи нет доверенных телефонных номеров, но они необходимы для двухфакторной аутентификации.\n\nСм. https://support.apple.com/en-ca/HT204915."; + +// MainWindow +"UpdatedAt" = "Обновлено в"; + +// ToolBar +"Login" = "Авторизоваться"; +"LoginDescription" = "Открыть вход"; +"Refresh" = "Обновить"; +"RefreshDescription" = "Обновить список Xcode"; +"All" = "Все"; +"Release" = "Выпуск"; +"ReleaseOnly" = "Только выпуск"; +"Beta" = "Бета"; +"BetaOnly" = "Только бета"; +"Filter" = "Фильтр"; +"FilterAvailableDescription" = "Отфильтровать доступные версии"; +"FilterInstalledDescription" = "Отфильтровать установленные версии"; +"Info" = "Информация"; +"InfoDescription" = "Показать или скрыть информационную панель"; +"Preferences" = "Предпочтения"; +"PreferencesDescription" = "Открыть настройки"; +"Search" = "Поиск..."; +"SearchDescription" = "Список поиска"; + +// List +"ActiveVersionDescription" = "Это активная версия"; +"MakeActiveVersionDescription" = "Сделать это активной версией"; + +// Alerts +// Uninstall +"Alert.Uninstall.Title" = "Удалить Xcode %@?"; +"Alert.Uninstall.Message" = "Он будет перемещен в корзину, но не будет очищен."; +"Alert.Uninstall.Error.Title" = "Невозможно удалить Xcode"; + +// Cancel Install +"Alert.CancelInstall.Title" = "Вы уверены, что хотите остановить установку Xcode %@?"; +"Alert.CancelInstall.Message" = "Любой прогресс будет сброшен."; +"Alert.CancelInstall.PrimaryButton" = "Остановить установку"; + +// Privileged Helper +"Alert.PrivilegedHelper.Title" = "Привилегированный помощник"; +"Alert.PrivilegedHelper.Message" = "Xcodes использует отдельный привилегированный помощник для выполнения задач от имени пользователя root. Это вещи, которые потребуют sudo в командной строке, включая шаги после установки и переключение версий Xcode с помощью xcode-select.\n\nВам будет предложено указать вашу macOS пароль учетной записи для его установки."; +"Alert.PrivilegedHelper.Error.Title" = "Невозможно установить помощник"; + +// Min MacOS Supported +"Alert.MinSupported.Title" = "Минимальные требования не соблюдены"; +"Alert.MinSupported.Message" = "Xcode %@ требует MacOS %@, но вы используете MacOS %@, вы все еще хотите ее установить?"; + +// Install +"Alert.Install.Error.Title" = "Невозможно установить Xcode"; +"Alert.InstallArchive.Error.Title" = "Невозможно установить заархивированный Xcode"; + +// Update +"Alert.Update.Error.Title" = "Невозможно обновить выбранный Xcode"; + +// Active/Select +"Alert.Select.Error.Title" = "Невозможно выбрать Xcode"; + +// Symbolic Links +"Alert.SymLink.Title" = "Невозможно создать символическую ссылку"; +"Alert.SymLink.Message" = "Xcode.app существует и не является символической ссылкой"; + +// Post install +"Alert.PostInstall.Title" = "Невозможно выполнить шаги после установки"; + +// InstallationErrors +"InstallationError.DamagedXIP" = "Архив \"%@\" поврежден и не может быть расширен."; +"InstallationError.NotEnoughFreeSpaceToExpandArchive" = "Архив \"%@\" не может быть расширен, поскольку в текущем томе недостаточно свободного места.\n\nОсвободите больше места для расширения архива, а затем снова установите Xcode %@, чтобы начать установку с того места, где он остановился."; +"InstallationError.FailedToMoveXcodeToApplications" = "Не удалось переместить Xcode в каталог %@."; +"InstallationError.FailedSecurityAssessment" = "Xcode %@ не прошел оценку безопасности со следующим выводом:\n%@\nОн остается установленным в %@, если вы все равно хотите его использовать."; +"InstallationError.CodesignVerifyFailed" = "Загруженный Xcode не прошел проверку подписи кода со следующим выводом:\n%@"; +"InstallationError.UnexpectedCodeSigningIdentity" = "Загруженный Xcode не имеет ожидаемого идентификатора подписи кода.\nПолучено:\n%@\n%@\nОжидается:\n%@\n%@"; +"InstallationError.UnsupportedFileFormat" = "Xcodes (пока) не поддерживает установку Xcode из формата файла %@."; +"InstallationError.MissingSudoerPassword" = "Отсутствует пароль. Повторите попытку."; +"InstallationError.UnavailableVersion" = "Не удалось найти версию %@."; +"InstallationError.NoNonPrereleaseVersionAvailable" = "Нет доступных не предварительных версий."; +"InstallationError.NoPrereleaseVersionAvailable" = "Предварительные версии недоступны."; +"InstallationError.MissingUsernameOrPassword" = "Отсутствует имя пользователя или пароль. Пожалуйста, попробуйте еще раз."; +"InstallationError.VersionAlreadyInstalled" = "%@ уже установлен в %@"; +"InstallationError.InvalidVersion" = "%@ не является допустимым номером версии."; +"InstallationError.VersionNotInstalled" = "%@ не установлен."; +"InstallationError.PostInstallStepsNotPerformed.Installed" = "Установка завершена, но некоторые шаги после установки не были выполнены автоматически. Они будут выполнены при первом запуске Xcode %@."; +"InstallationError.PostInstallStepsNotPerformed.NotInstalled" = "Установка была завершена, но некоторые шаги после установки не были выполнены автоматически. Xcodes выполняет эти шаги с привилегированным помощником, который, похоже, не установлен. Вы можете установить его из Настройки > Дополнительно.\n\nЭти шаги будут выполнены при первом запуске Xcode %@."; + +// Installation Steps +"Downloading" = "Скачивание"; +"Unarchiving" = "Разархивирование (это может занять некоторое время)"; +"Moving" = "Переехать в %@"; +"TrashingArchive" = "Перемещение архива в корзину"; +"CheckingSecurity" = "Проверка безопасности"; +"Finishing" = "Отделка"; + +// Notifications +"Notification.NewVersionAvailable" = "Доступна новая версия"; +"Notification.FinishedInstalling" = "Завершена установка"; + + +"HelperClient.error" = "Невозможно установить связь с привилегированным помощником."; +///++ +// Notifications +"Notification.NewXcodeVersion.Title" = "Новые версии Xcode"; +"Notification.NewXcodeVersion.Body" = "Новые версии Xcode доступны для скачивания."; diff --git a/Xcodes/XcodesApp.swift b/Xcodes/XcodesApp.swift index cfdb3af..7340ea2 100644 --- a/Xcodes/XcodesApp.swift +++ b/Xcodes/XcodesApp.swift @@ -123,10 +123,10 @@ class AppDelegate: NSObject, NSApplicationDelegate { } func localizeString(_ key: String, comment: String = "") -> String { - if #available(macOS 12, *) { - return String(localized: String.LocalizationValue(key)) - } else { +// if #available(macOS 12, *) { +// return String(localized: String.LocalizationValue(key)) +// } else { return NSLocalizedString(key, comment: comment) - } +// } } From 7a82620a8da3277a6377120119d73c777a4085b7 Mon Sep 17 00:00:00 2001 From: Alex Maslov Date: Thu, 21 Apr 2022 15:06:03 -0400 Subject: [PATCH 02/16] fix auto-translate errors --- Xcodes/Resources/ru.lproj/Localizable.strings | 82 +++++++++---------- 1 file changed, 41 insertions(+), 41 deletions(-) diff --git a/Xcodes/Resources/ru.lproj/Localizable.strings b/Xcodes/Resources/ru.lproj/Localizable.strings index 4c1db6b..161f3a7 100644 --- a/Xcodes/Resources/ru.lproj/Localizable.strings +++ b/Xcodes/Resources/ru.lproj/Localizable.strings @@ -12,20 +12,20 @@ "RevealInFinder" = "Показать в Finder"; "Active" = "Активный"; "MakeActive" = "Сделать активным"; -"Open" = "Открытым"; +"Open" = "Открыты"; "OpenDescription" = "Открыть эту версию"; "CopyPath" = "Копировать путь"; -"CreateSymLink" = "Создать символическую ссылку как Xcode.app"; +"CreateSymLink" = "Создать Symlink к Xcode.app"; "Uninstall" = "Удалить"; "Selected" = "Выбрано"; -"Select" = "Выбирать"; +"Select" = "Выбрать"; "Cancel" = "Отмена"; "Next" = "Следующий"; -"Continue" = "Продолжать"; -"Close" = "Закрывать"; +"Continue" = "Продолжить"; +"Close" = "Закрыть"; // Info Pane -"IdenticalBuilds" = "Идентичные сборки"; +"IdenticalBuilds" = "Идентичные Cборки"; "IdenticalBuilds.help" = "Иногда предварительная и релизная версии представляют собой одну и ту же сборку. Xcodes автоматически отображает эти версии вместе."; "ReleaseDate" = "Дата выпуска"; @@ -48,12 +48,12 @@ "VersionWithBuild" = "Версия %@ (%@)"; "GithubRepo" = "Репозиторий GitHub"; "Acknowledgements" = "Благодарности"; -"UnxipExperiment" = "Распаковать эксперимент"; +"UnxipExperiment" = "Unxip эксперимент"; "License" = "Лицензия"; // General Preference Pane "General" = "Общий"; -"AppleID" = "Идентификатор Apple ID"; +"AppleID" = "Apple ID"; "SignIn" = "Войти"; "Notifications" = "Уведомления"; @@ -64,45 +64,45 @@ "IncludePreRelease" = "Включить предварительные/бета-версии"; "AppUpdates" = "Обновления Xcodes.app"; "CheckForAppUpdates" = "Автоматически проверять наличие обновлений приложения"; -"CheckNow" = "Проверь сейчас"; +"CheckNow" = "Проверь Cейчас"; "LastChecked" = "Последняя проверка: %@"; "Never" = "Никогда"; // Advanced Preference Pane -"Advanced" = "Передовой"; +"Advanced" = "Дополнительные"; "LocalCachePath" = "Путь к локальному кэшу"; -"LocalCachePathDescription" = "Xcodes кэширует доступные версии Xcode и временно загружает новые версии в каталог"; -"Change" = "Сдача"; +"LocalCachePathDescription" = "Xcodes кэширует доступные версии Xcode и временно загружает новые версии в директорию"; +"Change" = "Изменить"; "Active/Select" = "Активировать/Выбрать"; -"AutomaticallyCreateSymbolicLink" = "Автоматически создавать символическую ссылку на Xcodes.app"; -"AutomaticallyCreateSymbolicLinkDescription" = "Когда вы делаете версию Xcode активной/выбранной, попробуйте создать символическую ссылку с именем Xcode.app в каталоге установки"; +"AutomaticallyCreateSymbolicLink" = "Автоматически сосдавит символическую ссылку к Xcodes.app"; +"AutomaticallyCreateSymbolicLinkDescription" = "Когда вы делаете версию Xcode активной/выбранной, попробуйте создать символическую ссылку с именем Xcode.app в директорию установки"; "DataSource" = "Источник данных"; "DataSourceDescription" = "Источник данных Apple очищает веб-сайт Apple Developer. Он всегда показывает последние доступные выпуски, но является более уязвимым.\n\nВыпуски Xcode — это неофициальный список выпусков Xcode. Он предоставляется в виде правильно сформированных данных, содержит дополнительные информация, которую Apple не всегда может получить от Apple и которая с меньшей вероятностью будет повреждена, если Apple изменит дизайн своего веб-сайта для разработчиков."; "Downloader" = "Загрузчик"; -"DownloaderDescription" = "aria2 использует до 16 подключений для загрузки Xcode в 3-5 раз быстрее, чем URLSession. Он поставляется в виде исполняемого файла вместе с исходным кодом в Xcodes, чтобы соответствовать лицензии GPLv2.\n\nURLSession — это API Apple по умолчанию для выполнения запросов URL. "; +"DownloaderDescription" = "aria2 использует до 16 подключений для загрузки Xcode в 3-5 раз быстрее, чем URLSession. Он поставляется в виде исполняемого файла вместе с исходным кодом в Xcodes, чтобы соответствовать лицензии GPLv2.\n\nURLSession — это API Apple по умолчанию для выполнения запросов URL."; "PrivilegedHelper" = "Привилегированный помощник"; -"PrivilegedHelperDescription" = "Xcodes использует отдельный привилегированный помощник для выполнения задач от имени пользователя root. Это вещи, которые потребуют sudo в командной строке, включая шаги после установки и переключение версий Xcode с помощью xcode-select.\n\nВам будет предложено указать вашу macOS пароль учетной записи для его установки."; +"PrivilegedHelperDescription" = "Xcodes использует отдельный привилегированный помощник для выполнения задач от имени пользователя root. Это вещи, которые потребуют sudo в командной строке, включая шаги после установки и переключение версий Xcode с помощью xcode-select.\n\nВам будет предложено указать вашу macOS пароль счета для его установки."; "HelperInstalled" = "Помощник установлен"; "HelperNotInstalled" = "Помощник не установлен"; -"InstallHelper" = "Установить помощник"; +"InstallHelper" = "Установить помощника"; // Experiment Preference Pane "Experiments" = "Эксперименты"; -"FasterUnxip" = "Быстрее разархивировать"; -"UseUnxipExperiment" = "При распаковке используйте эксперимент"; +"FasterUnxip" = "Быстрее Unxip"; +"UseUnxipExperiment" = "При unxip используйте эксперимент"; "FasterUnxipDescription" = "Благодаря @_saagarjha этот эксперимент может увеличить скорость распаковки до 70% для некоторых систем.\n\nДополнительную информацию о том, как это достигается, можно увидеть в репозитории unxip — https://github.com/saagarjha/unxip. "; // Notifications "AccessGranted" = "Доступ разрешен. Вы будете получать уведомления от Xcodes."; -"AccessDenied" = "⚠️ Отказано в доступе ⚠️\n\nПожалуйста, откройте настройки уведомлений и выберите Xcodes, если хотите разрешить доступ."; +"AccessDenied" = "⚠️ Доступ Oтказан ⚠️\n\nПожалуйста, откройте настройки уведомлений и выберите Xcodes, если хотите разрешить доступ."; "NotificationSettings" = "Настройки уведомлений"; "EnableNotifications" = "Включить уведомления"; // SignIn "SignInWithApple" = "Войти со своим Apple ID."; -"AppleID" = "Идентификатор Apple ID:"; +"AppleID" = "Apple ID:"; "Password" = "Пароль:"; -"Required" = "Необходимый"; +"Required" = "Необходимa"; "SignOut" = "Выход"; // SMS/2FA @@ -110,19 +110,19 @@ "SendSMS" = "Отправить смс"; "EnterDigitCodeDescription" = "Введите %@ цифровой код, отправленный на %@: "; "SelectTrustedPhone" = "Выберите доверенный номер телефона для получения %@ цифрового кода по SMS:"; -"NoTrustedPhones" = "В вашей учетной записи нет доверенных телефонных номеров, но они необходимы для двухфакторной аутентификации.\n\nСм. https://support.apple.com/en-ca/HT204915."; +"NoTrustedPhones" = "В вашем аккаунтe нет доверенных телефонных номеров, но они необходимы для двухфакторной аутентификации.\n\nСм. https://support.apple.com/en-ca/HT204915."; // MainWindow "UpdatedAt" = "Обновлено в"; // ToolBar -"Login" = "Авторизоваться"; -"LoginDescription" = "Открыть вход"; +"Login" = "Логин"; +"LoginDescription" = "Открыть Логин"; "Refresh" = "Обновить"; -"RefreshDescription" = "Обновить список Xcode"; +"RefreshDescription" = "Обновить Cписок Xcode"; "All" = "Все"; -"Release" = "Выпуск"; -"ReleaseOnly" = "Только выпуск"; +"Release" = "Pелиз"; +"ReleaseOnly" = "Только Pелиз"; "Beta" = "Бета"; "BetaOnly" = "Только бета"; "Filter" = "Фильтр"; @@ -130,7 +130,7 @@ "FilterInstalledDescription" = "Отфильтровать установленные версии"; "Info" = "Информация"; "InfoDescription" = "Показать или скрыть информационную панель"; -"Preferences" = "Предпочтения"; +"Preferences" = "Hастройки"; "PreferencesDescription" = "Открыть настройки"; "Search" = "Поиск..."; "SearchDescription" = "Список поиска"; @@ -142,12 +142,12 @@ // Alerts // Uninstall "Alert.Uninstall.Title" = "Удалить Xcode %@?"; -"Alert.Uninstall.Message" = "Он будет перемещен в корзину, но не будет очищен."; +"Alert.Uninstall.Message" = "Он будет перемещен в мусорное ведро, но не будет очищен."; "Alert.Uninstall.Error.Title" = "Невозможно удалить Xcode"; // Cancel Install "Alert.CancelInstall.Title" = "Вы уверены, что хотите остановить установку Xcode %@?"; -"Alert.CancelInstall.Message" = "Любой прогресс будет сброшен."; +"Alert.CancelInstall.Message" = "Прогресс будет сброшен."; "Alert.CancelInstall.PrimaryButton" = "Остановить установку"; // Privileged Helper @@ -157,7 +157,7 @@ // Min MacOS Supported "Alert.MinSupported.Title" = "Минимальные требования не соблюдены"; -"Alert.MinSupported.Message" = "Xcode %@ требует MacOS %@, но вы используете MacOS %@, вы все еще хотите ее установить?"; +"Alert.MinSupported.Message" = "Xcode %@ требует MacOS %@, но вы используете MacOS %@, вы все еще хотите установить?"; // Install "Alert.Install.Error.Title" = "Невозможно установить Xcode"; @@ -174,15 +174,15 @@ "Alert.SymLink.Message" = "Xcode.app существует и не является символической ссылкой"; // Post install -"Alert.PostInstall.Title" = "Невозможно выполнить шаги после установки"; +"Alert.PostInstall.Title" = "Невозможно выполнить дальний шаги после установки"; // InstallationErrors "InstallationError.DamagedXIP" = "Архив \"%@\" поврежден и не может быть расширен."; -"InstallationError.NotEnoughFreeSpaceToExpandArchive" = "Архив \"%@\" не может быть расширен, поскольку в текущем томе недостаточно свободного места.\n\nОсвободите больше места для расширения архива, а затем снова установите Xcode %@, чтобы начать установку с того места, где он остановился."; -"InstallationError.FailedToMoveXcodeToApplications" = "Не удалось переместить Xcode в каталог %@."; +"InstallationError.NotEnoughFreeSpaceToExpandArchive" = "Архив \"%@\" не может быть расширен, поскольку в текущем жестком диске недостаточно свободного места.\n\nОсвободите больше места для расширения архива, а затем снова установите Xcode %@, чтобы начать установку с того места, где он остановился."; +"InstallationError.FailedToMoveXcodeToApplications" = "Не удалось переместить Xcode в директорию %@."; "InstallationError.FailedSecurityAssessment" = "Xcode %@ не прошел оценку безопасности со следующим выводом:\n%@\nОн остается установленным в %@, если вы все равно хотите его использовать."; -"InstallationError.CodesignVerifyFailed" = "Загруженный Xcode не прошел проверку подписи кода со следующим выводом:\n%@"; -"InstallationError.UnexpectedCodeSigningIdentity" = "Загруженный Xcode не имеет ожидаемого идентификатора подписи кода.\nПолучено:\n%@\n%@\nОжидается:\n%@\n%@"; +"InstallationError.CodesignVerifyFailed" = "Загруженный Xcode не прошел проверку подписи сертификата со следующим выводом:\n%@"; +"InstallationError.UnexpectedCodeSigningIdentity" = "Загруженный Xcode не имеет ожидаемого идентификатора подписи сертификата.\nПолучено:\n%@\n%@\nОжидается:\n%@\n%@"; "InstallationError.UnsupportedFileFormat" = "Xcodes (пока) не поддерживает установку Xcode из формата файла %@."; "InstallationError.MissingSudoerPassword" = "Отсутствует пароль. Повторите попытку."; "InstallationError.UnavailableVersion" = "Не удалось найти версию %@."; @@ -193,15 +193,15 @@ "InstallationError.InvalidVersion" = "%@ не является допустимым номером версии."; "InstallationError.VersionNotInstalled" = "%@ не установлен."; "InstallationError.PostInstallStepsNotPerformed.Installed" = "Установка завершена, но некоторые шаги после установки не были выполнены автоматически. Они будут выполнены при первом запуске Xcode %@."; -"InstallationError.PostInstallStepsNotPerformed.NotInstalled" = "Установка была завершена, но некоторые шаги после установки не были выполнены автоматически. Xcodes выполняет эти шаги с привилегированным помощником, который, похоже, не установлен. Вы можете установить его из Настройки > Дополнительно.\n\nЭти шаги будут выполнены при первом запуске Xcode %@."; +"InstallationError.PostInstallStepsNotPerformed.NotInstalled" = "Установка была завершена, но некоторые шаги после установки не были выполнены автоматически. Xcodes выполняет эти шаги с привилегированным помощником, который, похоже, не установлен. Вы можете установить его из Настройки > Дополнительные.\n\nЭти шаги будут выполнены при первом запуске Xcode %@."; // Installation Steps "Downloading" = "Скачивание"; "Unarchiving" = "Разархивирование (это может занять некоторое время)"; -"Moving" = "Переехать в %@"; -"TrashingArchive" = "Перемещение архива в корзину"; +"Moving" = "Перемещение в %@"; +"TrashingArchive" = "Перемещение архива в мусорную корзину"; "CheckingSecurity" = "Проверка безопасности"; -"Finishing" = "Отделка"; +"Finishing" = "Завершение"; // Notifications "Notification.NewVersionAvailable" = "Доступна новая версия"; From dc85ab87f75fa483f17ce8a48265a0775d2f0237 Mon Sep 17 00:00:00 2001 From: Alex Maslov Date: Thu, 21 Apr 2022 15:09:42 -0400 Subject: [PATCH 03/16] apply formatter fixes from main --- Xcodes/Resources/ru.lproj/Localizable.strings | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Xcodes/Resources/ru.lproj/Localizable.strings b/Xcodes/Resources/ru.lproj/Localizable.strings index 161f3a7..7a52b44 100644 --- a/Xcodes/Resources/ru.lproj/Localizable.strings +++ b/Xcodes/Resources/ru.lproj/Localizable.strings @@ -39,8 +39,8 @@ "NoXcodeSelected" = "Xcode не выбран"; // Installation Steps -"InstallationStepDescription" = "Шаг %@ из %@: %@"; -"DownloadingPercentDescription" = "Скачивание: %@% завершено"; +"InstallationStepDescription" = "Шаг %d из %d: %@"; +"DownloadingPercentDescription" = "Скачивание: %d% завершено"; "StopInstallation" = "Остановить установку"; "DownloadingError" = "Информация о загрузке не найдена"; @@ -106,10 +106,10 @@ "SignOut" = "Выход"; // SMS/2FA -"DigitCodeDescription" = "Введите %@ цифровой код с одного из ваших доверенных устройств:"; +"DigitCodeDescription" = "Введите %d цифровой код с одного из ваших доверенных устройств:"; "SendSMS" = "Отправить смс"; -"EnterDigitCodeDescription" = "Введите %@ цифровой код, отправленный на %@: "; -"SelectTrustedPhone" = "Выберите доверенный номер телефона для получения %@ цифрового кода по SMS:"; +"EnterDigitCodeDescription" = "Введите %d цифровой код, отправленный на %@: "; +"SelectTrustedPhone" = "Выберите доверенный номер телефона для получения %d цифрового кода по SMS:"; "NoTrustedPhones" = "В вашем аккаунтe нет доверенных телефонных номеров, но они необходимы для двухфакторной аутентификации.\n\nСм. https://support.apple.com/en-ca/HT204915."; // MainWindow From d01013d8b8d2b2b128ccab6c3cdbb87d225a441f Mon Sep 17 00:00:00 2001 From: Alex Maslov Date: Thu, 21 Apr 2022 15:17:41 -0400 Subject: [PATCH 04/16] reinstate macOS 12 code --- Xcodes/XcodesApp.swift | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Xcodes/XcodesApp.swift b/Xcodes/XcodesApp.swift index 7340ea2..cfdb3af 100644 --- a/Xcodes/XcodesApp.swift +++ b/Xcodes/XcodesApp.swift @@ -123,10 +123,10 @@ class AppDelegate: NSObject, NSApplicationDelegate { } func localizeString(_ key: String, comment: String = "") -> String { -// if #available(macOS 12, *) { -// return String(localized: String.LocalizationValue(key)) -// } else { + if #available(macOS 12, *) { + return String(localized: String.LocalizationValue(key)) + } else { return NSLocalizedString(key, comment: comment) -// } + } } From 795de95d536ee8594809395979812e9d584bee38 Mon Sep 17 00:00:00 2001 From: Alex Maslov Date: Fri, 22 Apr 2022 08:24:29 -0400 Subject: [PATCH 05/16] update DataSourceDescription to refer to first xcode releas instance in english --- Xcodes/Resources/ru.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Xcodes/Resources/ru.lproj/Localizable.strings b/Xcodes/Resources/ru.lproj/Localizable.strings index 7a52b44..b0b6693 100644 --- a/Xcodes/Resources/ru.lproj/Localizable.strings +++ b/Xcodes/Resources/ru.lproj/Localizable.strings @@ -77,7 +77,7 @@ "AutomaticallyCreateSymbolicLink" = "Автоматически сосдавит символическую ссылку к Xcodes.app"; "AutomaticallyCreateSymbolicLinkDescription" = "Когда вы делаете версию Xcode активной/выбранной, попробуйте создать символическую ссылку с именем Xcode.app в директорию установки"; "DataSource" = "Источник данных"; -"DataSourceDescription" = "Источник данных Apple очищает веб-сайт Apple Developer. Он всегда показывает последние доступные выпуски, но является более уязвимым.\n\nВыпуски Xcode — это неофициальный список выпусков Xcode. Он предоставляется в виде правильно сформированных данных, содержит дополнительные информация, которую Apple не всегда может получить от Apple и которая с меньшей вероятностью будет повреждена, если Apple изменит дизайн своего веб-сайта для разработчиков."; +"DataSourceDescription" = "Источник данных Apple очищает веб-сайт Apple Developer. Он всегда показывает последние доступные выпуски, но является более уязвимым.\n\nXcode Releases — это неофициальный список выпусков Xcode. Он предоставляется в виде правильно сформированных данных, содержит дополнительные информация, которую Apple не всегда может получить от Apple и которая с меньшей вероятностью будет повреждена, если Apple изменит дизайн своего веб-сайта для разработчиков."; "Downloader" = "Загрузчик"; "DownloaderDescription" = "aria2 использует до 16 подключений для загрузки Xcode в 3-5 раз быстрее, чем URLSession. Он поставляется в виде исполняемого файла вместе с исходным кодом в Xcodes, чтобы соответствовать лицензии GPLv2.\n\nURLSession — это API Apple по умолчанию для выполнения запросов URL."; "PrivilegedHelper" = "Привилегированный помощник"; From 0821834fedea50002564f5db020604fed9185c47 Mon Sep 17 00:00:00 2001 From: Matt Kiazyk Date: Fri, 22 Apr 2022 09:30:18 -0500 Subject: [PATCH 06/16] Add "OK" to localizable strings --- Xcodes/Frontend/MainWindow.swift | 2 +- Xcodes/Resources/en.lproj/Localizable.strings | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/Xcodes/Frontend/MainWindow.swift b/Xcodes/Frontend/MainWindow.swift index 36584e7..4b2c26d 100644 --- a/Xcodes/Frontend/MainWindow.swift +++ b/Xcodes/Frontend/MainWindow.swift @@ -147,7 +147,7 @@ struct MainWindow: View { title: Text(title), message: Text(message), dismissButton: .default( - Text("Ok"), + Text("OK"), action: { appState.presentedAlert = nil } ) ) diff --git a/Xcodes/Resources/en.lproj/Localizable.strings b/Xcodes/Resources/en.lproj/Localizable.strings index 4f986a4..15dad55 100644 --- a/Xcodes/Resources/en.lproj/Localizable.strings +++ b/Xcodes/Resources/en.lproj/Localizable.strings @@ -23,6 +23,7 @@ "Next" = "Next"; "Continue" = "Continue"; "Close" = "Close"; +"OK" = "OK"; // Info Pane "IdenticalBuilds" = "Identical Builds"; From d1bee98abb4535ebdb28f15361f6c0b0de59e888 Mon Sep 17 00:00:00 2001 From: Dominic Pepin Date: Sat, 23 Apr 2022 07:55:46 -0600 Subject: [PATCH 07/16] Initial French Localization Strings File --- Xcodes.xcodeproj/project.pbxproj | 9 + .../Resources/fr-CA.lproj/Localizable.strings | 216 ++++++++++++++++++ Xcodes/Resources/fr.lproj/Localizable.strings | 216 ++++++++++++++++++ 3 files changed, 441 insertions(+) create mode 100644 Xcodes/Resources/fr-CA.lproj/Localizable.strings create mode 100644 Xcodes/Resources/fr.lproj/Localizable.strings diff --git a/Xcodes.xcodeproj/project.pbxproj b/Xcodes.xcodeproj/project.pbxproj index 333da06..d0fab96 100644 --- a/Xcodes.xcodeproj/project.pbxproj +++ b/Xcodes.xcodeproj/project.pbxproj @@ -170,6 +170,8 @@ 536CFDD3263C9A8000026CE0 /* XcodesSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodesSheet.swift; sourceTree = ""; }; 53CBAB2B263DCC9100410495 /* XcodesAlert.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodesAlert.swift; sourceTree = ""; }; 63EAA4EA259944450046AB8F /* ProgressButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgressButton.swift; sourceTree = ""; }; + B648F22A2810C0330096781B /* fr-CA */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "fr-CA"; path = "fr-CA.lproj/Localizable.strings"; sourceTree = ""; }; + B648F22B2810C1130096781B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; CA11E7B92598476C00D2EE1C /* XcodeCommands.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodeCommands.swift; sourceTree = ""; }; CA2518EB25A7FF2B00F08414 /* AppStateUpdateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppStateUpdateTests.swift; sourceTree = ""; }; CA25192925A9644800F08414 /* XcodeInstallState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodeInstallState.swift; sourceTree = ""; }; @@ -689,6 +691,8 @@ knownRegions = ( en, Base, + "fr-CA", + fr, ); mainGroup = CAD2E7952449574E00113D76; packageReferences = ( @@ -887,6 +891,8 @@ isa = PBXVariantGroup; children = ( E872EE4F2808D4F100D3DD8B /* en */, + B648F22A2810C0330096781B /* fr-CA */, + B648F22B2810C1130096781B /* fr */, ); name = Localizable.strings; sourceTree = ""; @@ -898,6 +904,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; @@ -1083,6 +1090,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; @@ -1145,6 +1153,7 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; diff --git a/Xcodes/Resources/fr-CA.lproj/Localizable.strings b/Xcodes/Resources/fr-CA.lproj/Localizable.strings new file mode 100644 index 0000000..420164f --- /dev/null +++ b/Xcodes/Resources/fr-CA.lproj/Localizable.strings @@ -0,0 +1,216 @@ +// Menu +"Menu.About" = "À propos de Xcodes"; +"Menu.CheckForUpdates" = "Vérifier les mises à jour..."; +"Menu.Acknowledgements" = "Xcodes Remerciements"; +"Menu.GitHubRepo" = "Xcodes GitHub"; +"Menu.ReportABug" = "Signaler un Bogue"; +"Menu.RequestNewFeature" = "Demander une Nouvelle Fonctionnalité"; + +// Common +"Install" = "Installer"; +"InstallDescription" = "Installer cette version"; +"RevealInFinder" = "Ouvrir dans le Finder"; +"Active" = "Version Active"; +"MakeActive" = "Activer"; +"Open" = "Ouvrir"; +"OpenDescription" = "Ouvrir cette version"; +"CopyPath" = "Copier le chemin d'accès"; +"CreateSymLink" = "Créer un Symlink pour Xcode.app"; +"Uninstall" = "Désinstaller"; +"Selected" = "Sélectionné"; +"Select" = "Sélectionner"; +"Cancel" = "Annuler"; +"Next" = "Suivant"; +"Continue" = "Continuer"; +"Close" = "Fermer"; +"OK" = "OK"; + +// Info Pane +"IdenticalBuilds" = "Versions identiques"; +"IdenticalBuilds.help" = "Parfois, la version préliminaire et la version finale sont exactement la même version. Xcodes affichera automatiquement ces versions ensemble."; + +"ReleaseDate" = "Date de Sortie"; +"ReleaseNotes" = "Notes de Mise à Jour"; +"ReleaseNotes.help" = "Consulter le Notes de Mise á Jour"; +"Compatibility" = "Compatibilité"; +"MacOSRequirement" = "Nécessite macOS %@ ou une version ultérieure"; +"SDKs" = "SDKs"; +"Compilers" = "Compilateurs"; +"DownloadSize" = "Taille de téléchargement"; +"NoXcodeSelected" = "Aucun XCode Sélectionné"; + +// Installation Steps +"InstallationStepDescription" = "Étape %d de %d : %@"; +"DownloadingPercentDescription" = "Téléchargement: %d%% téléchargé"; +"StopInstallation" = "Arrêter l'installation"; +"DownloadingError" = "Aucune information de téléchargement trouvée"; + +// About +"VersionWithBuild" = "Version %@ (%@)"; +"GithubRepo" = "GitHub Repo"; +"Acknowledgements" = "Remerciements"; +"UnxipExperiment" = "Expérience Unxip"; +"License" = "Licence"; + +// General Preference Pane +"General" = "Général"; +"AppleID" = "Identifiant Apple"; +"SignIn" = "Connecter"; +"Notifications" = "Notifications"; + +// Updates Preference Pane +"Updates" = "Mise à jour"; +"Versions" = "Versions"; +"AutomaticInstallNewVersion" = "Installer automatiquement les nouvelles versions de Xcode"; +"IncludePreRelease" = "Inclure les versions préliminaires/bêta"; +"AppUpdates" = "Mises à Jour de Xcodes.app"; +"CheckForAppUpdates" = "Vérifier automatiquement les mises à jour de l'application"; +"CheckNow" = "Vérifier Maintenant"; +"LastChecked" = "Dernière vérification: %@"; +"Never" = "Jamais"; + +// Advanced Preference Pane +"Advanced" = "Avancé"; +"LocalCachePath" = "Cache Local"; +"LocalCachePathDescription" = "Xcodes met en cache les versions de Xcode disponibles et télécharge temporairement les nouvelles versions dans le répertoire de cache local"; +"Change" = "Changer"; +"Active/Select" = "Activer/Sélectionner"; +"AutomaticallyCreateSymbolicLink" = "Créer automatiquement un lien symbolique vers Xcodes.app"; +"AutomaticallyCreateSymbolicLinkDescription" = "Lorsque vous activez/sélectionnez une version de Xcode, essayez de créer un lien symbolique nommé Xcode.app dans le répertoire d'installation"; +"DataSource" = "Source de Données"; +"DataSourceDescription" = "La source de données Apple gratte le site Web de developpeurs d'Apple. Il affichera toujours les dernières versions disponibles, mais est plus fragile.\n\nXcode Releases est une liste non officielle des versions de Xcode. Elle contient des informations supplémentaires qui ne sont pas facilement disponibles auprès d'Apple et est moins susceptible de se briser si Apple redessine son site Web de développeurs."; +"Downloader" = "Téléchargeur"; +"DownloaderDescription" = "aria2 utilise jusqu'à 16 connexions pour télécharger Xcode de 3 à 5 fois plus rapidement que URLSession. aria2 est fourni sous forme d'exécutable avec son code source dans Xcodes pour se conformer à sa licence GPLv2.\n\nURLSession est l'API d'Apple utilisée par défaut pour effectuer des requêtes d'URL."; +"PrivilegedHelper" = "Assistant Privilégié"; +"PrivilegedHelperDescription" = "Xcodes utilise un assistant privilégié distinct pour effectuer des tâches en tant que root. Ce sont des tâches qui nécessiteraient sudo sur la ligne de commande, y compris les étapes de post-installation et le changement de version de Xcode avec xcode-select.\n\nVous serez invité à saisir le mot de passe de votre compte macOS pour l'installer."; +"HelperInstalled" = "L'assistant est installé"; +"HelperNotInstalled" = "L'assistant n'est pas installé"; +"InstallHelper" = "Installer l'assistant'"; + +// Experiment Preference Pane +"Experiments" = "Experiences"; +"FasterUnxip" = "Unxip Plus Rapide"; +"UseUnxipExperiment" = "Utiliser l'expérience, lors de la décompression Unxip"; +"FasterUnxipDescription" = "Grâce à @_saagarjha, cette expérience peut augmenter jusqu'à 70% la vitesse d'extraction pour certains systèmes.\n\nPour plus d'informations sur la façon dont cela est accompli, consultez le référentiel GitHub unxip - https://github.com/saagarjha/unxip"; + +// Notifications +"AccessGranted" = "Accès autorisé. Vous recevrez des notifications de Xcodes."; +"AccessDenied" = "⚠️ Accès refusé ⚠️\n\nVeuillez ouvrir vos paramètres de notifications et sélectionnez Xcodes si vous souhaitez autoriser l'accès."; +"NotificationSettings" = "Paramètres de Notification"; +"EnableNotifications" = "Activer les Notifications"; + +// SignIn +"SignInWithApple" = "Connectez-vous avec votre identifiant Apple."; +"AppleID" = "Identifiant Apple:"; +"Password" = "Mot de passe:"; +"Required" = "Requis"; +"SignOut" = "Déconnecter"; + +// SMS/2FA +"DigitCodeDescription" = "Saisissez le code à %d chiffres de l'un de vos appareils de confiance:"; +"SendSMS" = "Envoyer un texto"; +"EnterDigitCodeDescription" = "Entrez le code à %d chiffres envoyé à %@: "; +"SelectTrustedPhone" = "Sélectionnez le numéro de téléphone de confiance pour recevoir un code à %d chiffres par texto:"; +"NoTrustedPhones" = "Votre compte n'a pas de numéros de téléphone de confiance, mais ils sont requis pour l'authentification à deux facteurs.\n\nVoir https://support.apple.com/en-ca/HT204915."; + +// MainWindow +"UpdatedAt" = "Actualisé: "; + +// ToolBar +"Login" = "Connexion"; +"LoginDescription" = "Ouvrir une connexion"; +"Refresh" = "Actualiser"; +"RefreshDescription" = "Actualiser la liste de Xcode"; +"All" = "Tout"; +"Release" = "Version"; +"ReleaseOnly" = "Seulement le versions finales"; +"Beta" = "Beta"; +"BetaOnly" = "Seulement les versions bêtas"; +"Filter" = "Filtre"; +"FilterAvailableDescription" = "Filtrer les versions disponibles"; +"FilterInstalledDescription" = "Filtrer les versions installées"; +"Info" = "Info"; +"InfoDescription" = "Afficher ou masquer le volet d'informations"; +"Preferences" = "Préférences"; +"PreferencesDescription" = "Ouvrir les Préférences"; +"Search" = "Rechercher..."; +"SearchDescription" = "Liste de recherche"; + +// List +"ActiveVersionDescription" = "Ceci est la version active"; +"MakeActiveVersionDescription" = "Activer"; + +// Alerts +// Uninstall +"Alert.Uninstall.Title" = "Désinstaller Xcode %@ ?"; +"Alert.Uninstall.Message" = "Xcodes sera déplacé vers la corbeille, mais la corbeille ne sera pas vidé."; +"Alert.Uninstall.Error.Title" = "Impossible de désinstaller Xcode"; + +// Cancel Install +"Alert.CancelInstall.Title" = "Êtes-vous sûr de vouloir arrêter l'installation de Xcode %@ ?"; +"Alert.CancelInstall.Message" = "Toute progression sera supprimée."; +"Alert.CancelInstall.PrimaryButton" = "Arrêter l'installation"; + +// Privileged Helper +"Alert.PrivilegedHelper.Title" = "Assistant Privilégié"; +"Alert.PrivilegedHelper.Message" = "Xcodes utilise un assistant privilégié distinct pour effectuer des tâches en tant que root. Ce sont des tâches qui nécessiteraient sudo sur la ligne de commande, y compris les étapes de post-installation et le changement de version de Xcode avec xcode-select.\n\nVous serez invité à saisir le mot de passe de votre compte macOS pour l'installer."; +"Alert.PrivilegedHelper.Error.Title" = "Impossible d'installer l'assistant"; + +// Min MacOS Supported +"Alert.MinSupported.Title" = "Exigences minimales non remplies"; +"Alert.MinSupported.Message" = "Xcode %@ nécessite MacOS %@, mais vous utilisez MacOS %@, voulez-vous toujours l'installer ?"; + +// Install +"Alert.Install.Error.Title" = "Impossible d'installer Xcode"; +"Alert.InstallArchive.Error.Title" = "Impossible d'installer l'archive de Xcode"; + +// Update +"Alert.Update.Error.Title" = "Impossible de mettre à jour la version de XCode sélectionnée"; + +// Active/Select +"Alert.Select.Error.Title" = "Impossible de sélectionner Xcode"; + +// Symbolic Links +"Alert.SymLink.Title" = "Impossible de créer un lien symbolique"; +"Alert.SymLink.Message" = "Xcode.app existe et n'est pas un lien symbolique"; + +// Post install +"Alert.PostInstall.Title" = "Impossible d'effectuer les étapes de post-installation"; + +// InstallationErrors +"InstallationError.DamagedXIP" = "L'archive \"%@\" est endommagée et ne peut pas être agrandie."; +"InstallationError.NotEnoughFreeSpaceToExpandArchive" = "L'archive \"%@\" ne peut pas être agrandie car le volume actuel n'a pas assez d'espace libre.\n\nLibérez plus d'espace pour agrandir l'archive, puis réinstallez Xcode %@ pour démarrer l'installation là où elle s'est arrêtée."; +"InstallationError.FailedToMoveXcodeToApplications" = "Impossible de déplacer Xcode vers le répertoire %@."; +"InstallationError.FailedSecurityAssessment" = "Xcode %@ a échoué à son évaluation de sécurité avec le résultat suivant :\n%@\nXCode reste installé à %@ si vous souhaitez l'utiliser quand même."; +"InstallationError.CodesignVerifyFailed" = "Le Xcode téléchargé a échoué à la vérification de la signature de code avec le résultat suivant :\n%@"; +"InstallationError.UnexpectedCodeSigningIdentity" = "Le Xcode téléchargé n'a pas l'identité de signature de code attendue.\nReçue :\n%@\n%@\nAttendue :\n%@\n%@"; +"InstallationError.UnsupportedFileFormat" = "Xcodes ne supporte pas (encore) l'installation de Xcode à partir du format de fichier %@."; +"InstallationError.MissingSudoerPassword" = "Mot de passe manquant. Veuillez réessayer."; +"InstallationError.UnavailableVersion" = "Impossible de trouver la version %@."; +"InstallationError.NoNonPrereleaseVersionAvailable" = "Aucune version non préliminaire disponible."; +"InstallationError.NoPrereleaseVersionAvailable" = "Aucune version préliminaire disponible."; +"InstallationError.MissingUsernameOrPassword" = "Nom d'utilisateur ou mot de passe manquant. Veuillez réessayer."; +"InstallationError.VersionAlreadyInstalled" = "%@ est déjà installé à %@"; +"InstallationError.InvalidVersion" = "%@ n'est pas un numéro de version valide."; +"InstallationError.VersionNotInstalled" = "%@ n'est pas installé."; +"InstallationError.PostInstallStepsNotPerformed.Installed" = "L'installation est terminée, mais certaines étapes de post-installation n'ont pas été effectuées automatiquement. Celles-ci seront exécutées lors du premier lancement de Xcode %@."; +"InstallationError.PostInstallStepsNotPerformed.NotInstalled" = "L'installation est terminée, mais certaines étapes de post-installation n'ont pas été effectuées automatiquement. Xcodes effectue ces étapes avec un assistant privilégié, qui ne semble pas être installé. Vous pouvez l'installer depuis Préférences > Avancé.\n\nCes étapes seront effectuées lors du premier lancement de Xcode %@."; + +// Installation Steps +"Downloading" = "Téléchargement"; +"Unarchiving" = "Désarchivage (cela peut prendre un certain temps)"; +"Moving" = "Déplacement vers %@"; +"TrashingArchive" = "Déplacement de l'archive vers la corbeille"; +"CheckingSecurity" = "Vérification de sécurité"; +"Finishing" = "Finition"; + +// Notifications +"Notification.NewVersionAvailable" = "Une nouvelle version est disponible"; +"Notification.FinishedInstalling" = "Installation terminée"; + + +"HelperClient.error" = "Impossible de communiquer avec l'assistant privilégié."; +///++ +// Notifications +"Notification.NewXcodeVersion.Title" = "Nouvelles versions de Xcode"; +"Notification.NewXcodeVersion.Body" = "De nouvelles versions de Xcode sont disponibles au téléchargement."; diff --git a/Xcodes/Resources/fr.lproj/Localizable.strings b/Xcodes/Resources/fr.lproj/Localizable.strings new file mode 100644 index 0000000..420164f --- /dev/null +++ b/Xcodes/Resources/fr.lproj/Localizable.strings @@ -0,0 +1,216 @@ +// Menu +"Menu.About" = "À propos de Xcodes"; +"Menu.CheckForUpdates" = "Vérifier les mises à jour..."; +"Menu.Acknowledgements" = "Xcodes Remerciements"; +"Menu.GitHubRepo" = "Xcodes GitHub"; +"Menu.ReportABug" = "Signaler un Bogue"; +"Menu.RequestNewFeature" = "Demander une Nouvelle Fonctionnalité"; + +// Common +"Install" = "Installer"; +"InstallDescription" = "Installer cette version"; +"RevealInFinder" = "Ouvrir dans le Finder"; +"Active" = "Version Active"; +"MakeActive" = "Activer"; +"Open" = "Ouvrir"; +"OpenDescription" = "Ouvrir cette version"; +"CopyPath" = "Copier le chemin d'accès"; +"CreateSymLink" = "Créer un Symlink pour Xcode.app"; +"Uninstall" = "Désinstaller"; +"Selected" = "Sélectionné"; +"Select" = "Sélectionner"; +"Cancel" = "Annuler"; +"Next" = "Suivant"; +"Continue" = "Continuer"; +"Close" = "Fermer"; +"OK" = "OK"; + +// Info Pane +"IdenticalBuilds" = "Versions identiques"; +"IdenticalBuilds.help" = "Parfois, la version préliminaire et la version finale sont exactement la même version. Xcodes affichera automatiquement ces versions ensemble."; + +"ReleaseDate" = "Date de Sortie"; +"ReleaseNotes" = "Notes de Mise à Jour"; +"ReleaseNotes.help" = "Consulter le Notes de Mise á Jour"; +"Compatibility" = "Compatibilité"; +"MacOSRequirement" = "Nécessite macOS %@ ou une version ultérieure"; +"SDKs" = "SDKs"; +"Compilers" = "Compilateurs"; +"DownloadSize" = "Taille de téléchargement"; +"NoXcodeSelected" = "Aucun XCode Sélectionné"; + +// Installation Steps +"InstallationStepDescription" = "Étape %d de %d : %@"; +"DownloadingPercentDescription" = "Téléchargement: %d%% téléchargé"; +"StopInstallation" = "Arrêter l'installation"; +"DownloadingError" = "Aucune information de téléchargement trouvée"; + +// About +"VersionWithBuild" = "Version %@ (%@)"; +"GithubRepo" = "GitHub Repo"; +"Acknowledgements" = "Remerciements"; +"UnxipExperiment" = "Expérience Unxip"; +"License" = "Licence"; + +// General Preference Pane +"General" = "Général"; +"AppleID" = "Identifiant Apple"; +"SignIn" = "Connecter"; +"Notifications" = "Notifications"; + +// Updates Preference Pane +"Updates" = "Mise à jour"; +"Versions" = "Versions"; +"AutomaticInstallNewVersion" = "Installer automatiquement les nouvelles versions de Xcode"; +"IncludePreRelease" = "Inclure les versions préliminaires/bêta"; +"AppUpdates" = "Mises à Jour de Xcodes.app"; +"CheckForAppUpdates" = "Vérifier automatiquement les mises à jour de l'application"; +"CheckNow" = "Vérifier Maintenant"; +"LastChecked" = "Dernière vérification: %@"; +"Never" = "Jamais"; + +// Advanced Preference Pane +"Advanced" = "Avancé"; +"LocalCachePath" = "Cache Local"; +"LocalCachePathDescription" = "Xcodes met en cache les versions de Xcode disponibles et télécharge temporairement les nouvelles versions dans le répertoire de cache local"; +"Change" = "Changer"; +"Active/Select" = "Activer/Sélectionner"; +"AutomaticallyCreateSymbolicLink" = "Créer automatiquement un lien symbolique vers Xcodes.app"; +"AutomaticallyCreateSymbolicLinkDescription" = "Lorsque vous activez/sélectionnez une version de Xcode, essayez de créer un lien symbolique nommé Xcode.app dans le répertoire d'installation"; +"DataSource" = "Source de Données"; +"DataSourceDescription" = "La source de données Apple gratte le site Web de developpeurs d'Apple. Il affichera toujours les dernières versions disponibles, mais est plus fragile.\n\nXcode Releases est une liste non officielle des versions de Xcode. Elle contient des informations supplémentaires qui ne sont pas facilement disponibles auprès d'Apple et est moins susceptible de se briser si Apple redessine son site Web de développeurs."; +"Downloader" = "Téléchargeur"; +"DownloaderDescription" = "aria2 utilise jusqu'à 16 connexions pour télécharger Xcode de 3 à 5 fois plus rapidement que URLSession. aria2 est fourni sous forme d'exécutable avec son code source dans Xcodes pour se conformer à sa licence GPLv2.\n\nURLSession est l'API d'Apple utilisée par défaut pour effectuer des requêtes d'URL."; +"PrivilegedHelper" = "Assistant Privilégié"; +"PrivilegedHelperDescription" = "Xcodes utilise un assistant privilégié distinct pour effectuer des tâches en tant que root. Ce sont des tâches qui nécessiteraient sudo sur la ligne de commande, y compris les étapes de post-installation et le changement de version de Xcode avec xcode-select.\n\nVous serez invité à saisir le mot de passe de votre compte macOS pour l'installer."; +"HelperInstalled" = "L'assistant est installé"; +"HelperNotInstalled" = "L'assistant n'est pas installé"; +"InstallHelper" = "Installer l'assistant'"; + +// Experiment Preference Pane +"Experiments" = "Experiences"; +"FasterUnxip" = "Unxip Plus Rapide"; +"UseUnxipExperiment" = "Utiliser l'expérience, lors de la décompression Unxip"; +"FasterUnxipDescription" = "Grâce à @_saagarjha, cette expérience peut augmenter jusqu'à 70% la vitesse d'extraction pour certains systèmes.\n\nPour plus d'informations sur la façon dont cela est accompli, consultez le référentiel GitHub unxip - https://github.com/saagarjha/unxip"; + +// Notifications +"AccessGranted" = "Accès autorisé. Vous recevrez des notifications de Xcodes."; +"AccessDenied" = "⚠️ Accès refusé ⚠️\n\nVeuillez ouvrir vos paramètres de notifications et sélectionnez Xcodes si vous souhaitez autoriser l'accès."; +"NotificationSettings" = "Paramètres de Notification"; +"EnableNotifications" = "Activer les Notifications"; + +// SignIn +"SignInWithApple" = "Connectez-vous avec votre identifiant Apple."; +"AppleID" = "Identifiant Apple:"; +"Password" = "Mot de passe:"; +"Required" = "Requis"; +"SignOut" = "Déconnecter"; + +// SMS/2FA +"DigitCodeDescription" = "Saisissez le code à %d chiffres de l'un de vos appareils de confiance:"; +"SendSMS" = "Envoyer un texto"; +"EnterDigitCodeDescription" = "Entrez le code à %d chiffres envoyé à %@: "; +"SelectTrustedPhone" = "Sélectionnez le numéro de téléphone de confiance pour recevoir un code à %d chiffres par texto:"; +"NoTrustedPhones" = "Votre compte n'a pas de numéros de téléphone de confiance, mais ils sont requis pour l'authentification à deux facteurs.\n\nVoir https://support.apple.com/en-ca/HT204915."; + +// MainWindow +"UpdatedAt" = "Actualisé: "; + +// ToolBar +"Login" = "Connexion"; +"LoginDescription" = "Ouvrir une connexion"; +"Refresh" = "Actualiser"; +"RefreshDescription" = "Actualiser la liste de Xcode"; +"All" = "Tout"; +"Release" = "Version"; +"ReleaseOnly" = "Seulement le versions finales"; +"Beta" = "Beta"; +"BetaOnly" = "Seulement les versions bêtas"; +"Filter" = "Filtre"; +"FilterAvailableDescription" = "Filtrer les versions disponibles"; +"FilterInstalledDescription" = "Filtrer les versions installées"; +"Info" = "Info"; +"InfoDescription" = "Afficher ou masquer le volet d'informations"; +"Preferences" = "Préférences"; +"PreferencesDescription" = "Ouvrir les Préférences"; +"Search" = "Rechercher..."; +"SearchDescription" = "Liste de recherche"; + +// List +"ActiveVersionDescription" = "Ceci est la version active"; +"MakeActiveVersionDescription" = "Activer"; + +// Alerts +// Uninstall +"Alert.Uninstall.Title" = "Désinstaller Xcode %@ ?"; +"Alert.Uninstall.Message" = "Xcodes sera déplacé vers la corbeille, mais la corbeille ne sera pas vidé."; +"Alert.Uninstall.Error.Title" = "Impossible de désinstaller Xcode"; + +// Cancel Install +"Alert.CancelInstall.Title" = "Êtes-vous sûr de vouloir arrêter l'installation de Xcode %@ ?"; +"Alert.CancelInstall.Message" = "Toute progression sera supprimée."; +"Alert.CancelInstall.PrimaryButton" = "Arrêter l'installation"; + +// Privileged Helper +"Alert.PrivilegedHelper.Title" = "Assistant Privilégié"; +"Alert.PrivilegedHelper.Message" = "Xcodes utilise un assistant privilégié distinct pour effectuer des tâches en tant que root. Ce sont des tâches qui nécessiteraient sudo sur la ligne de commande, y compris les étapes de post-installation et le changement de version de Xcode avec xcode-select.\n\nVous serez invité à saisir le mot de passe de votre compte macOS pour l'installer."; +"Alert.PrivilegedHelper.Error.Title" = "Impossible d'installer l'assistant"; + +// Min MacOS Supported +"Alert.MinSupported.Title" = "Exigences minimales non remplies"; +"Alert.MinSupported.Message" = "Xcode %@ nécessite MacOS %@, mais vous utilisez MacOS %@, voulez-vous toujours l'installer ?"; + +// Install +"Alert.Install.Error.Title" = "Impossible d'installer Xcode"; +"Alert.InstallArchive.Error.Title" = "Impossible d'installer l'archive de Xcode"; + +// Update +"Alert.Update.Error.Title" = "Impossible de mettre à jour la version de XCode sélectionnée"; + +// Active/Select +"Alert.Select.Error.Title" = "Impossible de sélectionner Xcode"; + +// Symbolic Links +"Alert.SymLink.Title" = "Impossible de créer un lien symbolique"; +"Alert.SymLink.Message" = "Xcode.app existe et n'est pas un lien symbolique"; + +// Post install +"Alert.PostInstall.Title" = "Impossible d'effectuer les étapes de post-installation"; + +// InstallationErrors +"InstallationError.DamagedXIP" = "L'archive \"%@\" est endommagée et ne peut pas être agrandie."; +"InstallationError.NotEnoughFreeSpaceToExpandArchive" = "L'archive \"%@\" ne peut pas être agrandie car le volume actuel n'a pas assez d'espace libre.\n\nLibérez plus d'espace pour agrandir l'archive, puis réinstallez Xcode %@ pour démarrer l'installation là où elle s'est arrêtée."; +"InstallationError.FailedToMoveXcodeToApplications" = "Impossible de déplacer Xcode vers le répertoire %@."; +"InstallationError.FailedSecurityAssessment" = "Xcode %@ a échoué à son évaluation de sécurité avec le résultat suivant :\n%@\nXCode reste installé à %@ si vous souhaitez l'utiliser quand même."; +"InstallationError.CodesignVerifyFailed" = "Le Xcode téléchargé a échoué à la vérification de la signature de code avec le résultat suivant :\n%@"; +"InstallationError.UnexpectedCodeSigningIdentity" = "Le Xcode téléchargé n'a pas l'identité de signature de code attendue.\nReçue :\n%@\n%@\nAttendue :\n%@\n%@"; +"InstallationError.UnsupportedFileFormat" = "Xcodes ne supporte pas (encore) l'installation de Xcode à partir du format de fichier %@."; +"InstallationError.MissingSudoerPassword" = "Mot de passe manquant. Veuillez réessayer."; +"InstallationError.UnavailableVersion" = "Impossible de trouver la version %@."; +"InstallationError.NoNonPrereleaseVersionAvailable" = "Aucune version non préliminaire disponible."; +"InstallationError.NoPrereleaseVersionAvailable" = "Aucune version préliminaire disponible."; +"InstallationError.MissingUsernameOrPassword" = "Nom d'utilisateur ou mot de passe manquant. Veuillez réessayer."; +"InstallationError.VersionAlreadyInstalled" = "%@ est déjà installé à %@"; +"InstallationError.InvalidVersion" = "%@ n'est pas un numéro de version valide."; +"InstallationError.VersionNotInstalled" = "%@ n'est pas installé."; +"InstallationError.PostInstallStepsNotPerformed.Installed" = "L'installation est terminée, mais certaines étapes de post-installation n'ont pas été effectuées automatiquement. Celles-ci seront exécutées lors du premier lancement de Xcode %@."; +"InstallationError.PostInstallStepsNotPerformed.NotInstalled" = "L'installation est terminée, mais certaines étapes de post-installation n'ont pas été effectuées automatiquement. Xcodes effectue ces étapes avec un assistant privilégié, qui ne semble pas être installé. Vous pouvez l'installer depuis Préférences > Avancé.\n\nCes étapes seront effectuées lors du premier lancement de Xcode %@."; + +// Installation Steps +"Downloading" = "Téléchargement"; +"Unarchiving" = "Désarchivage (cela peut prendre un certain temps)"; +"Moving" = "Déplacement vers %@"; +"TrashingArchive" = "Déplacement de l'archive vers la corbeille"; +"CheckingSecurity" = "Vérification de sécurité"; +"Finishing" = "Finition"; + +// Notifications +"Notification.NewVersionAvailable" = "Une nouvelle version est disponible"; +"Notification.FinishedInstalling" = "Installation terminée"; + + +"HelperClient.error" = "Impossible de communiquer avec l'assistant privilégié."; +///++ +// Notifications +"Notification.NewXcodeVersion.Title" = "Nouvelles versions de Xcode"; +"Notification.NewXcodeVersion.Body" = "De nouvelles versions de Xcode sont disponibles au téléchargement."; From fad96f497d8de7f07f78aebba8b724fa53d9dc1c Mon Sep 17 00:00:00 2001 From: Dominic Pepin Date: Sat, 23 Apr 2022 07:56:14 -0600 Subject: [PATCH 08/16] Fix issue where strings were not getting called in French --- Xcodes/Frontend/MainWindow.swift | 2 +- Xcodes/Frontend/Preferences/AdvancedPreferencePane.swift | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Xcodes/Frontend/MainWindow.swift b/Xcodes/Frontend/MainWindow.swift index 4b2c26d..87c0276 100644 --- a/Xcodes/Frontend/MainWindow.swift +++ b/Xcodes/Frontend/MainWindow.swift @@ -101,7 +101,7 @@ struct MainWindow: View { switch alertType { case let .cancelInstall(xcode): return Alert( - title: Text(String(format: "Alert.CancelInstall.Title", xcode.description)), + title: Text(String(format: localizeString("Alert.CancelInstall.Title"), xcode.description)), message: Text("Alert.CancelInstall.Message"), primaryButton: .destructive( Text("Alert.CancelInstall.PrimaryButton"), diff --git a/Xcodes/Frontend/Preferences/AdvancedPreferencePane.swift b/Xcodes/Frontend/Preferences/AdvancedPreferencePane.swift index b0f1644..0f94bd5 100644 --- a/Xcodes/Frontend/Preferences/AdvancedPreferencePane.swift +++ b/Xcodes/Frontend/Preferences/AdvancedPreferencePane.swift @@ -21,7 +21,7 @@ struct AdvancedPreferencePane: View { Image(systemName: "arrow.right.circle.fill") } .buttonStyle(PlainButtonStyle()) - .help("Reveal in Finder") + .help("RevealInFinder") .fixedSize() } Button("Change") { From 4af1fca7c7bdc81642c7794c8a64736b3674c30d Mon Sep 17 00:00:00 2001 From: Dominic Pepin Date: Sat, 23 Apr 2022 07:56:49 -0600 Subject: [PATCH 09/16] Fix issue where French/Longer strings were getting truncated --- Xcodes/Frontend/Preferences/UpdatesPreferencePane.swift | 1 + Xcodes/Frontend/SignIn/SignIn2FAView.swift | 1 + Xcodes/Resources/fr-CA.lproj/Localizable.strings | 2 +- Xcodes/Resources/fr.lproj/Localizable.strings | 2 +- 4 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Xcodes/Frontend/Preferences/UpdatesPreferencePane.swift b/Xcodes/Frontend/Preferences/UpdatesPreferencePane.swift index d99c73d..e94274b 100644 --- a/Xcodes/Frontend/Preferences/UpdatesPreferencePane.swift +++ b/Xcodes/Frontend/Preferences/UpdatesPreferencePane.swift @@ -33,6 +33,7 @@ struct UpdatesPreferencePane: View { "CheckForAppUpdates", isOn: $updater.automaticallyChecksForUpdates ) + .fixedSize(horizontal: true, vertical: false) Toggle( "IncludePreRelease", diff --git a/Xcodes/Frontend/SignIn/SignIn2FAView.swift b/Xcodes/Frontend/SignIn/SignIn2FAView.swift index 684cd0d..2e336e4 100644 --- a/Xcodes/Frontend/SignIn/SignIn2FAView.swift +++ b/Xcodes/Frontend/SignIn/SignIn2FAView.swift @@ -11,6 +11,7 @@ struct SignIn2FAView: View { var body: some View { VStack(alignment: .leading) { Text(String(format: localizeString("DigitCodeDescription"), authOptions.securityCode.length)) + .fixedSize(horizontal: true, vertical: false) HStack { Spacer() diff --git a/Xcodes/Resources/fr-CA.lproj/Localizable.strings b/Xcodes/Resources/fr-CA.lproj/Localizable.strings index 420164f..1488374 100644 --- a/Xcodes/Resources/fr-CA.lproj/Localizable.strings +++ b/Xcodes/Resources/fr-CA.lproj/Localizable.strings @@ -78,7 +78,7 @@ "AutomaticallyCreateSymbolicLink" = "Créer automatiquement un lien symbolique vers Xcodes.app"; "AutomaticallyCreateSymbolicLinkDescription" = "Lorsque vous activez/sélectionnez une version de Xcode, essayez de créer un lien symbolique nommé Xcode.app dans le répertoire d'installation"; "DataSource" = "Source de Données"; -"DataSourceDescription" = "La source de données Apple gratte le site Web de developpeurs d'Apple. Il affichera toujours les dernières versions disponibles, mais est plus fragile.\n\nXcode Releases est une liste non officielle des versions de Xcode. Elle contient des informations supplémentaires qui ne sont pas facilement disponibles auprès d'Apple et est moins susceptible de se briser si Apple redessine son site Web de développeurs."; +"DataSourceDescription" = "La source de données Apple gratte le site Web de developpeurs d'Apple. Elle contient les dernières versions disponibles, mais est plus fragile.\n\nXcode Releases est une liste non officielle des versions de Xcode. Elle contient des informations supplémentaires qui ne sont pas facilement disponibles auprès d'Apple et est moins susceptible de se briser si Apple redessine son site Web de développeurs."; "Downloader" = "Téléchargeur"; "DownloaderDescription" = "aria2 utilise jusqu'à 16 connexions pour télécharger Xcode de 3 à 5 fois plus rapidement que URLSession. aria2 est fourni sous forme d'exécutable avec son code source dans Xcodes pour se conformer à sa licence GPLv2.\n\nURLSession est l'API d'Apple utilisée par défaut pour effectuer des requêtes d'URL."; "PrivilegedHelper" = "Assistant Privilégié"; diff --git a/Xcodes/Resources/fr.lproj/Localizable.strings b/Xcodes/Resources/fr.lproj/Localizable.strings index 420164f..1488374 100644 --- a/Xcodes/Resources/fr.lproj/Localizable.strings +++ b/Xcodes/Resources/fr.lproj/Localizable.strings @@ -78,7 +78,7 @@ "AutomaticallyCreateSymbolicLink" = "Créer automatiquement un lien symbolique vers Xcodes.app"; "AutomaticallyCreateSymbolicLinkDescription" = "Lorsque vous activez/sélectionnez une version de Xcode, essayez de créer un lien symbolique nommé Xcode.app dans le répertoire d'installation"; "DataSource" = "Source de Données"; -"DataSourceDescription" = "La source de données Apple gratte le site Web de developpeurs d'Apple. Il affichera toujours les dernières versions disponibles, mais est plus fragile.\n\nXcode Releases est une liste non officielle des versions de Xcode. Elle contient des informations supplémentaires qui ne sont pas facilement disponibles auprès d'Apple et est moins susceptible de se briser si Apple redessine son site Web de développeurs."; +"DataSourceDescription" = "La source de données Apple gratte le site Web de developpeurs d'Apple. Elle contient les dernières versions disponibles, mais est plus fragile.\n\nXcode Releases est une liste non officielle des versions de Xcode. Elle contient des informations supplémentaires qui ne sont pas facilement disponibles auprès d'Apple et est moins susceptible de se briser si Apple redessine son site Web de développeurs."; "Downloader" = "Téléchargeur"; "DownloaderDescription" = "aria2 utilise jusqu'à 16 connexions pour télécharger Xcode de 3 à 5 fois plus rapidement que URLSession. aria2 est fourni sous forme d'exécutable avec son code source dans Xcodes pour se conformer à sa licence GPLv2.\n\nURLSession est l'API d'Apple utilisée par défaut pour effectuer des requêtes d'URL."; "PrivilegedHelper" = "Assistant Privilégié"; From 5d680633e0a795becd81633023f73d60c348e848 Mon Sep 17 00:00:00 2001 From: Dominic Pepin Date: Sat, 23 Apr 2022 08:35:04 -0600 Subject: [PATCH 10/16] No need to fr-ca localization file. fr will be used if not present. --- Xcodes.xcodeproj/project.pbxproj | 3 - .../Resources/fr-CA.lproj/Localizable.strings | 216 ------------------ 2 files changed, 219 deletions(-) delete mode 100644 Xcodes/Resources/fr-CA.lproj/Localizable.strings diff --git a/Xcodes.xcodeproj/project.pbxproj b/Xcodes.xcodeproj/project.pbxproj index d0fab96..7dc041a 100644 --- a/Xcodes.xcodeproj/project.pbxproj +++ b/Xcodes.xcodeproj/project.pbxproj @@ -170,7 +170,6 @@ 536CFDD3263C9A8000026CE0 /* XcodesSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodesSheet.swift; sourceTree = ""; }; 53CBAB2B263DCC9100410495 /* XcodesAlert.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodesAlert.swift; sourceTree = ""; }; 63EAA4EA259944450046AB8F /* ProgressButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgressButton.swift; sourceTree = ""; }; - B648F22A2810C0330096781B /* fr-CA */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "fr-CA"; path = "fr-CA.lproj/Localizable.strings"; sourceTree = ""; }; B648F22B2810C1130096781B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; CA11E7B92598476C00D2EE1C /* XcodeCommands.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodeCommands.swift; sourceTree = ""; }; CA2518EB25A7FF2B00F08414 /* AppStateUpdateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppStateUpdateTests.swift; sourceTree = ""; }; @@ -691,7 +690,6 @@ knownRegions = ( en, Base, - "fr-CA", fr, ); mainGroup = CAD2E7952449574E00113D76; @@ -891,7 +889,6 @@ isa = PBXVariantGroup; children = ( E872EE4F2808D4F100D3DD8B /* en */, - B648F22A2810C0330096781B /* fr-CA */, B648F22B2810C1130096781B /* fr */, ); name = Localizable.strings; diff --git a/Xcodes/Resources/fr-CA.lproj/Localizable.strings b/Xcodes/Resources/fr-CA.lproj/Localizable.strings deleted file mode 100644 index 1488374..0000000 --- a/Xcodes/Resources/fr-CA.lproj/Localizable.strings +++ /dev/null @@ -1,216 +0,0 @@ -// Menu -"Menu.About" = "À propos de Xcodes"; -"Menu.CheckForUpdates" = "Vérifier les mises à jour..."; -"Menu.Acknowledgements" = "Xcodes Remerciements"; -"Menu.GitHubRepo" = "Xcodes GitHub"; -"Menu.ReportABug" = "Signaler un Bogue"; -"Menu.RequestNewFeature" = "Demander une Nouvelle Fonctionnalité"; - -// Common -"Install" = "Installer"; -"InstallDescription" = "Installer cette version"; -"RevealInFinder" = "Ouvrir dans le Finder"; -"Active" = "Version Active"; -"MakeActive" = "Activer"; -"Open" = "Ouvrir"; -"OpenDescription" = "Ouvrir cette version"; -"CopyPath" = "Copier le chemin d'accès"; -"CreateSymLink" = "Créer un Symlink pour Xcode.app"; -"Uninstall" = "Désinstaller"; -"Selected" = "Sélectionné"; -"Select" = "Sélectionner"; -"Cancel" = "Annuler"; -"Next" = "Suivant"; -"Continue" = "Continuer"; -"Close" = "Fermer"; -"OK" = "OK"; - -// Info Pane -"IdenticalBuilds" = "Versions identiques"; -"IdenticalBuilds.help" = "Parfois, la version préliminaire et la version finale sont exactement la même version. Xcodes affichera automatiquement ces versions ensemble."; - -"ReleaseDate" = "Date de Sortie"; -"ReleaseNotes" = "Notes de Mise à Jour"; -"ReleaseNotes.help" = "Consulter le Notes de Mise á Jour"; -"Compatibility" = "Compatibilité"; -"MacOSRequirement" = "Nécessite macOS %@ ou une version ultérieure"; -"SDKs" = "SDKs"; -"Compilers" = "Compilateurs"; -"DownloadSize" = "Taille de téléchargement"; -"NoXcodeSelected" = "Aucun XCode Sélectionné"; - -// Installation Steps -"InstallationStepDescription" = "Étape %d de %d : %@"; -"DownloadingPercentDescription" = "Téléchargement: %d%% téléchargé"; -"StopInstallation" = "Arrêter l'installation"; -"DownloadingError" = "Aucune information de téléchargement trouvée"; - -// About -"VersionWithBuild" = "Version %@ (%@)"; -"GithubRepo" = "GitHub Repo"; -"Acknowledgements" = "Remerciements"; -"UnxipExperiment" = "Expérience Unxip"; -"License" = "Licence"; - -// General Preference Pane -"General" = "Général"; -"AppleID" = "Identifiant Apple"; -"SignIn" = "Connecter"; -"Notifications" = "Notifications"; - -// Updates Preference Pane -"Updates" = "Mise à jour"; -"Versions" = "Versions"; -"AutomaticInstallNewVersion" = "Installer automatiquement les nouvelles versions de Xcode"; -"IncludePreRelease" = "Inclure les versions préliminaires/bêta"; -"AppUpdates" = "Mises à Jour de Xcodes.app"; -"CheckForAppUpdates" = "Vérifier automatiquement les mises à jour de l'application"; -"CheckNow" = "Vérifier Maintenant"; -"LastChecked" = "Dernière vérification: %@"; -"Never" = "Jamais"; - -// Advanced Preference Pane -"Advanced" = "Avancé"; -"LocalCachePath" = "Cache Local"; -"LocalCachePathDescription" = "Xcodes met en cache les versions de Xcode disponibles et télécharge temporairement les nouvelles versions dans le répertoire de cache local"; -"Change" = "Changer"; -"Active/Select" = "Activer/Sélectionner"; -"AutomaticallyCreateSymbolicLink" = "Créer automatiquement un lien symbolique vers Xcodes.app"; -"AutomaticallyCreateSymbolicLinkDescription" = "Lorsque vous activez/sélectionnez une version de Xcode, essayez de créer un lien symbolique nommé Xcode.app dans le répertoire d'installation"; -"DataSource" = "Source de Données"; -"DataSourceDescription" = "La source de données Apple gratte le site Web de developpeurs d'Apple. Elle contient les dernières versions disponibles, mais est plus fragile.\n\nXcode Releases est une liste non officielle des versions de Xcode. Elle contient des informations supplémentaires qui ne sont pas facilement disponibles auprès d'Apple et est moins susceptible de se briser si Apple redessine son site Web de développeurs."; -"Downloader" = "Téléchargeur"; -"DownloaderDescription" = "aria2 utilise jusqu'à 16 connexions pour télécharger Xcode de 3 à 5 fois plus rapidement que URLSession. aria2 est fourni sous forme d'exécutable avec son code source dans Xcodes pour se conformer à sa licence GPLv2.\n\nURLSession est l'API d'Apple utilisée par défaut pour effectuer des requêtes d'URL."; -"PrivilegedHelper" = "Assistant Privilégié"; -"PrivilegedHelperDescription" = "Xcodes utilise un assistant privilégié distinct pour effectuer des tâches en tant que root. Ce sont des tâches qui nécessiteraient sudo sur la ligne de commande, y compris les étapes de post-installation et le changement de version de Xcode avec xcode-select.\n\nVous serez invité à saisir le mot de passe de votre compte macOS pour l'installer."; -"HelperInstalled" = "L'assistant est installé"; -"HelperNotInstalled" = "L'assistant n'est pas installé"; -"InstallHelper" = "Installer l'assistant'"; - -// Experiment Preference Pane -"Experiments" = "Experiences"; -"FasterUnxip" = "Unxip Plus Rapide"; -"UseUnxipExperiment" = "Utiliser l'expérience, lors de la décompression Unxip"; -"FasterUnxipDescription" = "Grâce à @_saagarjha, cette expérience peut augmenter jusqu'à 70% la vitesse d'extraction pour certains systèmes.\n\nPour plus d'informations sur la façon dont cela est accompli, consultez le référentiel GitHub unxip - https://github.com/saagarjha/unxip"; - -// Notifications -"AccessGranted" = "Accès autorisé. Vous recevrez des notifications de Xcodes."; -"AccessDenied" = "⚠️ Accès refusé ⚠️\n\nVeuillez ouvrir vos paramètres de notifications et sélectionnez Xcodes si vous souhaitez autoriser l'accès."; -"NotificationSettings" = "Paramètres de Notification"; -"EnableNotifications" = "Activer les Notifications"; - -// SignIn -"SignInWithApple" = "Connectez-vous avec votre identifiant Apple."; -"AppleID" = "Identifiant Apple:"; -"Password" = "Mot de passe:"; -"Required" = "Requis"; -"SignOut" = "Déconnecter"; - -// SMS/2FA -"DigitCodeDescription" = "Saisissez le code à %d chiffres de l'un de vos appareils de confiance:"; -"SendSMS" = "Envoyer un texto"; -"EnterDigitCodeDescription" = "Entrez le code à %d chiffres envoyé à %@: "; -"SelectTrustedPhone" = "Sélectionnez le numéro de téléphone de confiance pour recevoir un code à %d chiffres par texto:"; -"NoTrustedPhones" = "Votre compte n'a pas de numéros de téléphone de confiance, mais ils sont requis pour l'authentification à deux facteurs.\n\nVoir https://support.apple.com/en-ca/HT204915."; - -// MainWindow -"UpdatedAt" = "Actualisé: "; - -// ToolBar -"Login" = "Connexion"; -"LoginDescription" = "Ouvrir une connexion"; -"Refresh" = "Actualiser"; -"RefreshDescription" = "Actualiser la liste de Xcode"; -"All" = "Tout"; -"Release" = "Version"; -"ReleaseOnly" = "Seulement le versions finales"; -"Beta" = "Beta"; -"BetaOnly" = "Seulement les versions bêtas"; -"Filter" = "Filtre"; -"FilterAvailableDescription" = "Filtrer les versions disponibles"; -"FilterInstalledDescription" = "Filtrer les versions installées"; -"Info" = "Info"; -"InfoDescription" = "Afficher ou masquer le volet d'informations"; -"Preferences" = "Préférences"; -"PreferencesDescription" = "Ouvrir les Préférences"; -"Search" = "Rechercher..."; -"SearchDescription" = "Liste de recherche"; - -// List -"ActiveVersionDescription" = "Ceci est la version active"; -"MakeActiveVersionDescription" = "Activer"; - -// Alerts -// Uninstall -"Alert.Uninstall.Title" = "Désinstaller Xcode %@ ?"; -"Alert.Uninstall.Message" = "Xcodes sera déplacé vers la corbeille, mais la corbeille ne sera pas vidé."; -"Alert.Uninstall.Error.Title" = "Impossible de désinstaller Xcode"; - -// Cancel Install -"Alert.CancelInstall.Title" = "Êtes-vous sûr de vouloir arrêter l'installation de Xcode %@ ?"; -"Alert.CancelInstall.Message" = "Toute progression sera supprimée."; -"Alert.CancelInstall.PrimaryButton" = "Arrêter l'installation"; - -// Privileged Helper -"Alert.PrivilegedHelper.Title" = "Assistant Privilégié"; -"Alert.PrivilegedHelper.Message" = "Xcodes utilise un assistant privilégié distinct pour effectuer des tâches en tant que root. Ce sont des tâches qui nécessiteraient sudo sur la ligne de commande, y compris les étapes de post-installation et le changement de version de Xcode avec xcode-select.\n\nVous serez invité à saisir le mot de passe de votre compte macOS pour l'installer."; -"Alert.PrivilegedHelper.Error.Title" = "Impossible d'installer l'assistant"; - -// Min MacOS Supported -"Alert.MinSupported.Title" = "Exigences minimales non remplies"; -"Alert.MinSupported.Message" = "Xcode %@ nécessite MacOS %@, mais vous utilisez MacOS %@, voulez-vous toujours l'installer ?"; - -// Install -"Alert.Install.Error.Title" = "Impossible d'installer Xcode"; -"Alert.InstallArchive.Error.Title" = "Impossible d'installer l'archive de Xcode"; - -// Update -"Alert.Update.Error.Title" = "Impossible de mettre à jour la version de XCode sélectionnée"; - -// Active/Select -"Alert.Select.Error.Title" = "Impossible de sélectionner Xcode"; - -// Symbolic Links -"Alert.SymLink.Title" = "Impossible de créer un lien symbolique"; -"Alert.SymLink.Message" = "Xcode.app existe et n'est pas un lien symbolique"; - -// Post install -"Alert.PostInstall.Title" = "Impossible d'effectuer les étapes de post-installation"; - -// InstallationErrors -"InstallationError.DamagedXIP" = "L'archive \"%@\" est endommagée et ne peut pas être agrandie."; -"InstallationError.NotEnoughFreeSpaceToExpandArchive" = "L'archive \"%@\" ne peut pas être agrandie car le volume actuel n'a pas assez d'espace libre.\n\nLibérez plus d'espace pour agrandir l'archive, puis réinstallez Xcode %@ pour démarrer l'installation là où elle s'est arrêtée."; -"InstallationError.FailedToMoveXcodeToApplications" = "Impossible de déplacer Xcode vers le répertoire %@."; -"InstallationError.FailedSecurityAssessment" = "Xcode %@ a échoué à son évaluation de sécurité avec le résultat suivant :\n%@\nXCode reste installé à %@ si vous souhaitez l'utiliser quand même."; -"InstallationError.CodesignVerifyFailed" = "Le Xcode téléchargé a échoué à la vérification de la signature de code avec le résultat suivant :\n%@"; -"InstallationError.UnexpectedCodeSigningIdentity" = "Le Xcode téléchargé n'a pas l'identité de signature de code attendue.\nReçue :\n%@\n%@\nAttendue :\n%@\n%@"; -"InstallationError.UnsupportedFileFormat" = "Xcodes ne supporte pas (encore) l'installation de Xcode à partir du format de fichier %@."; -"InstallationError.MissingSudoerPassword" = "Mot de passe manquant. Veuillez réessayer."; -"InstallationError.UnavailableVersion" = "Impossible de trouver la version %@."; -"InstallationError.NoNonPrereleaseVersionAvailable" = "Aucune version non préliminaire disponible."; -"InstallationError.NoPrereleaseVersionAvailable" = "Aucune version préliminaire disponible."; -"InstallationError.MissingUsernameOrPassword" = "Nom d'utilisateur ou mot de passe manquant. Veuillez réessayer."; -"InstallationError.VersionAlreadyInstalled" = "%@ est déjà installé à %@"; -"InstallationError.InvalidVersion" = "%@ n'est pas un numéro de version valide."; -"InstallationError.VersionNotInstalled" = "%@ n'est pas installé."; -"InstallationError.PostInstallStepsNotPerformed.Installed" = "L'installation est terminée, mais certaines étapes de post-installation n'ont pas été effectuées automatiquement. Celles-ci seront exécutées lors du premier lancement de Xcode %@."; -"InstallationError.PostInstallStepsNotPerformed.NotInstalled" = "L'installation est terminée, mais certaines étapes de post-installation n'ont pas été effectuées automatiquement. Xcodes effectue ces étapes avec un assistant privilégié, qui ne semble pas être installé. Vous pouvez l'installer depuis Préférences > Avancé.\n\nCes étapes seront effectuées lors du premier lancement de Xcode %@."; - -// Installation Steps -"Downloading" = "Téléchargement"; -"Unarchiving" = "Désarchivage (cela peut prendre un certain temps)"; -"Moving" = "Déplacement vers %@"; -"TrashingArchive" = "Déplacement de l'archive vers la corbeille"; -"CheckingSecurity" = "Vérification de sécurité"; -"Finishing" = "Finition"; - -// Notifications -"Notification.NewVersionAvailable" = "Une nouvelle version est disponible"; -"Notification.FinishedInstalling" = "Installation terminée"; - - -"HelperClient.error" = "Impossible de communiquer avec l'assistant privilégié."; -///++ -// Notifications -"Notification.NewXcodeVersion.Title" = "Nouvelles versions de Xcode"; -"Notification.NewXcodeVersion.Body" = "De nouvelles versions de Xcode sont disponibles au téléchargement."; From 74f54c81289a18d4c8bd776411b5c9546d37e2ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ce=CC=81sar=20Trujillo?= Date: Wed, 20 Apr 2022 17:04:55 -0500 Subject: [PATCH 11/16] Spanish Localization - Localizable ES file added. - Localizing all strings. --- Xcodes.xcodeproj/project.pbxproj | 3 + Xcodes/Resources/es.lproj/Localizable.strings | 215 ++++++++++++++++++ 2 files changed, 218 insertions(+) create mode 100644 Xcodes/Resources/es.lproj/Localizable.strings diff --git a/Xcodes.xcodeproj/project.pbxproj b/Xcodes.xcodeproj/project.pbxproj index 5967b75..871e22c 100644 --- a/Xcodes.xcodeproj/project.pbxproj +++ b/Xcodes.xcodeproj/project.pbxproj @@ -170,6 +170,7 @@ 536CFDD1263C94DE00026CE0 /* SignedInView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SignedInView.swift; sourceTree = ""; }; 536CFDD3263C9A8000026CE0 /* XcodesSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodesSheet.swift; sourceTree = ""; }; 53CBAB2B263DCC9100410495 /* XcodesAlert.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodesAlert.swift; sourceTree = ""; }; + 58F743C02810A34900EEC0F3 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = ""; }; 63EAA4EA259944450046AB8F /* ProgressButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ProgressButton.swift; sourceTree = ""; }; CA11E7B92598476C00D2EE1C /* XcodeCommands.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XcodeCommands.swift; sourceTree = ""; }; CA2518EB25A7FF2B00F08414 /* AppStateUpdateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppStateUpdateTests.swift; sourceTree = ""; }; @@ -691,6 +692,7 @@ en, Base, ru, + es, ); mainGroup = CAD2E7952449574E00113D76; packageReferences = ( @@ -890,6 +892,7 @@ children = ( E872EE4F2808D4F100D3DD8B /* en */, 4A5AAA1D28118FAD00528958 /* ru */, + 58F743C02810A34900EEC0F3 /* es */, ); name = Localizable.strings; sourceTree = ""; diff --git a/Xcodes/Resources/es.lproj/Localizable.strings b/Xcodes/Resources/es.lproj/Localizable.strings new file mode 100644 index 0000000..917a565 --- /dev/null +++ b/Xcodes/Resources/es.lproj/Localizable.strings @@ -0,0 +1,215 @@ +// Menu +"Menu.About" = "Acerca de Xcodes"; +"Menu.CheckForUpdates" = "Buscar Actualizaciones..."; +"Menu.Acknowledgements" = "Xcodes Agradecimientos"; +"Menu.GitHubRepo" = "Xcodes GitHub Repositorio"; +"Menu.ReportABug" = "Reportar un fallo"; +"Menu.RequestNewFeature" = "Solicitar una nueva función"; + +// Common +"Install" = "Instalar"; +"InstallDescription" = "Instalar esta versión"; +"RevealInFinder" = "Mostrar en el Finder"; +"Active" = "Activo"; +"MakeActive" = "Activarlo"; +"Open" = "Abrir"; +"OpenDescription" = "Abrir esta versión"; +"CopyPath" = "Copiar Ruta"; +"CreateSymLink" = "Crear Symlink como Xcode.app"; +"Uninstall" = "Desinstalar"; +"Selected" = "Seleccionado"; +"Select" = "Seleccionar"; +"Cancel" = "Cancelar"; +"Next" = "Siguiente"; +"Continue" = "Continuar"; +"Close" = "Cerrar"; + +// Info Pane +"IdenticalBuilds" = "Compilaciones Idénticas"; +"IdenticalBuilds.help" = "A veces, una versión preliminar y una versión de lanzamiento tienen exactamente la misma compilación. Xcodes mostrará automáticamente estas versiones juntas."; + +"ReleaseDate" = "Fecha de lanzamiento"; +"ReleaseNotes" = "Notas del lanzamiento"; +"ReleaseNotes.help" = "Ver Notas del Lanzamiento"; +"Compatibility" = "Compatibilidad"; +"MacOSRequirement" = "Requiere macOS %@ o posterior"; +"SDKs" = "SDKs"; +"Compilers" = "Compiladores"; +"DownloadSize" = "Tamaño de descarga"; +"NoXcodeSelected" = "No se ha seleccionado un Xcode"; + +// Installation Steps +"InstallationStepDescription" = "Paso %@ de %@: %@"; +"DownloadingPercentDescription" = "Descargando: %@% completado"; +"StopInstallation" = "Detener Instalación"; +"DownloadingError" = "No se encontró información de descarga"; + +// About +"VersionWithBuild" = "Versión %@ (%@)"; +"GithubRepo" = "GitHub Repositorio"; +"Acknowledgements" = "Agradecimientos"; +"UnxipExperiment" = "Experimento Unxip"; +"License" = "Licencia"; + +// General Preference Pane +"General" = "General"; +"AppleID" = "Apple ID"; +"SignIn" = "Iniciar Sesión"; +"Notifications" = "Notificaciones"; + +// Updates Preference Pane +"Updates" = "Actualizaciones"; +"Versions" = "Versiones"; +"AutomaticInstallNewVersion" = "Instalar automáticamente versions de Xcode"; +"IncludePreRelease" = "Incluir versiones preliminares/beta"; +"AppUpdates" = "Xcodes.app Actualizaciones"; +"CheckForAppUpdates" = "Buscar automáticamente actualizaciones"; +"CheckNow" = "Revisarlo Ahora"; +"LastChecked" = "Última comprobación: %@"; +"Never" = "Nunca"; + +// Advanced Preference Pane +"Advanced" = "Avanzado"; +"LocalCachePath" = "Ruta de caché local"; +"LocalCachePathDescription" = "Xcodes almacena en caché versiones de Xcode disponibles y descargas temporalmente las nuevas versiones en un directorio"; +"Change" = "Cambiar"; +"Active/Select" = "Activar/Seleccionar"; +"AutomaticallyCreateSymbolicLink" = "Crear automáticamente enlace simbólico a Xcodes.app"; +"AutomaticallyCreateSymbolicLinkDescription" = "Al activar/seleccionar una versión de Xcode, intentará crear un enlace simbólico llamado Xcode.app en el directorio de instalación."; +"DataSource" = "Fuente de datos"; +"DataSourceDescription" = "La fuente de datos de Apple la extrae de el sitio web de Apple Developer. Siempre mostrará los últimos lanzamientos disponibles, pero es más frágil.\n\nLos lanzamientos de Xcode es una lista no oficial de lanzamientos de Xcode. Se proporciona como datos bien estructurados, contiene información adicional que no está disponible fácilmente en Apple y es menos probable que se rompa si Apple rediseña su sitio web para desarrolladores."; +"Downloader" = "Downloader"; +"DownloaderDescription" = "aria2 usa hasta 16 conexiones para descargar Xcode de 3 a 5 veces más rápido que URLSession. Se incluye como un ejecutable junto con su código fuente dentro de Xcodes para cumplir con su licencia GPLv2.\n\nURLSession es la API predeterminada de Apple para realizar solicitudes de URL."; +"PrivilegedHelper" = "Asistente privilegiado"; +"PrivilegedHelperDescription" = "Xcodes utiliza un asistente privilegiado independiente para realizar tareas como root. Estas son cosas que requerirían sudo en la línea de comandos, incluidos los pasos posteriores a la instalación y el cambio de versiones de Xcode con xcode-select.\n\nSe le pedirá la contraseña de su cuenta de macOS para instalarlo."; +"HelperInstalled" = "El Asistente está instalado"; +"HelperNotInstalled" = "El Asistente no está instalado."; +"InstallHelper" = "Instalar Asistente"; + +// Experiment Preference Pane +"Experiments" = "Experiments"; +"FasterUnxip" = "Unxip más rápido"; +"UseUnxipExperiment" = "Al descomprimir, use experiment"; +"FasterUnxipDescription" = "Gracias a @_saagarjha, este experimento puede aumentar la velocidad de liberación hasta en un 70 % para algunos sistemas.\n\nPuede ver más información sobre cómo se logra esto en el repositorio de unxip: https://github.com/saagarjha/unxip"; + +// Notifications +"AccessGranted" = "Access Permitido. Recibirás notificaciones de Xcodes."; +"AccessDenied" = "⚠️ Acceso Denegado ⚠️\n\nPor favor abra su Configuración de notificaciones y seleccione Xcodes si desea permitir el acceso."; +"NotificationSettings" = "Configuración de las notificaciones"; +"EnableNotifications" = "Permitir notificaciones"; + +// SignIn +"SignInWithApple" = "Inicia sesión con tu ID de Apple."; +"AppleID" = "AppleID:"; +"Password" = "Contraseña:"; +"Required" = "Requerido"; +"SignOut" = "Cerrar Sesión"; + +// SMS/2FA +"DigitCodeDescription" = "Ingrese el código de %@ dígitos de uno de sus dispositivos de confianza:"; +"SendSMS" = "Enviar SMS"; +"EnterDigitCodeDescription" = "Ingrese el código de dígito %@ enviado a %@: "; +"SelectTrustedPhone" = "Selecciona un número de teléfono de confianza para recibir un código de %@ dígitos por SMS:"; +"NoTrustedPhones" = "Su cuenta no tiene números de teléfono de confianza, pero son necesarios para la autenticación de dos factores.\n\nVer https://support.apple.com/en-ca/HT204915."; + +// MainWindow +"UpdatedAt" = "Actualizado en"; + +// ToolBar +"Login" = "Iniciar Sesión"; +"LoginDescription" = "Abrir Inicio de Sesión"; +"Refresh" = "Refrescar"; +"RefreshDescription" = "Refrescar lista de Xcodes"; +"All" = "Todos"; +"Release" = "Liberado"; +"ReleaseOnly" = "Solo Liberados"; +"Beta" = "Beta"; +"BetaOnly" = "Solo Beta"; +"Filter" = "Filtro"; +"FilterAvailableDescription" = "Filtrar versiones disponibles"; +"FilterInstalledDescription" = "Filtrar versiones instaladas"; +"Info" = "Info"; +"InfoDescription" = "Mostrar u ocultar el panel de información"; +"Preferences" = "Preferencias"; +"PreferencesDescription" = "Abrir Preferencias"; +"Search" = "Buscar..."; +"SearchDescription" = "Lista de búsqueda"; + +// List +"ActiveVersionDescription" = "Esta es la versión activa."; +"MakeActiveVersionDescription" = "Haz que esta sea la versión activa"; + +// Alerts +// Uninstall +"Alert.Uninstall.Title" = "Desinstalar Xcode %@?"; +"Alert.Uninstall.Message" = "Se moverá a la Papelera, pero no se vaciará."; +"Alert.Uninstall.Error.Title" = "No se puede desinstalar Xcode"; + +// Cancel Install +"Alert.CancelInstall.Title" = "¿Está seguro de que desea detener la instalación de Xcode %@?"; +"Alert.CancelInstall.Message" = "Cualquier progreso será descartado."; +"Alert.CancelInstall.PrimaryButton" = "Detener Instalación"; + +// Privileged Helper +"Alert.PrivilegedHelper.Title" = "Asistente Privilegiado"; +"Alert.PrivilegedHelper.Message" = "Xcodes utiliza un Asistente Privilegiado independiente para realizar tareas como root. Estas son cosas que requerirían sudo en la línea de comando, incluidos los pasos posteriores a la instalación y el cambio de versiones de Xcode con xcode-select.\n\nSe le pedirá la contraseña de su cuenta de macOS para instalarlo."; +"Alert.PrivilegedHelper.Error.Title" = "No se puede instalar el asistente"; + +// Min MacOS Supported +"Alert.MinSupported.Title" = "Requisitos mínimos no cumplidos"; +"Alert.MinSupported.Message" = "Xcode %@ requiere MacOS %@, pero está ejecutando MacOS %@, ¿aún desea instalarlo?"; + +// Install +"Alert.Install.Error.Title" = "No se puede instalar Xcode"; +"Alert.InstallArchive.Error.Title" = "No se puede instalar el Xcode archivado"; + +// Update +"Alert.Update.Error.Title" = "No se puede actualizar el Xcode seleccionado"; + +// Active/Select +"Alert.Select.Error.Title" = "No se puede seleccionar el Xcode"; + +// Symbolic Links +"Alert.SymLink.Title" = "No se puede crear un enlace simbólico"; +"Alert.SymLink.Message" = "Xcode.app existe y no es un enlace simbólico"; + +// Post install +"Alert.PostInstall.Title" = "No se pueden realizar los pasos posteriores a la instalación"; + +// InstallationErrors +"InstallationError.DamagedXIP" = "El archivo \"%@\" está dañado y no se puede expandir."; +"InstallationError.NotEnoughFreeSpaceToExpandArchive" = "El archivo \"%@\" no se puede expandir porque el volumen/disco actual no tiene suficiente espacio libre.\n\nHaga más espacio disponible para expandir el archivo y luego instale Xcode %@ nuevamente para comenzar la instalación desde donde lo dejó."; +"InstallationError.FailedToMoveXcodeToApplications" = "No se pudo mover Xcode al directorio %@."; +"InstallationError.FailedSecurityAssessment" = "Xcode %@ falló su evaluación de seguridad con el siguiente resultado:\n%@\nPermanece instalado en %@ si desea usarlo de todos modos."; +"InstallationError.CodesignVerifyFailed" = "El Xcode descargado falló en la verificación de firma de código con el siguiente resultado:\n%@"; +"InstallationError.UnexpectedCodeSigningIdentity" = "El Xcode descargado no tiene la identidad de firma de código esperada.\nObtuvo:\n%@\n%@\nEsperado:\n%@\n%@"; +"InstallationError.UnsupportedFileFormat" = "Xcodes no admite (todavía) la instalación de Xcode desde el formato de archivo %@."; +"InstallationError.MissingSudoerPassword" = "Falta la contraseña. Inténtalo de nuevo."; +"InstallationError.UnavailableVersion" = "No se pudo encontrar la versión %@."; +"InstallationError.NoNonPrereleaseVersionAvailable" = "No hay versiones que no sean preliminares disponibles."; +"InstallationError.NoPrereleaseVersionAvailable" = "No hay versiones preliminares disponibles."; +"InstallationError.MissingUsernameOrPassword" = "Falta el nombre de usuario o una contraseña. Inténtalo de nuevo."; +"InstallationError.VersionAlreadyInstalled" = "%@ ya está instalado en %@"; +"InstallationError.InvalidVersion" = "%@ no es un número de versión válido."; +"InstallationError.VersionNotInstalled" = "%@ no esta instalada."; +"InstallationError.PostInstallStepsNotPerformed.Installed" = "La instalación se completó, pero algunos pasos posteriores a la instalación no se realizaron automáticamente. Estos se realizarán cuando inicie Xcode por primera vez %@."; +"InstallationError.PostInstallStepsNotPerformed.NotInstalled" = "La instalación se completó, pero algunos pasos posteriores a la instalación no se realizaron automáticamente. Xcodes realiza estos pasos con un asistente privilegiado, que parece no estar instalado. Puede instalarlo desde Preferencias > Avanzado.\n\nEstos pasos se realizarán cuando inicie Xcode por primera vez %@."; + +// Installation Steps +"Downloading" = "Descargando"; +"Unarchiving" = "Desarchivando (esto puede llevar un tiempo)"; +"Moving" = "Moviendo a %@"; +"TrashingArchive" = "Mover archivo a la Papelera"; +"CheckingSecurity" = "Verificación de seguridad"; +"Finishing" = "Finalizando"; + +// Notifications +"Notification.NewVersionAvailable" = "Una nueva versión está disponible"; +"Notification.FinishedInstalling" = "Terminado de instalar"; + + +"HelperClient.error" = "No se puede comunicar con el Asistente privilegiado."; +///++ +// Notifications +"Notification.NewXcodeVersion.Title" = "Nuevas versiones de Xcode"; +"Notification.NewXcodeVersion.Body" = "Nuevas versiones de Xcode están disponibles para descargar."; From 857c232fb02aa8fb2cb93ebf2862b23f6cd4da4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ce=CC=81sar=20Trujillo?= Date: Thu, 21 Apr 2022 09:43:31 -0500 Subject: [PATCH 12/16] Leaving a word in english due to an attributed text to a URL --- Xcodes/Resources/es.lproj/Localizable.strings | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Xcodes/Resources/es.lproj/Localizable.strings b/Xcodes/Resources/es.lproj/Localizable.strings index 917a565..24493c0 100644 --- a/Xcodes/Resources/es.lproj/Localizable.strings +++ b/Xcodes/Resources/es.lproj/Localizable.strings @@ -77,7 +77,7 @@ "AutomaticallyCreateSymbolicLink" = "Crear automáticamente enlace simbólico a Xcodes.app"; "AutomaticallyCreateSymbolicLinkDescription" = "Al activar/seleccionar una versión de Xcode, intentará crear un enlace simbólico llamado Xcode.app en el directorio de instalación."; "DataSource" = "Fuente de datos"; -"DataSourceDescription" = "La fuente de datos de Apple la extrae de el sitio web de Apple Developer. Siempre mostrará los últimos lanzamientos disponibles, pero es más frágil.\n\nLos lanzamientos de Xcode es una lista no oficial de lanzamientos de Xcode. Se proporciona como datos bien estructurados, contiene información adicional que no está disponible fácilmente en Apple y es menos probable que se rompa si Apple rediseña su sitio web para desarrolladores."; +"DataSourceDescription" = "La fuente de datos de Apple la extrae de el sitio web de Apple Developer. Siempre mostrará los últimos lanzamientos disponibles, pero es más frágil.\n\nXcode Releases es una lista no oficial de lanzamientos de Xcode. Se proporciona como datos bien estructurados, contiene información adicional que no está disponible fácilmente en Apple y es menos probable que se rompa si Apple rediseña su sitio web para desarrolladores."; "Downloader" = "Downloader"; "DownloaderDescription" = "aria2 usa hasta 16 conexiones para descargar Xcode de 3 a 5 veces más rápido que URLSession. Se incluye como un ejecutable junto con su código fuente dentro de Xcodes para cumplir con su licencia GPLv2.\n\nURLSession es la API predeterminada de Apple para realizar solicitudes de URL."; "PrivilegedHelper" = "Asistente privilegiado"; From 8786b403cb5f55c04679db66e9ad3887be392e33 Mon Sep 17 00:00:00 2001 From: Matt Kiazyk Date: Fri, 22 Apr 2022 08:47:27 -0500 Subject: [PATCH 13/16] Fixes that were on the english translation, moved over --- Xcodes/Resources/es.lproj/Localizable.strings | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Xcodes/Resources/es.lproj/Localizable.strings b/Xcodes/Resources/es.lproj/Localizable.strings index 24493c0..38e88ef 100644 --- a/Xcodes/Resources/es.lproj/Localizable.strings +++ b/Xcodes/Resources/es.lproj/Localizable.strings @@ -39,8 +39,8 @@ "NoXcodeSelected" = "No se ha seleccionado un Xcode"; // Installation Steps -"InstallationStepDescription" = "Paso %@ de %@: %@"; -"DownloadingPercentDescription" = "Descargando: %@% completado"; +"InstallationStepDescription" = "Paso %d de %d: %@"; +"DownloadingPercentDescription" = "Descargando: %d%% completado"; "StopInstallation" = "Detener Instalación"; "DownloadingError" = "No se encontró información de descarga"; @@ -106,10 +106,10 @@ "SignOut" = "Cerrar Sesión"; // SMS/2FA -"DigitCodeDescription" = "Ingrese el código de %@ dígitos de uno de sus dispositivos de confianza:"; +"DigitCodeDescription" = "Ingrese el código de %d dígitos de uno de sus dispositivos de confianza:"; "SendSMS" = "Enviar SMS"; -"EnterDigitCodeDescription" = "Ingrese el código de dígito %@ enviado a %@: "; -"SelectTrustedPhone" = "Selecciona un número de teléfono de confianza para recibir un código de %@ dígitos por SMS:"; +"EnterDigitCodeDescription" = "Ingrese el código de dígito %d enviado a %@: "; +"SelectTrustedPhone" = "Selecciona un número de teléfono de confianza para recibir un código de %d dígitos por SMS:"; "NoTrustedPhones" = "Su cuenta no tiene números de teléfono de confianza, pero son necesarios para la autenticación de dos factores.\n\nVer https://support.apple.com/en-ca/HT204915."; // MainWindow From 11f7cae14f90b4d62987bb22bbaf80faec7ec1dc Mon Sep 17 00:00:00 2001 From: Matt Kiazyk Date: Fri, 22 Apr 2022 09:30:18 -0500 Subject: [PATCH 14/16] Add "OK" to localizable strings --- Xcodes/Frontend/MainWindow.swift | 2 +- Xcodes/Resources/en.lproj/Localizable.strings | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/Xcodes/Frontend/MainWindow.swift b/Xcodes/Frontend/MainWindow.swift index 36584e7..4b2c26d 100644 --- a/Xcodes/Frontend/MainWindow.swift +++ b/Xcodes/Frontend/MainWindow.swift @@ -147,7 +147,7 @@ struct MainWindow: View { title: Text(title), message: Text(message), dismissButton: .default( - Text("Ok"), + Text("OK"), action: { appState.presentedAlert = nil } ) ) diff --git a/Xcodes/Resources/en.lproj/Localizable.strings b/Xcodes/Resources/en.lproj/Localizable.strings index 4f986a4..15dad55 100644 --- a/Xcodes/Resources/en.lproj/Localizable.strings +++ b/Xcodes/Resources/en.lproj/Localizable.strings @@ -23,6 +23,7 @@ "Next" = "Next"; "Continue" = "Continue"; "Close" = "Close"; +"OK" = "OK"; // Info Pane "IdenticalBuilds" = "Identical Builds"; From dbdc7cf76d3ece96432627373914b7805909b9e1 Mon Sep 17 00:00:00 2001 From: Matt Kiazyk Date: Fri, 22 Apr 2022 09:31:19 -0500 Subject: [PATCH 15/16] Add OK to spanish --- Xcodes/Resources/es.lproj/Localizable.strings | 1 + 1 file changed, 1 insertion(+) diff --git a/Xcodes/Resources/es.lproj/Localizable.strings b/Xcodes/Resources/es.lproj/Localizable.strings index 38e88ef..37234be 100644 --- a/Xcodes/Resources/es.lproj/Localizable.strings +++ b/Xcodes/Resources/es.lproj/Localizable.strings @@ -23,6 +23,7 @@ "Next" = "Siguiente"; "Continue" = "Continuar"; "Close" = "Cerrar"; +"OK" = "Aceptar"; // Info Pane "IdenticalBuilds" = "Compilaciones Idénticas"; From c64ff9f6ed1ab3733dfa7ed571e907e77e988866 Mon Sep 17 00:00:00 2001 From: Matt Kiazyk Date: Sat, 23 Apr 2022 22:18:30 -0500 Subject: [PATCH 16/16] Update readme --- README.md | 19 ++++++++++++++++--- .../xcshareddata/xcschemes/Xcodes.xcscheme | 2 +- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 6e8fb7b..f883ff5 100644 --- a/README.md +++ b/README.md @@ -22,9 +22,22 @@ _If you're looking for a command-line version of Xcodes.app, try [`xcodes`](http - Thanks to the wonderful work of [https://github.com/saagarjha/unxip](https://github.com/saagarjha/unxip), turn on the experiment to increase your unxipping time by up to 70%! More can be found on his repo, but bugs, high memory may occur if used. -![](experiment_light.png#gh-light-mode-only) -![](experiment_dark.png#gh-dark-mode-only) +![](experiment_light.jpg#gh-light-mode-only) +![](experiment_dark.jpg#gh-dark-mode-only) +## Localization + +Xcodes supports localization in several languages. + +The following languages are supported because of the following community users! + +||| +|-|-| +|French|[@dompepin](https://github.com/dompepin)| +|Spanish|[@cesartru88](https://github.com/cesartru88)| +|Russian|[@alexmazlov](https://github.com/alexmazlov)| + +Want to add more languages? Simply create a PR with the updated strings file. ## Installation Xcodes.app runs on macOS Big Sur 11.0 or later. @@ -44,7 +57,7 @@ brew install --cask xcodes ## Development -You'll need macOS 11 Big Sur and Xcode 12 in order to build and run Xcodes.app. +You'll need macOS 12 Big Sur and Xcode 13 in order to build and run Xcodes.app. If you aren't a Robots and Pencils employee you'll need to change the CODE_SIGNING_SUBJECT_ORGANIZATIONAL_UNIT build setting to your Apple Developer team ID in order for code signing validation to succeed between the main app and the privileged helper. diff --git a/Xcodes.xcodeproj/xcshareddata/xcschemes/Xcodes.xcscheme b/Xcodes.xcodeproj/xcshareddata/xcschemes/Xcodes.xcscheme index 71c4833..f0379f7 100644 --- a/Xcodes.xcodeproj/xcshareddata/xcschemes/Xcodes.xcscheme +++ b/Xcodes.xcodeproj/xcshareddata/xcschemes/Xcodes.xcscheme @@ -44,7 +44,7 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" - language = "ru" + language = "en" launchStyle = "0" useCustomWorkingDirectory = "NO" ignoresPersistentStateOnLaunch = "NO"