Add french localization support for beta testing
This commit is contained in:
parent
d87ddbcd8c
commit
fcd45115a8
@ -12,8 +12,6 @@
|
||||
7E2811172733027F0063DC78 /* TokiDictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2811142733027F0063DC78 /* TokiDictionary.swift */; };
|
||||
7E2811182733027F0063DC78 /* TokiJSONLoader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2811152733027F0063DC78 /* TokiJSONLoader.swift */; };
|
||||
7E2811192733027F0063DC78 /* TokiPartOfSpeech.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2811162733027F0063DC78 /* TokiPartOfSpeech.swift */; };
|
||||
7E28111C273302860063DC78 /* toki-partsofspeech.json in Resources */ = {isa = PBXBuildFile; fileRef = 7E28111A273302860063DC78 /* toki-partsofspeech.json */; };
|
||||
7E28111D273302860063DC78 /* toki-dictionary.json in Resources */ = {isa = PBXBuildFile; fileRef = 7E28111B273302860063DC78 /* toki-dictionary.json */; };
|
||||
7E28112227330DD30063DC78 /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E28112127330DD20063DC78 /* Constants.swift */; };
|
||||
7E449775275AA0600016B6DC /* WidgetKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E449774275AA0600016B6DC /* WidgetKit.framework */; };
|
||||
7E449777275AA0600016B6DC /* SwiftUI.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7E449776275AA0600016B6DC /* SwiftUI.framework */; };
|
||||
@ -27,7 +25,6 @@
|
||||
7E44978A275ABF5C0016B6DC /* TokiPartOfSpeech.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2811162733027F0063DC78 /* TokiPartOfSpeech.swift */; };
|
||||
7E44978B275ABF5C0016B6DC /* TokiDictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E2811142733027F0063DC78 /* TokiDictionary.swift */; };
|
||||
7E44978C275ABF690016B6DC /* TokiDictionaryViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E20D6002734466800D75B9A /* TokiDictionaryViewModel.swift */; };
|
||||
7E44978D275AC4AE0016B6DC /* toki-dictionary.json in Resources */ = {isa = PBXBuildFile; fileRef = 7E28111B273302860063DC78 /* toki-dictionary.json */; };
|
||||
7E716B3E273986E5009E2CF6 /* TokiLesson.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E716B3D273986E5009E2CF6 /* TokiLesson.swift */; };
|
||||
7E716B4227398CDF009E2CF6 /* FlashCardLessonsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E716B4127398CDF009E2CF6 /* FlashCardLessonsView.swift */; };
|
||||
7E716B4427398D3D009E2CF6 /* FlashCardLessonsViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E716B4327398D3D009E2CF6 /* FlashCardLessonsViewModel.swift */; };
|
||||
@ -40,8 +37,11 @@
|
||||
7E943A28273211C300E7DDF4 /* Preview Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 7E943A27273211C300E7DDF4 /* Preview Assets.xcassets */; };
|
||||
7E943A2A273211C300E7DDF4 /* Persistence.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E943A29273211C300E7DDF4 /* Persistence.swift */; };
|
||||
7E943A2D273211C300E7DDF4 /* Toki_Trainer.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 7E943A2B273211C300E7DDF4 /* Toki_Trainer.xcdatamodeld */; };
|
||||
7EBAE6AA273D65FD00BCFA09 /* toki-lessons.json in Resources */ = {isa = PBXBuildFile; fileRef = 7EBAE6A9273D65FD00BCFA09 /* toki-lessons.json */; };
|
||||
7EF546162737B8FB00537AE6 /* FlashCardResultsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7EF546152737B8FA00537AE6 /* FlashCardResultsView.swift */; };
|
||||
C13FCE342A9D170B00E8976B /* toki-dictionary.json in Resources */ = {isa = PBXBuildFile; fileRef = C13FCE372A9D170B00E8976B /* toki-dictionary.json */; };
|
||||
C13FCE352A9D170B00E8976B /* toki-dictionary.json in Resources */ = {isa = PBXBuildFile; fileRef = C13FCE372A9D170B00E8976B /* toki-dictionary.json */; };
|
||||
C13FCE382A9D171300E8976B /* toki-lessons.json in Resources */ = {isa = PBXBuildFile; fileRef = C13FCE3A2A9D171300E8976B /* toki-lessons.json */; };
|
||||
C13FCE3B2A9D171600E8976B /* toki-partsofspeech.json in Resources */ = {isa = PBXBuildFile; fileRef = C13FCE3D2A9D171600E8976B /* toki-partsofspeech.json */; };
|
||||
E1A8B364290B905600B53385 /* ViewExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1A8B363290B905600B53385 /* ViewExtensions.swift */; };
|
||||
E1D79AE328EC396200A104BF /* DictionaryView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1D79AE228EC396200A104BF /* DictionaryView.swift */; };
|
||||
E1D79AE528F1914600A104BF /* TranslatorView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E1D79AE428F1914600A104BF /* TranslatorView.swift */; };
|
||||
@ -79,8 +79,6 @@
|
||||
7E2811142733027F0063DC78 /* TokiDictionary.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TokiDictionary.swift; sourceTree = "<group>"; };
|
||||
7E2811152733027F0063DC78 /* TokiJSONLoader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TokiJSONLoader.swift; sourceTree = "<group>"; };
|
||||
7E2811162733027F0063DC78 /* TokiPartOfSpeech.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TokiPartOfSpeech.swift; sourceTree = "<group>"; };
|
||||
7E28111A273302860063DC78 /* toki-partsofspeech.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "toki-partsofspeech.json"; sourceTree = "<group>"; };
|
||||
7E28111B273302860063DC78 /* toki-dictionary.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "toki-dictionary.json"; sourceTree = "<group>"; };
|
||||
7E28112127330DD20063DC78 /* Constants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = "<group>"; };
|
||||
7E449772275AA0600016B6DC /* Toki Trainer WidgetsExtension.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = "Toki Trainer WidgetsExtension.appex"; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
7E449774275AA0600016B6DC /* WidgetKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WidgetKit.framework; path = System/Library/Frameworks/WidgetKit.framework; sourceTree = SDKROOT; };
|
||||
@ -103,8 +101,16 @@
|
||||
7E943A27273211C300E7DDF4 /* Preview Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = "Preview Assets.xcassets"; sourceTree = "<group>"; };
|
||||
7E943A29273211C300E7DDF4 /* Persistence.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Persistence.swift; sourceTree = "<group>"; };
|
||||
7E943A2C273211C300E7DDF4 /* Toki_Trainer.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = Toki_Trainer.xcdatamodel; sourceTree = "<group>"; };
|
||||
7EBAE6A9273D65FD00BCFA09 /* toki-lessons.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "toki-lessons.json"; sourceTree = "<group>"; };
|
||||
7EF546152737B8FA00537AE6 /* FlashCardResultsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FlashCardResultsView.swift; sourceTree = "<group>"; };
|
||||
C13FCE362A9D170B00E8976B /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = Base; path = "Base.lproj/toki-dictionary.json"; sourceTree = "<group>"; };
|
||||
C13FCE392A9D171300E8976B /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = Base; path = "Base.lproj/toki-lessons.json"; sourceTree = "<group>"; };
|
||||
C13FCE3C2A9D171600E8976B /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = Base; path = "Base.lproj/toki-partsofspeech.json"; sourceTree = "<group>"; };
|
||||
C13FCE3E2A9D173000E8976B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = en; path = "en.lproj/toki-partsofspeech.json"; sourceTree = "<group>"; };
|
||||
C13FCE3F2A9D173A00E8976B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = en; path = "en.lproj/toki-lessons.json"; sourceTree = "<group>"; };
|
||||
C13FCE402A9D173F00E8976B /* en */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = en; path = "en.lproj/toki-dictionary.json"; sourceTree = "<group>"; };
|
||||
C13FCE412A9D181B00E8976B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = fr; path = "fr.lproj/toki-dictionary.json"; sourceTree = "<group>"; };
|
||||
C13FCE422A9D181B00E8976B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = fr; path = "fr.lproj/toki-lessons.json"; sourceTree = "<group>"; };
|
||||
C13FCE432A9D181B00E8976B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.json; name = fr; path = "fr.lproj/toki-partsofspeech.json"; sourceTree = "<group>"; };
|
||||
E1A8B363290B905600B53385 /* ViewExtensions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewExtensions.swift; sourceTree = "<group>"; };
|
||||
E1D79AE228EC396200A104BF /* DictionaryView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DictionaryView.swift; sourceTree = "<group>"; };
|
||||
E1D79AE428F1914600A104BF /* TranslatorView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TranslatorView.swift; sourceTree = "<group>"; };
|
||||
@ -170,9 +176,9 @@
|
||||
7E28111E273302890063DC78 /* JSON Data */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
7E28111B273302860063DC78 /* toki-dictionary.json */,
|
||||
7EBAE6A9273D65FD00BCFA09 /* toki-lessons.json */,
|
||||
7E28111A273302860063DC78 /* toki-partsofspeech.json */,
|
||||
C13FCE372A9D170B00E8976B /* toki-dictionary.json */,
|
||||
C13FCE3A2A9D171300E8976B /* toki-lessons.json */,
|
||||
C13FCE3D2A9D171600E8976B /* toki-partsofspeech.json */,
|
||||
);
|
||||
path = "JSON Data";
|
||||
sourceTree = "<group>";
|
||||
@ -334,6 +340,7 @@
|
||||
knownRegions = (
|
||||
en,
|
||||
Base,
|
||||
fr,
|
||||
);
|
||||
mainGroup = 7E943A14273211C200E7DDF4;
|
||||
productRefGroup = 7E943A1E273211C200E7DDF4 /* Products */;
|
||||
@ -351,7 +358,7 @@
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
7E44978D275AC4AE0016B6DC /* toki-dictionary.json in Resources */,
|
||||
C13FCE352A9D170B00E8976B /* toki-dictionary.json in Resources */,
|
||||
7E44977D275AA0620016B6DC /* Assets.xcassets in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
@ -360,11 +367,11 @@
|
||||
isa = PBXResourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
7EBAE6AA273D65FD00BCFA09 /* toki-lessons.json in Resources */,
|
||||
C13FCE382A9D171300E8976B /* toki-lessons.json in Resources */,
|
||||
7E943A28273211C300E7DDF4 /* Preview Assets.xcassets in Resources */,
|
||||
7E943A25273211C300E7DDF4 /* Assets.xcassets in Resources */,
|
||||
7E28111D273302860063DC78 /* toki-dictionary.json in Resources */,
|
||||
7E28111C273302860063DC78 /* toki-partsofspeech.json in Resources */,
|
||||
C13FCE342A9D170B00E8976B /* toki-dictionary.json in Resources */,
|
||||
C13FCE3B2A9D171600E8976B /* toki-partsofspeech.json in Resources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@ -425,6 +432,39 @@
|
||||
};
|
||||
/* End PBXTargetDependency section */
|
||||
|
||||
/* Begin PBXVariantGroup section */
|
||||
C13FCE372A9D170B00E8976B /* toki-dictionary.json */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
C13FCE362A9D170B00E8976B /* Base */,
|
||||
C13FCE402A9D173F00E8976B /* en */,
|
||||
C13FCE412A9D181B00E8976B /* fr */,
|
||||
);
|
||||
name = "toki-dictionary.json";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C13FCE3A2A9D171300E8976B /* toki-lessons.json */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
C13FCE392A9D171300E8976B /* Base */,
|
||||
C13FCE3F2A9D173A00E8976B /* en */,
|
||||
C13FCE422A9D181B00E8976B /* fr */,
|
||||
);
|
||||
name = "toki-lessons.json";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
C13FCE3D2A9D171600E8976B /* toki-partsofspeech.json */ = {
|
||||
isa = PBXVariantGroup;
|
||||
children = (
|
||||
C13FCE3C2A9D171600E8976B /* Base */,
|
||||
C13FCE3E2A9D173000E8976B /* en */,
|
||||
C13FCE432A9D181B00E8976B /* fr */,
|
||||
);
|
||||
name = "toki-partsofspeech.json";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXVariantGroup section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
7E449785275AA0620016B6DC /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
@ -484,6 +524,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++17";
|
||||
@ -545,6 +586,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++17";
|
||||
@ -609,6 +651,8 @@
|
||||
DEVELOPMENT_TEAM = W9ASV855X5;
|
||||
ENABLE_PREVIEWS = YES;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
INFOPLIST_KEY_CFBundleDisplayName = "Toki Trainer";
|
||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education";
|
||||
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
|
||||
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
||||
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
|
||||
@ -618,7 +662,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.1;
|
||||
MARKETING_VERSION = 1.2;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "info.maddie.Toki-Trainer";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
@ -640,6 +684,8 @@
|
||||
DEVELOPMENT_TEAM = W9ASV855X5;
|
||||
ENABLE_PREVIEWS = YES;
|
||||
GENERATE_INFOPLIST_FILE = YES;
|
||||
INFOPLIST_KEY_CFBundleDisplayName = "Toki Trainer";
|
||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.education";
|
||||
INFOPLIST_KEY_UIApplicationSceneManifest_Generation = YES;
|
||||
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
|
||||
INFOPLIST_KEY_UILaunchScreen_Generation = YES;
|
||||
@ -649,7 +695,7 @@
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
MARKETING_VERSION = 1.1;
|
||||
MARKETING_VERSION = 1.2;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "info.maddie.Toki-Trainer";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_EMIT_LOC_STRINGS = YES;
|
||||
|
@ -0,0 +1,113 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1430"
|
||||
wasCreatedForAppExtension = "YES"
|
||||
version = "2.0">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "7E449771275AA0600016B6DC"
|
||||
BuildableName = "Toki Trainer WidgetsExtension.appex"
|
||||
BlueprintName = "Toki Trainer WidgetsExtension"
|
||||
ReferencedContainer = "container:Toki Trainer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "7E943A1C273211C200E7DDF4"
|
||||
BuildableName = "Toki Trainer.app"
|
||||
BlueprintName = "Toki Trainer"
|
||||
ReferencedContainer = "container:Toki Trainer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
shouldAutocreateTestPlan = "YES">
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = ""
|
||||
selectedLauncherIdentifier = "Xcode.IDEFoundation.Launcher.PosixSpawn"
|
||||
launchStyle = "0"
|
||||
askForAppToLaunch = "Yes"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES"
|
||||
launchAutomaticallySubstyle = "2">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "7E943A1C273211C200E7DDF4"
|
||||
BuildableName = "Toki Trainer.app"
|
||||
BlueprintName = "Toki Trainer"
|
||||
ReferencedContainer = "container:Toki Trainer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
<EnvironmentVariables>
|
||||
<EnvironmentVariable
|
||||
key = "_XCWidgetKind"
|
||||
value = ""
|
||||
isEnabled = "NO">
|
||||
</EnvironmentVariable>
|
||||
<EnvironmentVariable
|
||||
key = "_XCWidgetDefaultView"
|
||||
value = "timeline"
|
||||
isEnabled = "NO">
|
||||
</EnvironmentVariable>
|
||||
<EnvironmentVariable
|
||||
key = "_XCWidgetFamily"
|
||||
value = "medium"
|
||||
isEnabled = "NO">
|
||||
</EnvironmentVariable>
|
||||
</EnvironmentVariables>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
askForAppToLaunch = "Yes"
|
||||
launchAutomaticallySubstyle = "2">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "7E943A1C273211C200E7DDF4"
|
||||
BuildableName = "Toki Trainer.app"
|
||||
BlueprintName = "Toki Trainer"
|
||||
ReferencedContainer = "container:Toki Trainer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
@ -0,0 +1,77 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1430"
|
||||
version = "1.7">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "7E943A1C273211C200E7DDF4"
|
||||
BuildableName = "Toki Trainer.app"
|
||||
BlueprintName = "Toki Trainer"
|
||||
ReferencedContainer = "container:Toki Trainer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
shouldAutocreateTestPlan = "YES">
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "7E943A1C273211C200E7DDF4"
|
||||
BuildableName = "Toki Trainer.app"
|
||||
BlueprintName = "Toki Trainer"
|
||||
ReferencedContainer = "container:Toki Trainer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "7E943A1C273211C200E7DDF4"
|
||||
BuildableName = "Toki Trainer.app"
|
||||
BlueprintName = "Toki Trainer"
|
||||
ReferencedContainer = "container:Toki Trainer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
@ -0,0 +1,78 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1430"
|
||||
version = "1.7">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "7E943A1C273211C200E7DDF4"
|
||||
BuildableName = "Toki Trainer.app"
|
||||
BlueprintName = "Toki Trainer"
|
||||
ReferencedContainer = "container:Toki Trainer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
shouldAutocreateTestPlan = "YES">
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
language = "fr"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "7E943A1C273211C200E7DDF4"
|
||||
BuildableName = "Toki Trainer.app"
|
||||
BlueprintName = "Toki Trainer"
|
||||
ReferencedContainer = "container:Toki Trainer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
<BuildableProductRunnable
|
||||
runnableDebuggingMode = "0">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "7E943A1C273211C200E7DDF4"
|
||||
BuildableName = "Toki Trainer.app"
|
||||
BlueprintName = "Toki Trainer"
|
||||
ReferencedContainer = "container:Toki Trainer.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildableProductRunnable>
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
@ -0,0 +1,37 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>SchemeUserState</key>
|
||||
<dict>
|
||||
<key>Toki Trainer French.xcscheme</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>0</integer>
|
||||
</dict>
|
||||
<key>Toki Trainer WidgetsExtension.xcscheme_^#shared#^_</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>2</integer>
|
||||
</dict>
|
||||
<key>Toki Trainer.xcscheme_^#shared#^_</key>
|
||||
<dict>
|
||||
<key>orderHint</key>
|
||||
<integer>1</integer>
|
||||
</dict>
|
||||
</dict>
|
||||
<key>SuppressBuildableAutocreation</key>
|
||||
<dict>
|
||||
<key>7E449771275AA0600016B6DC</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
<key>7E943A1C273211C200E7DDF4</key>
|
||||
<dict>
|
||||
<key>primary</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</dict>
|
||||
</dict>
|
||||
</plist>
|
1751
Toki Trainer/JSON Data/en.lproj/toki-dictionary.json
Normal file
1751
Toki Trainer/JSON Data/en.lproj/toki-dictionary.json
Normal file
File diff suppressed because it is too large
Load Diff
1714
Toki Trainer/JSON Data/en.lproj/toki-lessons.json
Normal file
1714
Toki Trainer/JSON Data/en.lproj/toki-lessons.json
Normal file
File diff suppressed because it is too large
Load Diff
46
Toki Trainer/JSON Data/en.lproj/toki-partsofspeech.json
Normal file
46
Toki Trainer/JSON Data/en.lproj/toki-partsofspeech.json
Normal file
@ -0,0 +1,46 @@
|
||||
[
|
||||
{
|
||||
"pos": "n",
|
||||
"definition": "head noun"
|
||||
},
|
||||
{
|
||||
"pos": "mod",
|
||||
"definition": "modifier (adjective or adverb)"
|
||||
},
|
||||
{
|
||||
"pos": "sep",
|
||||
"definition": "separator"
|
||||
},
|
||||
{
|
||||
"pos": "vt",
|
||||
"definition": "verb, transitive (normally used with e)"
|
||||
},
|
||||
{
|
||||
"pos": "vi",
|
||||
"definition": "verb, intransitive"
|
||||
},
|
||||
{
|
||||
"pos": "interj",
|
||||
"definition": "interjection"
|
||||
},
|
||||
{
|
||||
"pos": "prep",
|
||||
"definition": "quasi-preposition"
|
||||
},
|
||||
{
|
||||
"pos": "conj",
|
||||
"definition": "conjunction"
|
||||
},
|
||||
{
|
||||
"pos": "kama",
|
||||
"definition": "compound verb preceded by kama"
|
||||
},
|
||||
{
|
||||
"pos": "cont",
|
||||
"definition": "context word used before la"
|
||||
},
|
||||
{
|
||||
"pos": "oth",
|
||||
"definition": "special, other word"
|
||||
}
|
||||
]
|
1651
Toki Trainer/JSON Data/fr.lproj/toki-dictionary.json
Normal file
1651
Toki Trainer/JSON Data/fr.lproj/toki-dictionary.json
Normal file
File diff suppressed because it is too large
Load Diff
1602
Toki Trainer/JSON Data/fr.lproj/toki-lessons.json
Normal file
1602
Toki Trainer/JSON Data/fr.lproj/toki-lessons.json
Normal file
File diff suppressed because it is too large
Load Diff
46
Toki Trainer/JSON Data/fr.lproj/toki-partsofspeech.json
Normal file
46
Toki Trainer/JSON Data/fr.lproj/toki-partsofspeech.json
Normal file
@ -0,0 +1,46 @@
|
||||
[
|
||||
{
|
||||
"pos": "n",
|
||||
"definition": "nom principal"
|
||||
},
|
||||
{
|
||||
"pos": "mod",
|
||||
"definition": "modificateur (adjectif ou adverbe)"
|
||||
},
|
||||
{
|
||||
"pos": "sep",
|
||||
"definition": "séparateur"
|
||||
},
|
||||
{
|
||||
"pos": "vt",
|
||||
"definition": "verbe transitif (généralement utilisé avec \"e\")"
|
||||
},
|
||||
{
|
||||
"pos": "vi",
|
||||
"definition": "verbe intransitif"
|
||||
},
|
||||
{
|
||||
"pos": "interj",
|
||||
"definition": "interjection"
|
||||
},
|
||||
{
|
||||
"pos": "prep",
|
||||
"definition": "quasi-préposition"
|
||||
},
|
||||
{
|
||||
"pos": "conj",
|
||||
"definition": "conjonction"
|
||||
},
|
||||
{
|
||||
"pos": "kama",
|
||||
"definition": "verbe composé précédé de \"kama\""
|
||||
},
|
||||
{
|
||||
"pos": "cont",
|
||||
"definition": "mot de contexte utilisé avant \"la\""
|
||||
},
|
||||
{
|
||||
"pos": "oth",
|
||||
"definition": "mot spécial, autre"
|
||||
}
|
||||
]
|
Loading…
Reference in New Issue
Block a user