spiegel-keyman/mac/Keyman4MacIM/Keyman4MacIM.xcodeproj/project.pbxproj
Eberhard Beilharz 4d81589f48
maint(common): use unique names for Keyman version variables
Previously the builder scripts defined a readonly `VERSION` environment
variable for the Keyman version. That caused problems when another
(external) script tried to define a `VERSION` variable. We encountered
this problem when trying to move the TC build steps of a configuration
into a single script (#13399) when we tried to source `~/.nvm/nvm.sh`.

This change uses a Keyman specific prefix for the version variables and
renames `VERSION` → `KEYMAN_VERSION` etc. Unfortunately these variables
are used in a lot of places, so this turned out to be a bit of a yak
shave.

Test-bot: skip
2025-05-07 18:46:51 +02:00

1561 lines
108 KiB
Text

// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 54;
objects = {
/* Begin PBXBuildFile section */
29015ABD2C58D86F00CCBB94 /* KMDataRepository.m in Sources */ = {isa = PBXBuildFile; fileRef = 29015ABC2C58D86F00CCBB94 /* KMDataRepository.m */; };
290BC680274B9DB1005CD1C3 /* KMPackageInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 290BC67F274B9DB1005CD1C3 /* KMPackageInfo.m */; };
290BC75E274F3FD7005CD1C3 /* KMKeyboardInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 290BC75D274F3FD7005CD1C3 /* KMKeyboardInfo.m */; };
2915DC512BFE35DB0051FC52 /* KMLogs.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B4A0D32BF7675A00682049 /* KMLogs.m */; };
293EA3E627140D8100545EED /* KMAboutWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 293EA3E827140D8100545EED /* KMAboutWindowController.xib */; };
293EA3EB27140DEC00545EED /* preferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = 293EA3ED27140DEC00545EED /* preferences.xib */; };
293EA3F427181FDA00545EED /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = 293EA3F627181FDA00545EED /* Localizable.strings */; };
296105232C8E91C7007BF6B7 /* KMInputMethodLifecycle.m in Sources */ = {isa = PBXBuildFile; fileRef = 296105222C8E91C7007BF6B7 /* KMInputMethodLifecycle.m */; };
296FE2FC275DD21600F46898 /* KMPackageReader.m in Sources */ = {isa = PBXBuildFile; fileRef = 296FE2FB275DD21600F46898 /* KMPackageReader.m */; };
297A501728DF4D360074EB1B /* PrivacyWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 297A501228DF4D360074EB1B /* PrivacyWindowController.m */; };
297A501828DF4D360074EB1B /* PrivacyWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 297A501328DF4D360074EB1B /* PrivacyWindowController.xib */; };
297A501928DF4D360074EB1B /* PrivacyConsent.m in Sources */ = {isa = PBXBuildFile; fileRef = 297A501628DF4D360074EB1B /* PrivacyConsent.m */; };
298D09F72A1F4533006B9DFE /* TextApiCompliance.m in Sources */ = {isa = PBXBuildFile; fileRef = 298D09F52A1F4533006B9DFE /* TextApiCompliance.m */; };
2992F41C2A28479400E08929 /* KeySender.m in Sources */ = {isa = PBXBuildFile; fileRef = 299ABD6F29ECE75B00AA5948 /* KeySender.m */; };
2992F41E2A2847AF00E08929 /* PrivacyConsent.m in Sources */ = {isa = PBXBuildFile; fileRef = 297A501628DF4D360074EB1B /* PrivacyConsent.m */; };
2992F41F2A2847C900E08929 /* TextApiCompliance.m in Sources */ = {isa = PBXBuildFile; fileRef = 298D09F52A1F4533006B9DFE /* TextApiCompliance.m */; };
2992F4202A28482800E08929 /* PrivacyWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 297A501228DF4D360074EB1B /* PrivacyWindowController.m */; };
2999C69929D3E4CE006366F5 /* InputMethodTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 2999C69829D3E4CE006366F5 /* InputMethodTests.m */; };
299ABD7129ECE75B00AA5948 /* KeySender.m in Sources */ = {isa = PBXBuildFile; fileRef = 299ABD6F29ECE75B00AA5948 /* KeySender.m */; };
299B5E2029126CA20070841D /* keyman-icon@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 299B5E1E29126CA20070841D /* keyman-icon@2x.png */; };
299B5E2129126CA20070841D /* keyman-icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 299B5E1F29126CA20070841D /* keyman-icon.png */; };
29B42A572728339900EDD5D3 /* KMInfoWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 29B42A592728339900EDD5D3 /* KMInfoWindowController.xib */; };
29B42A602728343B00EDD5D3 /* KMKeyboardHelpWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 29B42A622728343B00EDD5D3 /* KMKeyboardHelpWindowController.xib */; };
29B4A0D52BF7675A00682049 /* KMLogs.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B4A0D32BF7675A00682049 /* KMLogs.m */; };
29B6FB732BC39DD60074BF7F /* TextApiComplianceTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B6FB722BC39DD60074BF7F /* TextApiComplianceTests.m */; };
29BE9D872CA3C21900B67DE7 /* KMModifierMapping.m in Sources */ = {isa = PBXBuildFile; fileRef = 29BE9D862CA3C21900B67DE7 /* KMModifierMapping.m */; };
29C1CDE22C5B2F8B003C23BB /* KMSettingsRepository.m in Sources */ = {isa = PBXBuildFile; fileRef = D861B03E2C5747F70003675E /* KMSettingsRepository.m */; };
29C1CDE32C5B2F8B003C23BB /* KMDataRepository.m in Sources */ = {isa = PBXBuildFile; fileRef = 29015ABC2C58D86F00CCBB94 /* KMDataRepository.m */; };
29DBBF672D35053E00D8E33C /* KMSentryHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 29DBBF662D35053E00D8E33C /* KMSentryHelper.m */; };
29DD5F442CFEF88000683388 /* SILAndikaV1RGB.png in Resources */ = {isa = PBXBuildFile; fileRef = 29DD5F432CFEF88000683388 /* SILAndikaV1RGB.png */; };
29E67D042D3E4A86003CDE8F /* KMSentryHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 29DBBF662D35053E00D8E33C /* KMSentryHelper.m */; };
37A245C12565DFA6000BBF92 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 37A245C02565DFA6000BBF92 /* Assets.xcassets */; };
37AE5C9D239A7B770086CC7C /* qrcode.min.js in Resources */ = {isa = PBXBuildFile; fileRef = 37AE5C9C239A7B770086CC7C /* qrcode.min.js */; };
37C2B0CB25FF2C350092E16A /* Help in Resources */ = {isa = PBXBuildFile; fileRef = 37C2B0CA25FF2C340092E16A /* Help */; };
37CA0FD12746010300266259 /* OCMock.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 37CA0FCE2745DCFE00266259 /* OCMock.xcframework */; };
9800EC5A1C02940300BF0FB5 /* keyman-for-mac-os-license.html in Resources */ = {isa = PBXBuildFile; fileRef = 9800EC591C02940300BF0FB5 /* keyman-for-mac-os-license.html */; };
9803C9D81B0EFB3B0082A6F9 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9803C9D71B0EFB3B0082A6F9 /* WebKit.framework */; };
983247281A9EA28F0010B90C /* KeymanEngine4Mac.framework in Copy Files */ = {isa = PBXBuildFile; fileRef = 984C2B211A79DF1B0023F89D /* KeymanEngine4Mac.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
9832472E1A9EABC70010B90C /* KMConfigColumn1CellView.m in Sources */ = {isa = PBXBuildFile; fileRef = 9832472D1A9EABC70010B90C /* KMConfigColumn1CellView.m */; };
983247B21A9EB9690010B90C /* KMConfigColumn3CellView.m in Sources */ = {isa = PBXBuildFile; fileRef = 983247B11A9EB9690010B90C /* KMConfigColumn3CellView.m */; };
9836B3701AE5F11D00780482 /* ioapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 9836B3661AE5F11D00780482 /* ioapi.c */; };
9836B3711AE5F11D00780482 /* mztools.c in Sources */ = {isa = PBXBuildFile; fileRef = 9836B3681AE5F11D00780482 /* mztools.c */; };
9836B3721AE5F11D00780482 /* unzip.c in Sources */ = {isa = PBXBuildFile; fileRef = 9836B36A1AE5F11D00780482 /* unzip.c */; };
9836B3731AE5F11D00780482 /* zip.c in Sources */ = {isa = PBXBuildFile; fileRef = 9836B36C1AE5F11D00780482 /* zip.c */; };
9836B3741AE5F11D00780482 /* ZipArchive.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9836B36F1AE5F11D00780482 /* ZipArchive.mm */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
984B8F441AF1C3D900E096A8 /* OSKWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 984B8F421AF1C3D900E096A8 /* OSKWindowController.m */; };
984B8F451AF1C3D900E096A8 /* OSKWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 984B8F431AF1C3D900E096A8 /* OSKWindowController.xib */; };
984C2B221A79DF1B0023F89D /* KeymanEngine4Mac.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 984C2B211A79DF1B0023F89D /* KeymanEngine4Mac.framework */; settings = {ATTRIBUTES = (Required, ); }; };
9874C3211B536847000BB543 /* info.png in Resources */ = {isa = PBXBuildFile; fileRef = 9874C31E1B536847000BB543 /* info.png */; };
9874C3221B536847000BB543 /* keyman.png in Resources */ = {isa = PBXBuildFile; fileRef = 9874C31F1B536847000BB543 /* keyman.png */; };
9874C3231B536847000BB543 /* SideImage.bmp in Resources */ = {isa = PBXBuildFile; fileRef = 9874C3201B536847000BB543 /* SideImage.bmp */; };
989C9C111A7876DE00A20425 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 989C9C101A7876DE00A20425 /* main.m */; };
989C9C131A7876DE00A20425 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 989C9C121A7876DE00A20425 /* Images.xcassets */; };
989C9C161A7876DE00A20425 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 989C9C141A7876DE00A20425 /* MainMenu.xib */; };
98A778C41A8C53BF00CF809D /* KMInputMethodAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 98A778C31A8C53BF00CF809D /* KMInputMethodAppDelegate.m */; };
98BCD1F61B4E5998004E1AFD /* NSString+SuppMethods.m in Sources */ = {isa = PBXBuildFile; fileRef = 98BCD1F51B4E5998004E1AFD /* NSString+SuppMethods.m */; };
98BF92441BF01CBE0002126A /* KMAboutWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 98BF92421BF01CBE0002126A /* KMAboutWindowController.m */; };
98BF92471BF01D890002126A /* image.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 98BF92461BF01D890002126A /* image.jpg */; };
98BF924F1BF02DC20002126A /* KMBarView.m in Sources */ = {isa = PBXBuildFile; fileRef = 98BF924E1BF02DC20002126A /* KMBarView.m */; };
98BF92521BF03D4D0002126A /* KMAboutBGView.m in Sources */ = {isa = PBXBuildFile; fileRef = 98BF92511BF03D4D0002126A /* KMAboutBGView.m */; };
98BF92541BF040A50002126A /* title.png in Resources */ = {isa = PBXBuildFile; fileRef = 98BF92531BF040A50002126A /* title.png */; };
98BF92571BF0431F0002126A /* KMAboutWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 98BF92561BF0431F0002126A /* KMAboutWindow.m */; };
98D6DA7B1A799F0B00B09822 /* InputMethodKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 98D6DA7A1A799F0B00B09822 /* InputMethodKit.framework */; };
98D6DA7E1A799FF400B09822 /* KMInputController.m in Sources */ = {isa = PBXBuildFile; fileRef = 98D6DA7D1A799FF400B09822 /* KMInputController.m */; };
98E2CEA11A92C39C00AE2455 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 98E2CEA01A92C39C00AE2455 /* InfoPlist.strings */; };
98E6729F1B532F5E00DBDE2F /* KMDownloadKBWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 98E6729D1B532F5D00DBDE2F /* KMDownloadKBWindowController.m */; };
98E672A01B532F5E00DBDE2F /* KMDownloadKBWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 98E6729E1B532F5E00DBDE2F /* KMDownloadKBWindowController.xib */; };
98E672A41B532F9900DBDE2F /* KMKeyboardHelpWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 98E672A21B532F9900DBDE2F /* KMKeyboardHelpWindowController.m */; };
98F3C8931A8D739500F675E3 /* KMConfigurationWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 98F3C8911A8D739500F675E3 /* KMConfigurationWindowController.m */; };
98FE105E1B4DE8F400525F54 /* NSWindow+SuppMethods.m in Sources */ = {isa = PBXBuildFile; fileRef = 98FE105D1B4DE8F400525F54 /* NSWindow+SuppMethods.m */; };
98FE10631B4DEE5600525F54 /* KMInfoWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 98FE10611B4DEE5600525F54 /* KMInfoWindowController.m */; };
9A3D6C5D221531B0008785A3 /* KMOSVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = 9A3D6C5C221531B0008785A3 /* KMOSVersion.m */; };
B90818AF7ED302187DE0E026 /* Pods_Keyman.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B644E63217FFE54B91C71C94 /* Pods_Keyman.framework */; };
D861B03F2C5747F70003675E /* KMSettingsRepository.m in Sources */ = {isa = PBXBuildFile; fileRef = D861B03E2C5747F70003675E /* KMSettingsRepository.m */; };
E211769D20E182DD00F8065D /* NoContextTestClient.m in Sources */ = {isa = PBXBuildFile; fileRef = E211769C20E182DD00F8065D /* NoContextTestClient.m */; };
E21176A020E18C5200F8065D /* AppleCompliantTestClient.m in Sources */ = {isa = PBXBuildFile; fileRef = E211769F20E18C5200F8065D /* AppleCompliantTestClient.m */; };
E211CCF620B600A500505C36 /* KeymanEngine4Mac.framework.dSYM in CopyFiles */ = {isa = PBXBuildFile; fileRef = E211CCF520B600A500505C36 /* KeymanEngine4Mac.framework.dSYM */; };
E213601E2142D7C000A043B7 /* keyman-88.png in Resources */ = {isa = PBXBuildFile; fileRef = E213601D2142D7BF00A043B7 /* keyman-88.png */; };
E21799051FC5B7BC00F2D66A /* KMInputMethodEventHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = E21799041FC5B7BC00F2D66A /* KMInputMethodEventHandler.m */; };
E21E645820C04EA8000D6274 /* logo.png in Resources */ = {isa = PBXBuildFile; fileRef = E21E645720C04EA7000D6274 /* logo.png */; };
E240F599202DED740000067D /* KMPackage.m in Sources */ = {isa = PBXBuildFile; fileRef = E240F598202DED740000067D /* KMPackage.m */; };
E2585A7F20DD6C3C00CBB994 /* KMMethodEventHandlerTests.kmx in Resources */ = {isa = PBXBuildFile; fileRef = E2585A7E20DD6C3C00CBB994 /* KMMethodEventHandlerTests.kmx */; };
E2585A8120DD7CF100CBB994 /* TestAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = E2585A8020DD7CF100CBB994 /* TestAppDelegate.m */; };
E27BA9D32020D8BF00D273E7 /* SimpleTest.kmx in Resources */ = {isa = PBXBuildFile; fileRef = E27BA9D22020D8BF00D273E7 /* SimpleTest.kmx */; };
E28914D32024D1B80048E71E /* KeymanEngine4Mac.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 984C2B211A79DF1B0023F89D /* KeymanEngine4Mac.framework */; };
E28914D62024E4010048E71E /* KMInputMethodEventHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = E21799041FC5B7BC00F2D66A /* KMInputMethodEventHandler.m */; };
E28914D72024E6220048E71E /* KeymanEngine4Mac.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 984C2B211A79DF1B0023F89D /* KeymanEngine4Mac.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
E2D5529D20DD8E0200D77CFB /* LegacyTestClient.m in Sources */ = {isa = PBXBuildFile; fileRef = E2D5529C20DD8E0200D77CFB /* LegacyTestClient.m */; };
F9B9814A51575496B5DA2948 /* Pods_KeymanTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A71FD8BA8404531DFBD861B6 /* Pods_KeymanTests.framework */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
E29F22F6201A59B2005EA234 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 989C9C001A7876DE00A20425 /* Project object */;
proxyType = 1;
remoteGlobalIDString = 989C9C071A7876DE00A20425;
remoteInfo = Keyman;
};
/* End PBXContainerItemProxy section */
/* Begin PBXCopyFilesBuildPhase section */
983247261A9EA1DD0010B90C /* Copy Files */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = "";
dstSubfolderSpec = 10;
files = (
983247281A9EA28F0010B90C /* KeymanEngine4Mac.framework in Copy Files */,
);
name = "Copy Files";
runOnlyForDeploymentPostprocessing = 0;
};
E211CCF420B5FE7A00505C36 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 8;
dstPath = "";
dstSubfolderSpec = 16;
files = (
E211CCF620B600A500505C36 /* KeymanEngine4Mac.framework.dSYM in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 1;
};
E27BA9CF202036BA00D273E7 /* CopyFiles */ = {
isa = PBXCopyFilesBuildPhase;
buildActionMask = 2147483647;
dstPath = "";
dstSubfolderSpec = 10;
files = (
E28914D72024E6220048E71E /* KeymanEngine4Mac.framework in CopyFiles */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
29015ABB2C58D86F00CCBB94 /* KMDataRepository.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMDataRepository.h; sourceTree = "<group>"; };
29015ABC2C58D86F00CCBB94 /* KMDataRepository.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KMDataRepository.m; sourceTree = "<group>"; };
2901BA8A292332B3009903EC /* ff-NG */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ff-NG"; path = "ff-NG.lproj/KMAboutWindowController.strings"; sourceTree = "<group>"; };
2901BA8B292332B3009903EC /* ff-NG */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ff-NG"; path = "ff-NG.lproj/preferences.strings"; sourceTree = "<group>"; };
2901BA8C292332B3009903EC /* ff-NG */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ff-NG"; path = "ff-NG.lproj/KMInfoWindowController.strings"; sourceTree = "<group>"; };
2901BA8D292332B3009903EC /* ff-NG */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ff-NG"; path = "ff-NG.lproj/KMKeyboardHelpWindowController.strings"; sourceTree = "<group>"; };
2901BA8E292332B4009903EC /* ff-NG */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ff-NG"; path = "ff-NG.lproj/MainMenu.strings"; sourceTree = "<group>"; };
2901BA8F292332CF009903EC /* ff-NG */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "ff-NG"; path = "ff-NG.lproj/Localizable.strings"; sourceTree = "<group>"; };
290BC67E274B9DB1005CD1C3 /* KMPackageInfo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMPackageInfo.h; sourceTree = "<group>"; };
290BC67F274B9DB1005CD1C3 /* KMPackageInfo.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KMPackageInfo.m; sourceTree = "<group>"; };
290BC75C274F3FD7005CD1C3 /* KMKeyboardInfo.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMKeyboardInfo.h; sourceTree = "<group>"; };
290BC75D274F3FD7005CD1C3 /* KMKeyboardInfo.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KMKeyboardInfo.m; sourceTree = "<group>"; };
293EA3E527140D3A00545EED /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; };
293EA3E727140D8100545EED /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/KMAboutWindowController.xib; sourceTree = "<group>"; };
293EA3EA27140D8E00545EED /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
293EA3EC27140DEC00545EED /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/preferences.xib; sourceTree = "<group>"; };
293EA3EF27140DFA00545EED /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/preferences.strings; sourceTree = "<group>"; };
293EA3F02714158600545EED /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/MainMenu.strings; sourceTree = "<group>"; };
293EA3F527181FDA00545EED /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = "<group>"; };
296105212C8E91C7007BF6B7 /* KMInputMethodLifecycle.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMInputMethodLifecycle.h; sourceTree = "<group>"; };
296105222C8E91C7007BF6B7 /* KMInputMethodLifecycle.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KMInputMethodLifecycle.m; sourceTree = "<group>"; };
296FE2FA275DD21600F46898 /* KMPackageReader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMPackageReader.h; sourceTree = "<group>"; };
296FE2FB275DD21600F46898 /* KMPackageReader.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KMPackageReader.m; sourceTree = "<group>"; };
29781101297FB262007C886D /* kn */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = kn; path = kn.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
29781102297FB262007C886D /* kn */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = kn; path = kn.lproj/preferences.strings; sourceTree = "<group>"; };
29781103297FB263007C886D /* kn */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = kn; path = kn.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
29781104297FB263007C886D /* kn */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = kn; path = kn.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
29781105297FB263007C886D /* kn */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = kn; path = kn.lproj/MainMenu.strings; sourceTree = "<group>"; };
29781106297FB27E007C886D /* kn */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = kn; path = kn.lproj/Localizable.strings; sourceTree = "<group>"; };
297A501228DF4D360074EB1B /* PrivacyWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PrivacyWindowController.m; sourceTree = "<group>"; };
297A501328DF4D360074EB1B /* PrivacyWindowController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = PrivacyWindowController.xib; sourceTree = "<group>"; };
297A501428DF4D360074EB1B /* PrivacyConsent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrivacyConsent.h; sourceTree = "<group>"; };
297A501528DF4D360074EB1B /* PrivacyWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PrivacyWindowController.h; sourceTree = "<group>"; };
297A501628DF4D360074EB1B /* PrivacyConsent.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PrivacyConsent.m; sourceTree = "<group>"; };
298566BC29802962004ACA95 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
298566BD29802963004ACA95 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/preferences.strings; sourceTree = "<group>"; };
298566BE29802963004ACA95 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
298566BF29802963004ACA95 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
298566C029802963004ACA95 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/MainMenu.strings; sourceTree = "<group>"; };
298566C129802970004ACA95 /* cs */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = cs; path = cs.lproj/Localizable.strings; sourceTree = "<group>"; };
298566C82980C9AD004ACA95 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
298566C92980C9AD004ACA95 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/preferences.strings; sourceTree = "<group>"; };
298566CA2980C9AD004ACA95 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
298566CB2980C9AE004ACA95 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
298566CC2980C9AE004ACA95 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/MainMenu.strings; sourceTree = "<group>"; };
298566CD2980C9B9004ACA95 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Localizable.strings; sourceTree = "<group>"; };
298566D42980D47C004ACA95 /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
298566D52980D47D004ACA95 /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/preferences.strings; sourceTree = "<group>"; };
298566D62980D47D004ACA95 /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
298566D72980D47D004ACA95 /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
298566D82980D47E004ACA95 /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/MainMenu.strings; sourceTree = "<group>"; };
298566D92980D489004ACA95 /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/Localizable.strings; sourceTree = "<group>"; };
298566E02980E579004ACA95 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
298566E12980E579004ACA95 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/preferences.strings; sourceTree = "<group>"; };
298566E22980E57A004ACA95 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
298566E32980E57A004ACA95 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
298566E42980E57A004ACA95 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/MainMenu.strings; sourceTree = "<group>"; };
298566E52980E584004ACA95 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = "<group>"; };
298D09F52A1F4533006B9DFE /* TextApiCompliance.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TextApiCompliance.m; sourceTree = "<group>"; };
298D09F62A1F4533006B9DFE /* TextApiCompliance.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TextApiCompliance.h; sourceTree = "<group>"; };
2999C69829D3E4CE006366F5 /* InputMethodTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = InputMethodTests.m; sourceTree = "<group>"; };
299ABD6F29ECE75B00AA5948 /* KeySender.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KeySender.m; sourceTree = "<group>"; };
299ABD7029ECE75B00AA5948 /* KeySender.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KeySender.h; sourceTree = "<group>"; };
299B5E1E29126CA20070841D /* keyman-icon@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "keyman-icon@2x.png"; sourceTree = "<group>"; };
299B5E1F29126CA20070841D /* keyman-icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "keyman-icon.png"; sourceTree = "<group>"; };
29A4730527E9D6D500DE07C7 /* ha */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ha; path = ha.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
29A4730627E9D6D500DE07C7 /* ha */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ha; path = ha.lproj/preferences.strings; sourceTree = "<group>"; };
29A4730727E9D6D600DE07C7 /* ha */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ha; path = ha.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
29A4730827E9D6D700DE07C7 /* ha */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ha; path = ha.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
29A4730927E9D6D700DE07C7 /* ha */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ha; path = ha.lproj/MainMenu.strings; sourceTree = "<group>"; };
29A4730A27E9D84B00DE07C7 /* ha */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ha; path = ha.lproj/Localizable.strings; sourceTree = "<group>"; };
29B27FF229062FF50036917E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
29B27FF329062FF50036917E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/preferences.strings; sourceTree = "<group>"; };
29B27FF429062FF50036917E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
29B27FF529062FF60036917E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
29B27FF629062FF60036917E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/MainMenu.strings; sourceTree = "<group>"; };
29B27FF7290630170036917E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = "<group>"; };
29B348AA2726F1C1009B1C82 /* km */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = km; path = km.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
29B348AB2726F1C2009B1C82 /* km */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = km; path = km.lproj/preferences.strings; sourceTree = "<group>"; };
29B348AC2726F1C2009B1C82 /* km */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = km; path = km.lproj/MainMenu.strings; sourceTree = "<group>"; };
29B348AE2726F1C7009B1C82 /* km */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = km; path = km.lproj/Localizable.strings; sourceTree = "<group>"; };
29B42A582728339900EDD5D3 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/KMInfoWindowController.xib; sourceTree = "<group>"; };
29B42A5B2728339E00EDD5D3 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
29B42A5F272833A600EDD5D3 /* km */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = km; path = km.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
29B42A612728343B00EDD5D3 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/KMKeyboardHelpWindowController.xib; sourceTree = "<group>"; };
29B42A642728343F00EDD5D3 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
29B42A682728344600EDD5D3 /* km */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = km; path = km.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
29B4A0D32BF7675A00682049 /* KMLogs.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KMLogs.m; sourceTree = "<group>"; };
29B4A0D42BF7675A00682049 /* KMLogs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KMLogs.h; sourceTree = "<group>"; };
29B5BC0328169A6300B86A17 /* ff */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ff; path = ff.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
29B5BC0428169A6400B86A17 /* ff */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ff; path = ff.lproj/preferences.strings; sourceTree = "<group>"; };
29B5BC0528169A6400B86A17 /* ff */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ff; path = ff.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
29B5BC0628169A6500B86A17 /* ff */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ff; path = ff.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
29B5BC0728169A6600B86A17 /* ff */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ff; path = ff.lproj/MainMenu.strings; sourceTree = "<group>"; };
29B5BC0828169A8600B86A17 /* ff */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ff; path = ff.lproj/Localizable.strings; sourceTree = "<group>"; };
29B6BB5B292239B4008F04BD /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/KMAboutWindowController.strings"; sourceTree = "<group>"; };
29B6BB5C292239B4008F04BD /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/preferences.strings"; sourceTree = "<group>"; };
29B6BB5D292239B4008F04BD /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/KMInfoWindowController.strings"; sourceTree = "<group>"; };
29B6BB5E292239B4008F04BD /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/KMKeyboardHelpWindowController.strings"; sourceTree = "<group>"; };
29B6BB5F292239B4008F04BD /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/MainMenu.strings"; sourceTree = "<group>"; };
29B6BB60292239DC008F04BD /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Localizable.strings"; sourceTree = "<group>"; };
29B6FB722BC39DD60074BF7F /* TextApiComplianceTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = TextApiComplianceTests.m; sourceTree = "<group>"; };
29B70A23283CB6680086B580 /* es-419 */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-419"; path = "es-419.lproj/KMAboutWindowController.strings"; sourceTree = "<group>"; };
29B70A24283CB6690086B580 /* es-419 */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-419"; path = "es-419.lproj/preferences.strings"; sourceTree = "<group>"; };
29B70A25283CB66A0086B580 /* es-419 */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-419"; path = "es-419.lproj/KMInfoWindowController.strings"; sourceTree = "<group>"; };
29B70A26283CB66B0086B580 /* es-419 */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-419"; path = "es-419.lproj/KMKeyboardHelpWindowController.strings"; sourceTree = "<group>"; };
29B70A27283CB66C0086B580 /* es-419 */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-419"; path = "es-419.lproj/MainMenu.strings"; sourceTree = "<group>"; };
29B70A28283CB6900086B580 /* es-419 */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "es-419"; path = "es-419.lproj/Localizable.strings"; sourceTree = "<group>"; };
29BE9D852CA3C21900B67DE7 /* KMModifierMapping.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMModifierMapping.h; sourceTree = "<group>"; };
29BE9D862CA3C21900B67DE7 /* KMModifierMapping.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KMModifierMapping.m; sourceTree = "<group>"; };
29BFA761282936D4009FCCC3 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
29BFA762282936D5009FCCC3 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/preferences.strings; sourceTree = "<group>"; };
29BFA763282936D5009FCCC3 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
29BFA764282936D6009FCCC3 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
29BFA765282936D7009FCCC3 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/MainMenu.strings; sourceTree = "<group>"; };
29BFA76628293760009FCCC3 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Localizable.strings; sourceTree = "<group>"; };
29BFA76D282948BD009FCCC3 /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
29BFA76E282948BE009FCCC3 /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/preferences.strings; sourceTree = "<group>"; };
29BFA76F282948BE009FCCC3 /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
29BFA770282948BF009FCCC3 /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
29BFA771282948C0009FCCC3 /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/MainMenu.strings; sourceTree = "<group>"; };
29BFA7722829490A009FCCC3 /* pl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = pl; path = pl.lproj/Localizable.strings; sourceTree = "<group>"; };
29C1E1742800227500759EDE /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/KMAboutWindowController.strings"; sourceTree = "<group>"; };
29C1E1752800227600759EDE /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/preferences.strings"; sourceTree = "<group>"; };
29C1E1762800227700759EDE /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/KMInfoWindowController.strings"; sourceTree = "<group>"; };
29C1E1772800227700759EDE /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/KMKeyboardHelpWindowController.strings"; sourceTree = "<group>"; };
29C1E1782800227800759EDE /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/MainMenu.strings"; sourceTree = "<group>"; };
29C1E179280025A900759EDE /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/Localizable.strings"; sourceTree = "<group>"; };
29D470942C648D5100224B4F /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
29D470952C648D5100224B4F /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/preferences.strings; sourceTree = "<group>"; };
29D470962C648D5200224B4F /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
29D470972C648D5200224B4F /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
29D470982C648D5200224B4F /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/MainMenu.strings; sourceTree = "<group>"; };
29D470992C648D7100224B4F /* el */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = el; path = el.lproj/Localizable.strings; sourceTree = "<group>"; };
29DBBF652D35053E00D8E33C /* KMSentryHelper.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMSentryHelper.h; sourceTree = "<group>"; };
29DBBF662D35053E00D8E33C /* KMSentryHelper.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KMSentryHelper.m; sourceTree = "<group>"; };
29DD5F432CFEF88000683388 /* SILAndikaV1RGB.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = SILAndikaV1RGB.png; sourceTree = "<group>"; };
29DD8400276C49E20066A16E /* am */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = am; path = am.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
29DD8401276C49E20066A16E /* am */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = am; path = am.lproj/preferences.strings; sourceTree = "<group>"; };
29DD8402276C49E30066A16E /* am */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = am; path = am.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
29DD8403276C49E40066A16E /* am */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = am; path = am.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
29DD8404276C49E50066A16E /* am */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = am; path = am.lproj/MainMenu.strings; sourceTree = "<group>"; };
29DD8408276C4D2F0066A16E /* am */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = am; path = am.lproj/Localizable.strings; sourceTree = "<group>"; };
370E44542564E1EE00642929 /* Sentry.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = Sentry.framework; sourceTree = BUILT_PRODUCTS_DIR; };
37589AD422E52DA20097D39D /* Keyman.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Keyman.entitlements; sourceTree = "<group>"; };
37A00ED4239AA25700D2C837 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
37A00ED5239AA25700D2C837 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
37A00ED7239AA25700D2C837 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = "<group>"; };
37A00ED8239AA25700D2C837 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = "<group>"; };
37A00EDA239AA25D00D2C837 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
37A00EDF239AA25D00D2C837 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
37A00EE0239AA25D00D2C837 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
37A00EE2239AA25D00D2C837 /* ConfigurationHost.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = ConfigurationHost.entitlements; sourceTree = "<group>"; };
37A00F2C239AD4C300D2C837 /* KeymanEngine4Mac.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = KeymanEngine4Mac.framework; sourceTree = BUILT_PRODUCTS_DIR; };
37A00F2E239AD4D000D2C837 /* KeymanEngine4Mac.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = KeymanEngine4Mac.framework; sourceTree = BUILT_PRODUCTS_DIR; };
37A245C02565DFA6000BBF92 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
37AE5C9C239A7B770086CC7C /* qrcode.min.js */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.javascript; path = qrcode.min.js; sourceTree = "<group>"; };
37C2B0CA25FF2C340092E16A /* Help */ = {isa = PBXFileReference; lastKnownFileType = folder; name = Help; path = Keyman4MacIM/Help; sourceTree = "<group>"; };
37CA0FCE2745DCFE00266259 /* OCMock.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = OCMock.xcframework; path = ../Carthage/Build/OCMock.xcframework; sourceTree = "<group>"; };
7844A655E38A234DE5D29DF9 /* Pods-Keyman.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Keyman.release.xcconfig"; path = "Pods/Target Support Files/Pods-Keyman/Pods-Keyman.release.xcconfig"; sourceTree = "<group>"; };
8577C0C788461AFE564DDF4F /* Pods-KeymanTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KeymanTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-KeymanTests/Pods-KeymanTests.debug.xcconfig"; sourceTree = "<group>"; };
878287E1B18ED4EE910C4BC7 /* Pods-Keyman.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Keyman.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Keyman/Pods-Keyman.debug.xcconfig"; sourceTree = "<group>"; };
9800EC591C02940300BF0FB5 /* keyman-for-mac-os-license.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = "keyman-for-mac-os-license.html"; sourceTree = "<group>"; };
9803C9D71B0EFB3B0082A6F9 /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; };
9832472C1A9EABC70010B90C /* KMConfigColumn1CellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = KMConfigColumn1CellView.h; path = Keyman4MacIM/KMConfiguration/KMConfigColumn1CellView.h; sourceTree = "<group>"; };
9832472D1A9EABC70010B90C /* KMConfigColumn1CellView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = KMConfigColumn1CellView.m; path = Keyman4MacIM/KMConfiguration/KMConfigColumn1CellView.m; sourceTree = "<group>"; };
983247B01A9EB9690010B90C /* KMConfigColumn3CellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = KMConfigColumn3CellView.h; path = Keyman4MacIM/KMConfiguration/KMConfigColumn3CellView.h; sourceTree = "<group>"; };
983247B11A9EB9690010B90C /* KMConfigColumn3CellView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = KMConfigColumn3CellView.m; path = Keyman4MacIM/KMConfiguration/KMConfigColumn3CellView.m; sourceTree = "<group>"; };
9836B3651AE5F11D00780482 /* crypt.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = crypt.h; sourceTree = "<group>"; };
9836B3661AE5F11D00780482 /* ioapi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ioapi.c; sourceTree = "<group>"; };
9836B3671AE5F11D00780482 /* ioapi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ioapi.h; sourceTree = "<group>"; };
9836B3681AE5F11D00780482 /* mztools.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mztools.c; sourceTree = "<group>"; };
9836B3691AE5F11D00780482 /* mztools.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mztools.h; sourceTree = "<group>"; };
9836B36A1AE5F11D00780482 /* unzip.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = unzip.c; sourceTree = "<group>"; };
9836B36B1AE5F11D00780482 /* unzip.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unzip.h; sourceTree = "<group>"; };
9836B36C1AE5F11D00780482 /* zip.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = zip.c; sourceTree = "<group>"; };
9836B36D1AE5F11D00780482 /* zip.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = zip.h; sourceTree = "<group>"; };
9836B36E1AE5F11D00780482 /* ZipArchive.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZipArchive.h; sourceTree = "<group>"; };
9836B36F1AE5F11D00780482 /* ZipArchive.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ZipArchive.mm; sourceTree = "<group>"; };
984B8F411AF1C3D900E096A8 /* OSKWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OSKWindowController.h; path = OnScreenKeyboard/OSKWindowController.h; sourceTree = "<group>"; };
984B8F421AF1C3D900E096A8 /* OSKWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OSKWindowController.m; path = OnScreenKeyboard/OSKWindowController.m; sourceTree = "<group>"; };
984B8F431AF1C3D900E096A8 /* OSKWindowController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = OSKWindowController.xib; path = OnScreenKeyboard/OSKWindowController.xib; sourceTree = "<group>"; };
984C2B211A79DF1B0023F89D /* KeymanEngine4Mac.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = KeymanEngine4Mac.framework; path = Frameworks/KeymanEngine4Mac.framework; sourceTree = "<group>"; };
9874C31E1B536847000BB543 /* info.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = info.png; sourceTree = "<group>"; };
9874C31F1B536847000BB543 /* keyman.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = keyman.png; sourceTree = "<group>"; };
9874C3201B536847000BB543 /* SideImage.bmp */ = {isa = PBXFileReference; lastKnownFileType = image.bmp; path = SideImage.bmp; sourceTree = "<group>"; };
989C9C081A7876DE00A20425 /* Keyman.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Keyman.app; sourceTree = BUILT_PRODUCTS_DIR; };
989C9C0C1A7876DE00A20425 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
989C9C101A7876DE00A20425 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
989C9C121A7876DE00A20425 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
98A778C21A8C53BF00CF809D /* KMInputMethodAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KMInputMethodAppDelegate.h; sourceTree = "<group>"; };
98A778C31A8C53BF00CF809D /* KMInputMethodAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KMInputMethodAppDelegate.m; sourceTree = "<group>"; };
98BCD1F41B4E5998004E1AFD /* NSString+SuppMethods.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "NSString+SuppMethods.h"; path = "Categories/NSString+SuppMethods.h"; sourceTree = "<group>"; };
98BCD1F51B4E5998004E1AFD /* NSString+SuppMethods.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "NSString+SuppMethods.m"; path = "Categories/NSString+SuppMethods.m"; sourceTree = "<group>"; };
98BDD3681BC3511200FAC7C4 /* Keyman4MacIM.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.xml; path = Keyman4MacIM.entitlements; sourceTree = "<group>"; };
98BF92411BF01CBE0002126A /* KMAboutWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KMAboutWindowController.h; sourceTree = "<group>"; };
98BF92421BF01CBE0002126A /* KMAboutWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KMAboutWindowController.m; sourceTree = "<group>"; };
98BF92461BF01D890002126A /* image.jpg */ = {isa = PBXFileReference; lastKnownFileType = image.jpeg; path = image.jpg; sourceTree = "<group>"; };
98BF924D1BF02DC20002126A /* KMBarView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KMBarView.h; sourceTree = "<group>"; };
98BF924E1BF02DC20002126A /* KMBarView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KMBarView.m; sourceTree = "<group>"; };
98BF92501BF03D4D0002126A /* KMAboutBGView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KMAboutBGView.h; sourceTree = "<group>"; };
98BF92511BF03D4D0002126A /* KMAboutBGView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KMAboutBGView.m; sourceTree = "<group>"; };
98BF92531BF040A50002126A /* title.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = title.png; sourceTree = "<group>"; };
98BF92551BF0431F0002126A /* KMAboutWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KMAboutWindow.h; sourceTree = "<group>"; };
98BF92561BF0431F0002126A /* KMAboutWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KMAboutWindow.m; sourceTree = "<group>"; };
98D6DA7A1A799F0B00B09822 /* InputMethodKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = InputMethodKit.framework; path = System/Library/Frameworks/InputMethodKit.framework; sourceTree = SDKROOT; };
98D6DA7C1A799FF400B09822 /* KMInputController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KMInputController.h; sourceTree = "<group>"; };
98D6DA7D1A799FF400B09822 /* KMInputController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KMInputController.m; sourceTree = "<group>"; };
98E2CEA01A92C39C00AE2455 /* InfoPlist.strings */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; path = InfoPlist.strings; sourceTree = "<group>"; };
98E6729C1B532F5D00DBDE2F /* KMDownloadKBWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = KMDownloadKBWindowController.h; path = Keyman4MacIM/KMDownloadKeyboard/KMDownloadKBWindowController.h; sourceTree = "<group>"; };
98E6729D1B532F5D00DBDE2F /* KMDownloadKBWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = KMDownloadKBWindowController.m; path = Keyman4MacIM/KMDownloadKeyboard/KMDownloadKBWindowController.m; sourceTree = "<group>"; };
98E6729E1B532F5E00DBDE2F /* KMDownloadKBWindowController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = KMDownloadKBWindowController.xib; path = Keyman4MacIM/KMDownloadKeyboard/KMDownloadKBWindowController.xib; sourceTree = "<group>"; };
98E672A11B532F9900DBDE2F /* KMKeyboardHelpWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = KMKeyboardHelpWindowController.h; path = Keyman4MacIM/KMKeyboardHelpWindow/KMKeyboardHelpWindowController.h; sourceTree = "<group>"; };
98E672A21B532F9900DBDE2F /* KMKeyboardHelpWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = KMKeyboardHelpWindowController.m; path = Keyman4MacIM/KMKeyboardHelpWindow/KMKeyboardHelpWindowController.m; sourceTree = "<group>"; };
98F3C8901A8D739500F675E3 /* KMConfigurationWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = KMConfigurationWindowController.h; path = Keyman4MacIM/KMConfiguration/KMConfigurationWindowController.h; sourceTree = "<group>"; };
98F3C8911A8D739500F675E3 /* KMConfigurationWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = KMConfigurationWindowController.m; path = Keyman4MacIM/KMConfiguration/KMConfigurationWindowController.m; sourceTree = "<group>"; };
98FE105C1B4DE8F400525F54 /* NSWindow+SuppMethods.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "NSWindow+SuppMethods.h"; path = "Categories/NSWindow+SuppMethods.h"; sourceTree = "<group>"; };
98FE105D1B4DE8F400525F54 /* NSWindow+SuppMethods.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "NSWindow+SuppMethods.m"; path = "Categories/NSWindow+SuppMethods.m"; sourceTree = "<group>"; };
98FE10601B4DEE5600525F54 /* KMInfoWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = KMInfoWindowController.h; path = Keyman4MacIM/KMInfoWindow/KMInfoWindowController.h; sourceTree = "<group>"; };
98FE10611B4DEE5600525F54 /* KMInfoWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = KMInfoWindowController.m; path = Keyman4MacIM/KMInfoWindow/KMInfoWindowController.m; sourceTree = "<group>"; };
9A3D6C5B221531B0008785A3 /* KMOSVersion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMOSVersion.h; sourceTree = "<group>"; };
9A3D6C5C221531B0008785A3 /* KMOSVersion.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KMOSVersion.m; sourceTree = "<group>"; };
A71FD8BA8404531DFBD861B6 /* Pods_KeymanTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_KeymanTests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
B644E63217FFE54B91C71C94 /* Pods_Keyman.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Keyman.framework; sourceTree = BUILT_PRODUCTS_DIR; };
CEFFECD82A417FEA00D58C36 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
CEFFECD92A417FEB00D58C36 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/preferences.strings; sourceTree = "<group>"; };
CEFFECDA2A417FEB00D58C36 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
CEFFECDB2A417FEC00D58C36 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
CEFFECDC2A417FEC00D58C36 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/MainMenu.strings; sourceTree = "<group>"; };
CEFFECDD2A4180FD00D58C36 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = "<group>"; };
D861B03D2C5747F70003675E /* KMSettingsRepository.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMSettingsRepository.h; sourceTree = "<group>"; };
D861B03E2C5747F70003675E /* KMSettingsRepository.m */ = {isa = PBXFileReference; indentWidth = 2; lastKnownFileType = sourcecode.c.objc; path = KMSettingsRepository.m; sourceTree = "<group>"; tabWidth = 2; };
D88EC4072D7878C10022CB80 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/KMAboutWindowController.strings; sourceTree = "<group>"; };
D88EC4082D7878C20022CB80 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/preferences.strings; sourceTree = "<group>"; };
D88EC4092D7878C20022CB80 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/KMInfoWindowController.strings; sourceTree = "<group>"; };
D88EC40A2D7878C20022CB80 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/KMKeyboardHelpWindowController.strings; sourceTree = "<group>"; };
D88EC40B2D7878C30022CB80 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/MainMenu.strings; sourceTree = "<group>"; };
D88EC40C2D7878ED0022CB80 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/Localizable.strings; sourceTree = "<group>"; };
E211769B20E1826800F8065D /* NoContextTestClient.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NoContextTestClient.h; sourceTree = "<group>"; };
E211769C20E182DD00F8065D /* NoContextTestClient.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = NoContextTestClient.m; sourceTree = "<group>"; };
E211769E20E18C0B00F8065D /* AppleCompliantTestClient.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppleCompliantTestClient.h; sourceTree = "<group>"; };
E211769F20E18C5200F8065D /* AppleCompliantTestClient.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppleCompliantTestClient.m; sourceTree = "<group>"; };
E211CCF520B600A500505C36 /* KeymanEngine4Mac.framework.dSYM */ = {isa = PBXFileReference; lastKnownFileType = wrapper.dsym; name = KeymanEngine4Mac.framework.dSYM; path = Keyman4MacIM/Frameworks/KeymanEngine4Mac.framework.dSYM; sourceTree = "<group>"; };
E213601D2142D7BF00A043B7 /* keyman-88.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "keyman-88.png"; sourceTree = "<group>"; };
E21799031FC5B74D00F2D66A /* KMInputMethodEventHandler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMInputMethodEventHandler.h; sourceTree = "<group>"; };
E21799041FC5B7BC00F2D66A /* KMInputMethodEventHandler.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KMInputMethodEventHandler.m; sourceTree = "<group>"; };
E21E645720C04EA7000D6274 /* logo.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = logo.png; path = Keyman4MacIM/KMConfiguration/logo.png; sourceTree = SOURCE_ROOT; };
E240F597202DED300000067D /* KMPackage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = KMPackage.h; sourceTree = "<group>"; };
E240F598202DED740000067D /* KMPackage.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KMPackage.m; sourceTree = "<group>"; };
E2585A7E20DD6C3C00CBB994 /* KMMethodEventHandlerTests.kmx */ = {isa = PBXFileReference; lastKnownFileType = file; path = KMMethodEventHandlerTests.kmx; sourceTree = "<group>"; };
E2585A8020DD7CF100CBB994 /* TestAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = TestAppDelegate.m; sourceTree = "<group>"; };
E2585A8220DD7D3F00CBB994 /* TestAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = TestAppDelegate.h; sourceTree = "<group>"; };
E27BA9CD2020322000D273E7 /* OCMock.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OCMock.framework; path = ../Carthage/Build/Mac/OCMock.framework; sourceTree = "<group>"; };
E27BA9D22020D8BF00D273E7 /* SimpleTest.kmx */ = {isa = PBXFileReference; lastKnownFileType = file; path = SimpleTest.kmx; sourceTree = "<group>"; };
E29F22F1201A59B1005EA234 /* KeymanTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = KeymanTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
E29F22F5201A59B2005EA234 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
E2C92D4720B46CEA00742A7D /* KeymanEngine4Mac.framework.dSYM */ = {isa = PBXFileReference; lastKnownFileType = wrapper.dsym; name = KeymanEngine4Mac.framework.dSYM; path = Keyman4MacIM/Frameworks/KeymanEngine4Mac.framework.dSYM; sourceTree = "<group>"; };
E2D5529B20DD8D6100D77CFB /* LegacyTestClient.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = LegacyTestClient.h; sourceTree = "<group>"; };
E2D5529C20DD8E0200D77CFB /* LegacyTestClient.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = LegacyTestClient.m; sourceTree = "<group>"; };
E2EE23962142E2AC00EAA98C /* logo.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = logo.png; path = Keyman4MacIM/KMConfiguration/logo.png; sourceTree = "<group>"; };
FA67C64E3D2743D2BCF46ED1 /* Pods-KeymanTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-KeymanTests.release.xcconfig"; path = "Pods/Target Support Files/Pods-KeymanTests/Pods-KeymanTests.release.xcconfig"; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
989C9C051A7876DE00A20425 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
98D6DA7B1A799F0B00B09822 /* InputMethodKit.framework in Frameworks */,
984C2B221A79DF1B0023F89D /* KeymanEngine4Mac.framework in Frameworks */,
9803C9D81B0EFB3B0082A6F9 /* WebKit.framework in Frameworks */,
B90818AF7ED302187DE0E026 /* Pods_Keyman.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
E29F22EE201A59B1005EA234 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
E28914D32024D1B80048E71E /* KeymanEngine4Mac.framework in Frameworks */,
F9B9814A51575496B5DA2948 /* Pods_KeymanTests.framework in Frameworks */,
37CA0FD12746010300266259 /* OCMock.xcframework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
297A501128DF4D360074EB1B /* Privacy */ = {
isa = PBXGroup;
children = (
297A501428DF4D360074EB1B /* PrivacyConsent.h */,
297A501628DF4D360074EB1B /* PrivacyConsent.m */,
297A501528DF4D360074EB1B /* PrivacyWindowController.h */,
297A501228DF4D360074EB1B /* PrivacyWindowController.m */,
297A501328DF4D360074EB1B /* PrivacyWindowController.xib */,
);
path = Privacy;
sourceTree = "<group>";
};
29DBBF642D34FFE000D8E33C /* Logging */ = {
isa = PBXGroup;
children = (
29B4A0D42BF7675A00682049 /* KMLogs.h */,
29B4A0D32BF7675A00682049 /* KMLogs.m */,
29DBBF652D35053E00D8E33C /* KMSentryHelper.h */,
29DBBF662D35053E00D8E33C /* KMSentryHelper.m */,
);
path = Logging;
sourceTree = "<group>";
};
2CDC487CDFFBB26D621D73BD /* Pods */ = {
isa = PBXGroup;
children = (
8577C0C788461AFE564DDF4F /* Pods-KeymanTests.debug.xcconfig */,
FA67C64E3D2743D2BCF46ED1 /* Pods-KeymanTests.release.xcconfig */,
878287E1B18ED4EE910C4BC7 /* Pods-Keyman.debug.xcconfig */,
7844A655E38A234DE5D29DF9 /* Pods-Keyman.release.xcconfig */,
);
name = Pods;
sourceTree = "<group>";
};
37A00ED3239AA25700D2C837 /* ConfigurationHost */ = {
isa = PBXGroup;
children = (
37A00ED4239AA25700D2C837 /* AppDelegate.h */,
37A00ED5239AA25700D2C837 /* AppDelegate.m */,
37A00ED7239AA25700D2C837 /* ViewController.h */,
37A00ED8239AA25700D2C837 /* ViewController.m */,
37A00EDA239AA25D00D2C837 /* Assets.xcassets */,
37A00EDF239AA25D00D2C837 /* Info.plist */,
37A00EE0239AA25D00D2C837 /* main.m */,
37A00EE2239AA25D00D2C837 /* ConfigurationHost.entitlements */,
);
path = ConfigurationHost;
sourceTree = "<group>";
};
983246EC1A9E8E860010B90C /* KMConfiguration */ = {
isa = PBXGroup;
children = (
E2EE23962142E2AC00EAA98C /* logo.png */,
9832472C1A9EABC70010B90C /* KMConfigColumn1CellView.h */,
9832472D1A9EABC70010B90C /* KMConfigColumn1CellView.m */,
983247B01A9EB9690010B90C /* KMConfigColumn3CellView.h */,
983247B11A9EB9690010B90C /* KMConfigColumn3CellView.m */,
98F3C8901A8D739500F675E3 /* KMConfigurationWindowController.h */,
98F3C8911A8D739500F675E3 /* KMConfigurationWindowController.m */,
293EA3ED27140DEC00545EED /* preferences.xib */,
);
name = KMConfiguration;
path = ..;
sourceTree = "<group>";
};
9836B3631AE5F11D00780482 /* ZipArchive */ = {
isa = PBXGroup;
children = (
9836B3641AE5F11D00780482 /* minizip */,
9836B36E1AE5F11D00780482 /* ZipArchive.h */,
9836B36F1AE5F11D00780482 /* ZipArchive.mm */,
);
path = ZipArchive;
sourceTree = "<group>";
};
9836B3641AE5F11D00780482 /* minizip */ = {
isa = PBXGroup;
children = (
9836B3651AE5F11D00780482 /* crypt.h */,
9836B3661AE5F11D00780482 /* ioapi.c */,
9836B3671AE5F11D00780482 /* ioapi.h */,
9836B3681AE5F11D00780482 /* mztools.c */,
9836B3691AE5F11D00780482 /* mztools.h */,
9836B36A1AE5F11D00780482 /* unzip.c */,
9836B36B1AE5F11D00780482 /* unzip.h */,
9836B36C1AE5F11D00780482 /* zip.c */,
9836B36D1AE5F11D00780482 /* zip.h */,
);
path = minizip;
sourceTree = "<group>";
};
984B8F3E1AF1C2F400E096A8 /* OnScreenKeyboard */ = {
isa = PBXGroup;
children = (
984B8F411AF1C3D900E096A8 /* OSKWindowController.h */,
984B8F421AF1C3D900E096A8 /* OSKWindowController.m */,
984B8F431AF1C3D900E096A8 /* OSKWindowController.xib */,
);
name = OnScreenKeyboard;
sourceTree = "<group>";
};
9874C31D1B536847000BB543 /* Images */ = {
isa = PBXGroup;
children = (
299B5E1F29126CA20070841D /* keyman-icon.png */,
299B5E1E29126CA20070841D /* keyman-icon@2x.png */,
9874C31E1B536847000BB543 /* info.png */,
9874C31F1B536847000BB543 /* keyman.png */,
9874C3201B536847000BB543 /* SideImage.bmp */,
E21E645720C04EA7000D6274 /* logo.png */,
);
path = Images;
sourceTree = "<group>";
};
9897BD8E1B099A2400C3F58A /* KMDownloadKeyboard */ = {
isa = PBXGroup;
children = (
98E6729C1B532F5D00DBDE2F /* KMDownloadKBWindowController.h */,
98E6729D1B532F5D00DBDE2F /* KMDownloadKBWindowController.m */,
98E6729E1B532F5E00DBDE2F /* KMDownloadKBWindowController.xib */,
);
name = KMDownloadKeyboard;
path = ..;
sourceTree = "<group>";
};
989C9BFF1A7876DE00A20425 = {
isa = PBXGroup;
children = (
37C2B0CA25FF2C340092E16A /* Help */,
37A245C02565DFA6000BBF92 /* Assets.xcassets */,
37589AD422E52DA20097D39D /* Keyman.entitlements */,
E2C92D4720B46CEA00742A7D /* KeymanEngine4Mac.framework.dSYM */,
E211CCF520B600A500505C36 /* KeymanEngine4Mac.framework.dSYM */,
989C9C0A1A7876DE00A20425 /* Keyman4MacIM */,
E29F22F2201A59B1005EA234 /* KeymanTests */,
37A00ED3239AA25700D2C837 /* ConfigurationHost */,
989C9C091A7876DE00A20425 /* Products */,
E27BA9CC2020321F00D273E7 /* Frameworks */,
2CDC487CDFFBB26D621D73BD /* Pods */,
);
sourceTree = "<group>";
};
989C9C091A7876DE00A20425 /* Products */ = {
isa = PBXGroup;
children = (
989C9C081A7876DE00A20425 /* Keyman.app */,
E29F22F1201A59B1005EA234 /* KeymanTests.xctest */,
);
name = Products;
sourceTree = "<group>";
};
989C9C0A1A7876DE00A20425 /* Keyman4MacIM */ = {
isa = PBXGroup;
children = (
299ABD6F29ECE75B00AA5948 /* KeySender.m */,
299ABD7029ECE75B00AA5948 /* KeySender.h */,
D861B03D2C5747F70003675E /* KMSettingsRepository.h */,
D861B03E2C5747F70003675E /* KMSettingsRepository.m */,
29015ABB2C58D86F00CCBB94 /* KMDataRepository.h */,
29015ABC2C58D86F00CCBB94 /* KMDataRepository.m */,
297A501128DF4D360074EB1B /* Privacy */,
98FE105B1B4DE86300525F54 /* Categories */,
98D6DA791A799EE700B09822 /* Frameworks */,
29DBBF642D34FFE000D8E33C /* Logging */,
989C9C121A7876DE00A20425 /* Images.xcassets */,
98BDD3681BC3511200FAC7C4 /* Keyman4MacIM.entitlements */,
98BF92401BF01CBE0002126A /* KMAboutWindow */,
983246EC1A9E8E860010B90C /* KMConfiguration */,
9897BD8E1B099A2400C3F58A /* KMDownloadKeyboard */,
98FE105F1B4DEE1100525F54 /* KMInfoWindow */,
98D6DA7C1A799FF400B09822 /* KMInputController.h */,
98D6DA7D1A799FF400B09822 /* KMInputController.m */,
98A778C21A8C53BF00CF809D /* KMInputMethodAppDelegate.h */,
98A778C31A8C53BF00CF809D /* KMInputMethodAppDelegate.m */,
29BE9D852CA3C21900B67DE7 /* KMModifierMapping.h */,
29BE9D862CA3C21900B67DE7 /* KMModifierMapping.m */,
296105212C8E91C7007BF6B7 /* KMInputMethodLifecycle.h */,
296105222C8E91C7007BF6B7 /* KMInputMethodLifecycle.m */,
E21799031FC5B74D00F2D66A /* KMInputMethodEventHandler.h */,
E21799041FC5B7BC00F2D66A /* KMInputMethodEventHandler.m */,
298D09F62A1F4533006B9DFE /* TextApiCompliance.h */,
298D09F52A1F4533006B9DFE /* TextApiCompliance.m */,
98E672961B532DE000DBDE2F /* KMKeyboardHelpWindow */,
989C9C141A7876DE00A20425 /* MainMenu.xib */,
984B8F3E1AF1C2F400E096A8 /* OnScreenKeyboard */,
989C9C0B1A7876DE00A20425 /* Supporting Files */,
9836B3631AE5F11D00780482 /* ZipArchive */,
E240F597202DED300000067D /* KMPackage.h */,
E240F598202DED740000067D /* KMPackage.m */,
9A3D6C5B221531B0008785A3 /* KMOSVersion.h */,
9A3D6C5C221531B0008785A3 /* KMOSVersion.m */,
290BC67E274B9DB1005CD1C3 /* KMPackageInfo.h */,
290BC75C274F3FD7005CD1C3 /* KMKeyboardInfo.h */,
290BC75D274F3FD7005CD1C3 /* KMKeyboardInfo.m */,
290BC67F274B9DB1005CD1C3 /* KMPackageInfo.m */,
296FE2FA275DD21600F46898 /* KMPackageReader.h */,
296FE2FB275DD21600F46898 /* KMPackageReader.m */,
293EA3F627181FDA00545EED /* Localizable.strings */,
);
path = Keyman4MacIM;
sourceTree = "<group>";
};
989C9C0B1A7876DE00A20425 /* Supporting Files */ = {
isa = PBXGroup;
children = (
37AE5C9C239A7B770086CC7C /* qrcode.min.js */,
9874C31D1B536847000BB543 /* Images */,
989C9C0C1A7876DE00A20425 /* Info.plist */,
98E2CEA01A92C39C00AE2455 /* InfoPlist.strings */,
9800EC591C02940300BF0FB5 /* keyman-for-mac-os-license.html */,
989C9C101A7876DE00A20425 /* main.m */,
);
name = "Supporting Files";
sourceTree = "<group>";
};
98BF92401BF01CBE0002126A /* KMAboutWindow */ = {
isa = PBXGroup;
children = (
98BF924D1BF02DC20002126A /* KMBarView.h */,
98BF924E1BF02DC20002126A /* KMBarView.m */,
98BF92501BF03D4D0002126A /* KMAboutBGView.h */,
98BF92511BF03D4D0002126A /* KMAboutBGView.m */,
98BF92551BF0431F0002126A /* KMAboutWindow.h */,
98BF92561BF0431F0002126A /* KMAboutWindow.m */,
98BF92411BF01CBE0002126A /* KMAboutWindowController.h */,
98BF92421BF01CBE0002126A /* KMAboutWindowController.m */,
293EA3E827140D8100545EED /* KMAboutWindowController.xib */,
E213601D2142D7BF00A043B7 /* keyman-88.png */,
29DD5F432CFEF88000683388 /* SILAndikaV1RGB.png */,
98BF92461BF01D890002126A /* image.jpg */,
98BF92531BF040A50002126A /* title.png */,
);
path = KMAboutWindow;
sourceTree = "<group>";
};
98D6DA791A799EE700B09822 /* Frameworks */ = {
isa = PBXGroup;
children = (
98D6DA7A1A799F0B00B09822 /* InputMethodKit.framework */,
984C2B211A79DF1B0023F89D /* KeymanEngine4Mac.framework */,
9803C9D71B0EFB3B0082A6F9 /* WebKit.framework */,
);
name = Frameworks;
sourceTree = "<group>";
};
98E672961B532DE000DBDE2F /* KMKeyboardHelpWindow */ = {
isa = PBXGroup;
children = (
98E672A11B532F9900DBDE2F /* KMKeyboardHelpWindowController.h */,
98E672A21B532F9900DBDE2F /* KMKeyboardHelpWindowController.m */,
29B42A622728343B00EDD5D3 /* KMKeyboardHelpWindowController.xib */,
);
name = KMKeyboardHelpWindow;
path = ..;
sourceTree = "<group>";
};
98FE105B1B4DE86300525F54 /* Categories */ = {
isa = PBXGroup;
children = (
98FE105C1B4DE8F400525F54 /* NSWindow+SuppMethods.h */,
98FE105D1B4DE8F400525F54 /* NSWindow+SuppMethods.m */,
98BCD1F41B4E5998004E1AFD /* NSString+SuppMethods.h */,
98BCD1F51B4E5998004E1AFD /* NSString+SuppMethods.m */,
);
name = Categories;
sourceTree = "<group>";
};
98FE105F1B4DEE1100525F54 /* KMInfoWindow */ = {
isa = PBXGroup;
children = (
98FE10601B4DEE5600525F54 /* KMInfoWindowController.h */,
98FE10611B4DEE5600525F54 /* KMInfoWindowController.m */,
29B42A592728339900EDD5D3 /* KMInfoWindowController.xib */,
);
name = KMInfoWindow;
path = ..;
sourceTree = "<group>";
};
E27BA9CC2020321F00D273E7 /* Frameworks */ = {
isa = PBXGroup;
children = (
37CA0FCE2745DCFE00266259 /* OCMock.xcframework */,
370E44542564E1EE00642929 /* Sentry.framework */,
37A00F2E239AD4D000D2C837 /* KeymanEngine4Mac.framework */,
37A00F2C239AD4C300D2C837 /* KeymanEngine4Mac.framework */,
E27BA9CD2020322000D273E7 /* OCMock.framework */,
B644E63217FFE54B91C71C94 /* Pods_Keyman.framework */,
A71FD8BA8404531DFBD861B6 /* Pods_KeymanTests.framework */,
);
name = Frameworks;
sourceTree = "<group>";
};
E29F22F2201A59B1005EA234 /* KeymanTests */ = {
isa = PBXGroup;
children = (
E2585A7E20DD6C3C00CBB994 /* KMMethodEventHandlerTests.kmx */,
E27BA9D22020D8BF00D273E7 /* SimpleTest.kmx */,
E29F22F5201A59B2005EA234 /* Info.plist */,
E2585A8220DD7D3F00CBB994 /* TestAppDelegate.h */,
E2585A8020DD7CF100CBB994 /* TestAppDelegate.m */,
E2D5529B20DD8D6100D77CFB /* LegacyTestClient.h */,
E2D5529C20DD8E0200D77CFB /* LegacyTestClient.m */,
E211769B20E1826800F8065D /* NoContextTestClient.h */,
E211769C20E182DD00F8065D /* NoContextTestClient.m */,
E211769E20E18C0B00F8065D /* AppleCompliantTestClient.h */,
E211769F20E18C5200F8065D /* AppleCompliantTestClient.m */,
2999C69829D3E4CE006366F5 /* InputMethodTests.m */,
29B6FB722BC39DD60074BF7F /* TextApiComplianceTests.m */,
);
path = KeymanTests;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
989C9C071A7876DE00A20425 /* Keyman */ = {
isa = PBXNativeTarget;
buildConfigurationList = 989C9C251A7876DE00A20425 /* Build configuration list for PBXNativeTarget "Keyman" */;
buildPhases = (
D2FF67BB6C749BA6861F5E25 /* [CP] Check Pods Manifest.lock */,
9A5A4B1321F78E0100B31301 /* Assert version number same as git branch */,
E2588F2E1F2644850061C9C4 /* Run Script */,
989C9C041A7876DE00A20425 /* Sources */,
989C9C051A7876DE00A20425 /* Frameworks */,
989C9C061A7876DE00A20425 /* Resources */,
983247261A9EA1DD0010B90C /* Copy Files */,
E211CCF420B5FE7A00505C36 /* CopyFiles */,
E3A7371AE6348F467B122ADA /* [CP] Embed Pods Frameworks */,
);
buildRules = (
);
dependencies = (
);
name = Keyman;
productName = Keyman4MacIM;
productReference = 989C9C081A7876DE00A20425 /* Keyman.app */;
productType = "com.apple.product-type.application";
};
E29F22F0201A59B1005EA234 /* KeymanTests */ = {
isa = PBXNativeTarget;
buildConfigurationList = E29F22F8201A59B2005EA234 /* Build configuration list for PBXNativeTarget "KeymanTests" */;
buildPhases = (
3263C54E5ED17882C05003D5 /* [CP] Check Pods Manifest.lock */,
E29F22ED201A59B1005EA234 /* Sources */,
E29F22EE201A59B1005EA234 /* Frameworks */,
E29F22EF201A59B1005EA234 /* Resources */,
E27BA9CF202036BA00D273E7 /* CopyFiles */,
4BF2E49E229FA1206D4633CA /* [CP] Embed Pods Frameworks */,
);
buildRules = (
);
dependencies = (
E29F22F7201A59B2005EA234 /* PBXTargetDependency */,
);
name = KeymanTests;
productName = KeymanTests;
productReference = E29F22F1201A59B1005EA234 /* KeymanTests.xctest */;
productType = "com.apple.product-type.bundle.unit-test";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
989C9C001A7876DE00A20425 /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 1010;
ORGANIZATIONNAME = "SIL International";
TargetAttributes = {
989C9C071A7876DE00A20425 = {
CreatedOnToolsVersion = 6.1.1;
DevelopmentTeam = 3YE4W86L3G;
ProvisioningStyle = Manual;
SystemCapabilities = {
com.apple.HardenedRuntime = {
enabled = 1;
};
com.apple.Sandbox = {
enabled = 0;
};
};
};
E29F22F0201A59B1005EA234 = {
CreatedOnToolsVersion = 9.2;
DevelopmentTeam = 3YE4W86L3G;
ProvisioningStyle = Manual;
};
};
};
buildConfigurationList = 989C9C031A7876DE00A20425 /* Build configuration list for PBXProject "Keyman4MacIM" */;
compatibilityVersion = "Xcode 3.2";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
Base,
km,
am,
ha,
"pt-PT",
ff,
it,
pl,
"es-419",
nl,
"zh-Hans",
"ff-NG",
cs,
kn,
sv,
uk,
ru,
es,
el,
vi,
);
mainGroup = 989C9BFF1A7876DE00A20425;
productRefGroup = 989C9C091A7876DE00A20425 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
989C9C071A7876DE00A20425 /* Keyman */,
E29F22F0201A59B1005EA234 /* KeymanTests */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
989C9C061A7876DE00A20425 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
9874C3231B536847000BB543 /* SideImage.bmp in Resources */,
9874C3221B536847000BB543 /* keyman.png in Resources */,
989C9C131A7876DE00A20425 /* Images.xcassets in Resources */,
98E2CEA11A92C39C00AE2455 /* InfoPlist.strings in Resources */,
E21E645820C04EA8000D6274 /* logo.png in Resources */,
9874C3211B536847000BB543 /* info.png in Resources */,
98E672A01B532F5E00DBDE2F /* KMDownloadKBWindowController.xib in Resources */,
37AE5C9D239A7B770086CC7C /* qrcode.min.js in Resources */,
37C2B0CB25FF2C350092E16A /* Help in Resources */,
299B5E2029126CA20070841D /* keyman-icon@2x.png in Resources */,
297A501828DF4D360074EB1B /* PrivacyWindowController.xib in Resources */,
984B8F451AF1C3D900E096A8 /* OSKWindowController.xib in Resources */,
29B42A572728339900EDD5D3 /* KMInfoWindowController.xib in Resources */,
299B5E2129126CA20070841D /* keyman-icon.png in Resources */,
E213601E2142D7C000A043B7 /* keyman-88.png in Resources */,
293EA3F427181FDA00545EED /* Localizable.strings in Resources */,
98BF92471BF01D890002126A /* image.jpg in Resources */,
293EA3E627140D8100545EED /* KMAboutWindowController.xib in Resources */,
37A245C12565DFA6000BBF92 /* Assets.xcassets in Resources */,
293EA3EB27140DEC00545EED /* preferences.xib in Resources */,
29DD5F442CFEF88000683388 /* SILAndikaV1RGB.png in Resources */,
9800EC5A1C02940300BF0FB5 /* keyman-for-mac-os-license.html in Resources */,
989C9C161A7876DE00A20425 /* MainMenu.xib in Resources */,
29B42A602728343B00EDD5D3 /* KMKeyboardHelpWindowController.xib in Resources */,
98BF92541BF040A50002126A /* title.png in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
E29F22EF201A59B1005EA234 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
E27BA9D32020D8BF00D273E7 /* SimpleTest.kmx in Resources */,
E2585A7F20DD6C3C00CBB994 /* KMMethodEventHandlerTests.kmx in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
3263C54E5ED17882C05003D5 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-KeymanTests-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
4BF2E49E229FA1206D4633CA /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
"${PODS_ROOT}/Target Support Files/Pods-KeymanTests/Pods-KeymanTests-frameworks.sh",
"${BUILT_PRODUCTS_DIR}/Sentry/Sentry.framework",
);
name = "[CP] Embed Pods Frameworks";
outputPaths = (
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Sentry.framework",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-KeymanTests/Pods-KeymanTests-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
9A5A4B1321F78E0100B31301 /* Assert version number same as git branch */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
);
inputPaths = (
);
name = "Assert version number same as git branch";
outputFileListPaths = (
);
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "# check that our PRODUCT_VERSION matches this git branch's KEYMAN_VERSION from ../../VERSION.md\n(cd .. ; ./is_same_version.sh Keyman4MacIM || exit 1 ; cd -)\n";
showEnvVarsInLog = 0;
};
D2FF67BB6C749BA6861F5E25 /* [CP] Check Pods Manifest.lock */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
"${PODS_ROOT}/Manifest.lock",
);
name = "[CP] Check Pods Manifest.lock";
outputPaths = (
"$(DERIVED_FILE_DIR)/Pods-Keyman-checkManifestLockResult.txt",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
E2588F2E1F2644850061C9C4 /* Run Script */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
name = "Run Script";
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "SRC_DIR=\"${PROJECT_DIR}/../KeymanEngine4Mac/build/${CONFIGURATION}\"\nDEST_DIR=\"${PROJECT_DIR}/Keyman4MacIM/Frameworks\"\nFRAMEWORK_NAME=\"KeymanEngine4Mac.framework\"\nSRC_FRAMEWORK_PATH=\"${SRC_DIR}/${FRAMEWORK_NAME}\"\nDEST_FRAMEWORK_PATH=\"${DEST_DIR}/${FRAMEWORK_NAME}\"\nif [[ \"${SRC_DIR}\" == \"${DEST_DIR}\" ]]; then\n exit 0\nfi\n\necho \"Source: ${SRC_FRAMEWORK_PATH}\"\necho \"Dest: ${DEST_FRAMEWORK_PATH}\"\n\nif [ ! -d \"${SRC_FRAMEWORK_PATH}\" ]; then\n if [ ! -d \"${DEST_FRAMEWORK_PATH}\" ]; then\n echo \"Keyman engine framework must be built first!\"\n exit 1\n fi\n exit 0\nfi\n\necho \"Copying Keyman Engine framework from ${SRC_DIR} to ${DEST_DIR}...\"\n\nif [ ! -d \"${DEST_DIR}\" ]; then\n if [ -e \"${DEST_DIR}\" ]; then\n echo \"${DEST_DIR} exists, but it is not a directory!\"\n exit 1\n else\n mkdir -p \"$DEST_DIR\"\n fi\nelif [ -d \"${DEST_FRAMEWORK_PATH}\" ]; then\n rm -rf \"${DEST_FRAMEWORK_PATH}\"\nfi\n\ncp -Rf \"${SRC_FRAMEWORK_PATH}\" \"${DEST_FRAMEWORK_PATH}\"\nif [ -e \"${SRC_FRAMEWORK_PATH}.dSYM\" ]; then\n cp -Rf \"${SRC_FRAMEWORK_PATH}.dSYM\" \"${DEST_DIR}\"\nfi\n";
showEnvVarsInLog = 0;
};
E3A7371AE6348F467B122ADA /* [CP] Embed Pods Frameworks */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Keyman/Pods-Keyman-frameworks.sh",
"${BUILT_PRODUCTS_DIR}/Sentry/Sentry.framework",
);
name = "[CP] Embed Pods Frameworks";
outputPaths = (
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Sentry.framework",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Keyman/Pods-Keyman-frameworks.sh\"\n";
showEnvVarsInLog = 0;
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
989C9C041A7876DE00A20425 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
9836B3731AE5F11D00780482 /* zip.c in Sources */,
98F3C8931A8D739500F675E3 /* KMConfigurationWindowController.m in Sources */,
9A3D6C5D221531B0008785A3 /* KMOSVersion.m in Sources */,
989C9C111A7876DE00A20425 /* main.m in Sources */,
290BC680274B9DB1005CD1C3 /* KMPackageInfo.m in Sources */,
29DBBF672D35053E00D8E33C /* KMSentryHelper.m in Sources */,
29B4A0D52BF7675A00682049 /* KMLogs.m in Sources */,
98BF924F1BF02DC20002126A /* KMBarView.m in Sources */,
E240F599202DED740000067D /* KMPackage.m in Sources */,
296105232C8E91C7007BF6B7 /* KMInputMethodLifecycle.m in Sources */,
D861B03F2C5747F70003675E /* KMSettingsRepository.m in Sources */,
984B8F441AF1C3D900E096A8 /* OSKWindowController.m in Sources */,
9836B3711AE5F11D00780482 /* mztools.c in Sources */,
29015ABD2C58D86F00CCBB94 /* KMDataRepository.m in Sources */,
9836B3701AE5F11D00780482 /* ioapi.c in Sources */,
E21799051FC5B7BC00F2D66A /* KMInputMethodEventHandler.m in Sources */,
98E6729F1B532F5E00DBDE2F /* KMDownloadKBWindowController.m in Sources */,
98E672A41B532F9900DBDE2F /* KMKeyboardHelpWindowController.m in Sources */,
98A778C41A8C53BF00CF809D /* KMInputMethodAppDelegate.m in Sources */,
98D6DA7E1A799FF400B09822 /* KMInputController.m in Sources */,
98BF92441BF01CBE0002126A /* KMAboutWindowController.m in Sources */,
299ABD7129ECE75B00AA5948 /* KeySender.m in Sources */,
98FE10631B4DEE5600525F54 /* KMInfoWindowController.m in Sources */,
298D09F72A1F4533006B9DFE /* TextApiCompliance.m in Sources */,
9836B3721AE5F11D00780482 /* unzip.c in Sources */,
296FE2FC275DD21600F46898 /* KMPackageReader.m in Sources */,
9832472E1A9EABC70010B90C /* KMConfigColumn1CellView.m in Sources */,
297A501928DF4D360074EB1B /* PrivacyConsent.m in Sources */,
98FE105E1B4DE8F400525F54 /* NSWindow+SuppMethods.m in Sources */,
9836B3741AE5F11D00780482 /* ZipArchive.mm in Sources */,
983247B21A9EB9690010B90C /* KMConfigColumn3CellView.m in Sources */,
290BC75E274F3FD7005CD1C3 /* KMKeyboardInfo.m in Sources */,
297A501728DF4D360074EB1B /* PrivacyWindowController.m in Sources */,
98BF92521BF03D4D0002126A /* KMAboutBGView.m in Sources */,
29BE9D872CA3C21900B67DE7 /* KMModifierMapping.m in Sources */,
98BF92571BF0431F0002126A /* KMAboutWindow.m in Sources */,
98BCD1F61B4E5998004E1AFD /* NSString+SuppMethods.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
E29F22ED201A59B1005EA234 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
29E67D042D3E4A86003CDE8F /* KMSentryHelper.m in Sources */,
29C1CDE22C5B2F8B003C23BB /* KMSettingsRepository.m in Sources */,
29C1CDE32C5B2F8B003C23BB /* KMDataRepository.m in Sources */,
2915DC512BFE35DB0051FC52 /* KMLogs.m in Sources */,
2992F4202A28482800E08929 /* PrivacyWindowController.m in Sources */,
2992F41F2A2847C900E08929 /* TextApiCompliance.m in Sources */,
2992F41E2A2847AF00E08929 /* PrivacyConsent.m in Sources */,
2992F41C2A28479400E08929 /* KeySender.m in Sources */,
2999C69929D3E4CE006366F5 /* InputMethodTests.m in Sources */,
E211769D20E182DD00F8065D /* NoContextTestClient.m in Sources */,
E2D5529D20DD8E0200D77CFB /* LegacyTestClient.m in Sources */,
29B6FB732BC39DD60074BF7F /* TextApiComplianceTests.m in Sources */,
E21176A020E18C5200F8065D /* AppleCompliantTestClient.m in Sources */,
E2585A8120DD7CF100CBB994 /* TestAppDelegate.m in Sources */,
E28914D62024E4010048E71E /* KMInputMethodEventHandler.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
E29F22F7201A59B2005EA234 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 989C9C071A7876DE00A20425 /* Keyman */;
targetProxy = E29F22F6201A59B2005EA234 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
293EA3E827140D8100545EED /* KMAboutWindowController.xib */ = {
isa = PBXVariantGroup;
children = (
293EA3E727140D8100545EED /* Base */,
293EA3EA27140D8E00545EED /* en */,
29B348AA2726F1C1009B1C82 /* km */,
29DD8400276C49E20066A16E /* am */,
29A4730527E9D6D500DE07C7 /* ha */,
29C1E1742800227500759EDE /* pt-PT */,
29B5BC0328169A6300B86A17 /* ff */,
29BFA761282936D4009FCCC3 /* it */,
29BFA76D282948BD009FCCC3 /* pl */,
29B70A23283CB6680086B580 /* es-419 */,
29B27FF229062FF50036917E /* nl */,
29B6BB5B292239B4008F04BD /* zh-Hans */,
2901BA8A292332B3009903EC /* ff-NG */,
298566BC29802962004ACA95 /* cs */,
29781101297FB262007C886D /* kn */,
298566C82980C9AD004ACA95 /* sv */,
298566D42980D47C004ACA95 /* uk */,
298566E02980E579004ACA95 /* ru */,
CEFFECD82A417FEA00D58C36 /* es */,
29D470942C648D5100224B4F /* el */,
D88EC4072D7878C10022CB80 /* vi */,
);
name = KMAboutWindowController.xib;
sourceTree = "<group>";
};
293EA3ED27140DEC00545EED /* preferences.xib */ = {
isa = PBXVariantGroup;
children = (
293EA3EC27140DEC00545EED /* Base */,
293EA3EF27140DFA00545EED /* en */,
29B348AB2726F1C2009B1C82 /* km */,
29DD8401276C49E20066A16E /* am */,
29A4730627E9D6D500DE07C7 /* ha */,
29C1E1752800227600759EDE /* pt-PT */,
29B5BC0428169A6400B86A17 /* ff */,
29BFA762282936D5009FCCC3 /* it */,
29BFA76E282948BE009FCCC3 /* pl */,
29B70A24283CB6690086B580 /* es-419 */,
29B27FF329062FF50036917E /* nl */,
29B6BB5C292239B4008F04BD /* zh-Hans */,
2901BA8B292332B3009903EC /* ff-NG */,
298566BD29802963004ACA95 /* cs */,
29781102297FB262007C886D /* kn */,
298566C92980C9AD004ACA95 /* sv */,
298566D52980D47D004ACA95 /* uk */,
298566E12980E579004ACA95 /* ru */,
CEFFECD92A417FEB00D58C36 /* es */,
29D470952C648D5100224B4F /* el */,
D88EC4082D7878C20022CB80 /* vi */,
);
name = preferences.xib;
path = Keyman4MacIM/KMConfiguration;
sourceTree = "<group>";
};
293EA3F627181FDA00545EED /* Localizable.strings */ = {
isa = PBXVariantGroup;
children = (
293EA3F527181FDA00545EED /* en */,
29B348AE2726F1C7009B1C82 /* km */,
29DD8408276C4D2F0066A16E /* am */,
29A4730A27E9D84B00DE07C7 /* ha */,
29C1E179280025A900759EDE /* pt-PT */,
29B5BC0828169A8600B86A17 /* ff */,
29BFA76628293760009FCCC3 /* it */,
29BFA7722829490A009FCCC3 /* pl */,
29B70A28283CB6900086B580 /* es-419 */,
29B27FF7290630170036917E /* nl */,
29B6BB60292239DC008F04BD /* zh-Hans */,
2901BA8F292332CF009903EC /* ff-NG */,
298566C129802970004ACA95 /* cs */,
29781106297FB27E007C886D /* kn */,
298566CD2980C9B9004ACA95 /* sv */,
298566D92980D489004ACA95 /* uk */,
298566E52980E584004ACA95 /* ru */,
CEFFECDD2A4180FD00D58C36 /* es */,
29D470992C648D7100224B4F /* el */,
D88EC40C2D7878ED0022CB80 /* vi */,
);
name = Localizable.strings;
sourceTree = "<group>";
};
29B42A592728339900EDD5D3 /* KMInfoWindowController.xib */ = {
isa = PBXVariantGroup;
children = (
29B42A582728339900EDD5D3 /* Base */,
29B42A5B2728339E00EDD5D3 /* en */,
29B42A5F272833A600EDD5D3 /* km */,
29DD8402276C49E30066A16E /* am */,
29A4730727E9D6D600DE07C7 /* ha */,
29C1E1762800227700759EDE /* pt-PT */,
29B5BC0528169A6400B86A17 /* ff */,
29BFA763282936D5009FCCC3 /* it */,
29BFA76F282948BE009FCCC3 /* pl */,
29B70A25283CB66A0086B580 /* es-419 */,
29B27FF429062FF50036917E /* nl */,
29B6BB5D292239B4008F04BD /* zh-Hans */,
2901BA8C292332B3009903EC /* ff-NG */,
298566BE29802963004ACA95 /* cs */,
29781103297FB263007C886D /* kn */,
298566CA2980C9AD004ACA95 /* sv */,
298566D62980D47D004ACA95 /* uk */,
298566E22980E57A004ACA95 /* ru */,
CEFFECDA2A417FEB00D58C36 /* es */,
29D470962C648D5200224B4F /* el */,
D88EC4092D7878C20022CB80 /* vi */,
);
name = KMInfoWindowController.xib;
path = Keyman4MacIM/KMInfoWindow;
sourceTree = "<group>";
};
29B42A622728343B00EDD5D3 /* KMKeyboardHelpWindowController.xib */ = {
isa = PBXVariantGroup;
children = (
29B42A612728343B00EDD5D3 /* Base */,
29B42A642728343F00EDD5D3 /* en */,
29B42A682728344600EDD5D3 /* km */,
29DD8403276C49E40066A16E /* am */,
29A4730827E9D6D700DE07C7 /* ha */,
29C1E1772800227700759EDE /* pt-PT */,
29B5BC0628169A6500B86A17 /* ff */,
29BFA764282936D6009FCCC3 /* it */,
29BFA770282948BF009FCCC3 /* pl */,
29B70A26283CB66B0086B580 /* es-419 */,
29B27FF529062FF60036917E /* nl */,
29B6BB5E292239B4008F04BD /* zh-Hans */,
2901BA8D292332B3009903EC /* ff-NG */,
298566BF29802963004ACA95 /* cs */,
29781104297FB263007C886D /* kn */,
298566CB2980C9AE004ACA95 /* sv */,
298566D72980D47D004ACA95 /* uk */,
298566E32980E57A004ACA95 /* ru */,
CEFFECDB2A417FEC00D58C36 /* es */,
29D470972C648D5200224B4F /* el */,
D88EC40A2D7878C20022CB80 /* vi */,
);
name = KMKeyboardHelpWindowController.xib;
path = Keyman4MacIM/KMKeyboardHelpWindow;
sourceTree = "<group>";
};
989C9C141A7876DE00A20425 /* MainMenu.xib */ = {
isa = PBXVariantGroup;
children = (
293EA3E527140D3A00545EED /* Base */,
293EA3F02714158600545EED /* en */,
29B348AC2726F1C2009B1C82 /* km */,
29DD8404276C49E50066A16E /* am */,
29A4730927E9D6D700DE07C7 /* ha */,
29C1E1782800227800759EDE /* pt-PT */,
29B5BC0728169A6600B86A17 /* ff */,
29BFA765282936D7009FCCC3 /* it */,
29BFA771282948C0009FCCC3 /* pl */,
29B70A27283CB66C0086B580 /* es-419 */,
29B27FF629062FF60036917E /* nl */,
29B6BB5F292239B4008F04BD /* zh-Hans */,
2901BA8E292332B4009903EC /* ff-NG */,
298566C029802963004ACA95 /* cs */,
29781105297FB263007C886D /* kn */,
298566CC2980C9AE004ACA95 /* sv */,
298566D82980D47E004ACA95 /* uk */,
298566E42980E57A004ACA95 /* ru */,
CEFFECDC2A417FEC00D58C36 /* es */,
29D470982C648D5200224B4F /* el */,
D88EC40B2D7878C30022CB80 /* vi */,
);
name = MainMenu.xib;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
989C9C231A7876DE00A20425 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "-";
COPY_PHASE_STRIP = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
FRAMEWORK_SEARCH_PATHS = "$(SRCROOT)";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.13;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
};
name = Debug;
};
989C9C241A7876DE00A20425 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "-";
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
FRAMEWORK_SEARCH_PATHS = "$(SRCROOT)";
GCC_C_LANGUAGE_STANDARD = gnu99;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.13;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = macosx;
};
name = Release;
};
989C9C261A7876DE00A20425 /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 878287E1B18ED4EE910C4BC7 /* Pods-Keyman.debug.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = Keyman.entitlements;
CODE_SIGN_IDENTITY = "Developer ID Application";
CODE_SIGN_INJECT_BASE_ENTITLEMENTS = YES;
COMBINE_HIDPI_IMAGES = YES;
COPYRIGHT_STRING = "Copyright © $(COPYRIGHT_YEARS) SIL International.";
COPYRIGHT_STRING_RIGHTS = "$(COPYRIGHT_STRING) All rights reserved.";
COPYRIGHT_YEARS = "2017-2019";
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 3YE4W86L3G;
ENABLE_HARDENED_RUNTIME = YES;
EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES = "*.nib *.lproj *.framework *.gch *.xcode* *.xcassets (*) .DS_Store CVS .svn .git .hg *.pbproj *.pbxproj";
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/Keyman4MacIM/Frameworks",
"$(PROJECT_DIR)/../Carthage/Build/Mac/**",
);
GET_INFO_STRING = "Keyman $(PRODUCT_VERSION) for macOS, $(COPYRIGHT_STRING_RIGHTS)";
HEADER_SEARCH_PATHS = (
"$(inherited)",
"{$PROJECT_DIR}/Keyman4MacIM/KMAboutWindow",
"{$PROJECT_DIR}/Keyman4MacIM",
);
INFOPLIST_FILE = Keyman4MacIM/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.13;
ONLY_ACTIVE_ARCH = YES;
OTHER_CODE_SIGN_FLAGS = "--timestamp --verbose";
PRODUCT_BUNDLE_IDENTIFIER = "keyman.inputmethod.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
PRODUCT_VERSION = 0.0.1;
PROVISIONING_PROFILE = "";
PROVISIONING_PROFILE_SPECIFIER = "";
STRIP_INSTALLED_PRODUCT = YES;
};
name = Debug;
};
989C9C271A7876DE00A20425 /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 7844A655E38A234DE5D29DF9 /* Pods-Keyman.release.xcconfig */;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_ENTITLEMENTS = Keyman.entitlements;
CODE_SIGN_IDENTITY = "Developer ID Application";
CODE_SIGN_INJECT_BASE_ENTITLEMENTS = NO;
COMBINE_HIDPI_IMAGES = YES;
COPYRIGHT_STRING = "Copyright © $(COPYRIGHT_YEARS) SIL International.";
COPYRIGHT_STRING_RIGHTS = "$(COPYRIGHT_STRING) All rights reserved.";
COPYRIGHT_YEARS = "2017-2019";
COPY_PHASE_STRIP = NO;
DEVELOPMENT_TEAM = 3YE4W86L3G;
ENABLE_HARDENED_RUNTIME = YES;
EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES = "*.nib *.lproj *.framework *.gch *.xcode* *.xcassets (*) .DS_Store CVS .svn .git .hg *.pbproj *.pbxproj";
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/Keyman4MacIM/Frameworks",
"$(PROJECT_DIR)/../Carthage/Build/Mac/**",
);
GET_INFO_STRING = "Keyman $(PRODUCT_VERSION) for macOS, $(COPYRIGHT_STRING_RIGHTS)";
HEADER_SEARCH_PATHS = (
"$(inherited)",
"{$PROJECT_DIR}/Keyman4MacIM/KMAboutWindow",
"{$PROJECT_DIR}/Keyman4MacIM",
);
INFOPLIST_FILE = Keyman4MacIM/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.13;
OTHER_CODE_SIGN_FLAGS = "--timestamp --verbose";
PRODUCT_BUNDLE_IDENTIFIER = "keyman.inputmethod.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
PRODUCT_VERSION = 0.0.1;
PROVISIONING_PROFILE = "";
PROVISIONING_PROFILE_SPECIFIER = "";
STRIP_INSTALLED_PRODUCT = YES;
};
name = Release;
};
E29F22F9201A59B2005EA234 /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = 8577C0C788461AFE564DDF4F /* Pods-KeymanTests.debug.xcconfig */;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_IDENTITY = "Developer ID Application";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
DEBUG_INFORMATION_FORMAT = dwarf;
DEVELOPMENT_TEAM = 3YE4W86L3G;
EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES = "*.nib *.lproj *.framework *.gch *.xcode* *.xcassets (*) .DS_Store CVS .svn .git .hg *.pbproj *.pbxproj";
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/Keyman4MacIM/Frameworks",
"$(PROJECT_DIR)/../Carthage/Build/Mac/**",
);
GCC_C_LANGUAGE_STANDARD = gnu11;
HEADER_SEARCH_PATHS = (
"$(PROJECT_DIR)/../Carthage/Build/Mac/**",
"$(inherited)",
);
INFOPLIST_FILE = KeymanTests/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@loader_path/../Frameworks",
"@loader_path/Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.13;
PRODUCT_BUNDLE_IDENTIFIER = org.sil.consoleTestbed.KeymanTests;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
};
name = Debug;
};
E29F22FA201A59B2005EA234 /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = FA67C64E3D2743D2BCF46ED1 /* Pods-KeymanTests.release.xcconfig */;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CODE_SIGN_IDENTITY = "Developer ID Application";
CODE_SIGN_STYLE = Manual;
COMBINE_HIDPI_IMAGES = YES;
COPY_PHASE_STRIP = NO;
DEVELOPMENT_TEAM = 3YE4W86L3G;
EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES = "*.nib *.lproj *.framework *.gch *.xcode* *.xcassets (*) .DS_Store CVS .svn .git .hg *.pbproj *.pbxproj";
FRAMEWORK_SEARCH_PATHS = (
"$(inherited)",
"$(PROJECT_DIR)/Keyman4MacIM/Frameworks",
);
GCC_C_LANGUAGE_STANDARD = gnu11;
INFOPLIST_FILE = KeymanTests/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/../Frameworks",
"@loader_path/../Frameworks",
);
MACOSX_DEPLOYMENT_TARGET = 10.13;
PRODUCT_BUNDLE_IDENTIFIER = org.sil.consoleTestbed.KeymanTests;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
989C9C031A7876DE00A20425 /* Build configuration list for PBXProject "Keyman4MacIM" */ = {
isa = XCConfigurationList;
buildConfigurations = (
989C9C231A7876DE00A20425 /* Debug */,
989C9C241A7876DE00A20425 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
989C9C251A7876DE00A20425 /* Build configuration list for PBXNativeTarget "Keyman" */ = {
isa = XCConfigurationList;
buildConfigurations = (
989C9C261A7876DE00A20425 /* Debug */,
989C9C271A7876DE00A20425 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
E29F22F8201A59B2005EA234 /* Build configuration list for PBXNativeTarget "KeymanTests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
E29F22F9201A59B2005EA234 /* Debug */,
E29F22FA201A59B2005EA234 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = 989C9C001A7876DE00A20425 /* Project object */;
}