diff --git a/App/en.lproj/BOViewController.xib b/App/Base.lproj/BOViewController.xib
similarity index 100%
rename from App/en.lproj/BOViewController.xib
rename to App/Base.lproj/BOViewController.xib
diff --git a/App/MarkdownParser-Info.plist b/App/MarkdownParser-Info.plist
index cf0fe89..5860c3f 100644
--- a/App/MarkdownParser-Info.plist
+++ b/App/MarkdownParser-Info.plist
@@ -9,7 +9,7 @@
CFBundleExecutable
${EXECUTABLE_NAME}
CFBundleIdentifier
- dk.boedewadt.${PRODUCT_NAME:rfc1034identifier}
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleInfoDictionaryVersion
6.0
CFBundleName
diff --git a/MarkdownParser.xcodeproj/project.pbxproj b/MarkdownParser.xcodeproj/project.pbxproj
index 62dadd9..fae199a 100644
--- a/MarkdownParser.xcodeproj/project.pbxproj
+++ b/MarkdownParser.xcodeproj/project.pbxproj
@@ -7,6 +7,25 @@
objects = {
/* Begin PBXBuildFile section */
+ 3DE3BAA01658FF2E00CE504F /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 3DE3BA9E1658FF2E00CE504F /* InfoPlist.strings */; };
+ 3DE3BAA91658FF9000CE504F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DE3BAA81658FF9000CE504F /* Foundation.framework */; };
+ 3DE3BAAA1658FF9500CE504F /* BOMarkdownParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 3EB17E9C161F187D00A27750 /* BOMarkdownParser.m */; };
+ 3DE3BAAB1658FF9800CE504F /* NSAttributedString+Markdown.m in Sources */ = {isa = PBXBuildFile; fileRef = 3EB17EBE161F1A8700A27750 /* NSAttributedString+Markdown.m */; };
+ 3DE3BAAC1658FF9B00CE504F /* array.c in Sources */ = {isa = PBXBuildFile; fileRef = 3EB17EB1161F199900A27750 /* array.c */; };
+ 3DE3BAAD1658FF9D00CE504F /* buffer.c in Sources */ = {isa = PBXBuildFile; fileRef = 3EB17EB2161F199900A27750 /* buffer.c */; };
+ 3DE3BAAE1658FF9F00CE504F /* markdown.c in Sources */ = {isa = PBXBuildFile; fileRef = 3EB17EB3161F199900A27750 /* markdown.c */; };
+ 3DE3BABA165901AC00CE504F /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DE3BAB9165901AC00CE504F /* AppKit.framework */; };
+ 3DE3BABE165903B500CE504F /* NSFont+UIKitAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DE3BABC165903B500CE504F /* NSFont+UIKitAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 3DE3BABF165903B500CE504F /* NSFont+UIKitAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 3DE3BABD165903B500CE504F /* NSFont+UIKitAdditions.m */; };
+ 3DE3BACE1659087100CE504F /* SenTestingKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3EB17E64161F17B200A27750 /* SenTestingKit.framework */; };
+ 3DE3BAD61659087100CE504F /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 3DE3BAD41659087100CE504F /* InfoPlist.strings */; };
+ 3DE3BAE0165908D800CE504F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DE3BAA81658FF9000CE504F /* Foundation.framework */; };
+ 3DE3BAE1165908DD00CE504F /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DE3BAB9165901AC00CE504F /* AppKit.framework */; };
+ 3DE3BAE2165908E900CE504F /* MarkdownParserTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 3EB17E71161F17B200A27750 /* MarkdownParserTests.m */; };
+ 3DE3BB0A1659097400CE504F /* BOMarkdownParser.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EB17E9B161F187D00A27750 /* BOMarkdownParser.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 3DE3BB0B16590AEA00CE504F /* OS-X-ObjC-Compatibility.h in Headers */ = {isa = PBXBuildFile; fileRef = 3DE3BA881658FADD00CE504F /* OS-X-ObjC-Compatibility.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 3DE3BB0D16590C4600CE504F /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DE3BB0C16590C4600CE504F /* Cocoa.framework */; };
+ 3DE3BB0E16590C7E00CE504F /* MarkdownParserMac.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3DE3BA941658FF2E00CE504F /* MarkdownParserMac.framework */; };
3EB17E41161F17B100A27750 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3EB17E40161F17B100A27750 /* UIKit.framework */; };
3EB17E43161F17B100A27750 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3EB17E42161F17B100A27750 /* Foundation.framework */; };
3EB17E45161F17B100A27750 /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3EB17E44161F17B100A27750 /* CoreGraphics.framework */; };
@@ -33,6 +52,13 @@
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
+ 3DE3BADE165908C000CE504F /* PBXContainerItemProxy */ = {
+ isa = PBXContainerItemProxy;
+ containerPortal = 3EB17E33161F17B100A27750 /* Project object */;
+ proxyType = 1;
+ remoteGlobalIDString = 3DE3BA931658FF2E00CE504F;
+ remoteInfo = MarkdownParserMac;
+ };
3E575BDB161F29FF00286500 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 3EB17E33161F17B100A27750 /* Project object */;
@@ -62,6 +88,24 @@
/* End PBXCopyFilesBuildPhase section */
/* Begin PBXFileReference section */
+ 3D9E54F12715962C003DE4C5 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = ../Base.lproj/BOViewController.xib; sourceTree = ""; };
+ 3DE3BA881658FADD00CE504F /* OS-X-ObjC-Compatibility.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "OS-X-ObjC-Compatibility.h"; path = "Source/OS-X-ObjC-Compatibility.h"; sourceTree = SOURCE_ROOT; };
+ 3DE3BA941658FF2E00CE504F /* MarkdownParserMac.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MarkdownParserMac.framework; sourceTree = BUILT_PRODUCTS_DIR; };
+ 3DE3BA981658FF2E00CE504F /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
+ 3DE3BA991658FF2E00CE504F /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; };
+ 3DE3BA9A1658FF2E00CE504F /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
+ 3DE3BA9D1658FF2E00CE504F /* MarkdownParserMac-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "MarkdownParserMac-Info.plist"; sourceTree = ""; };
+ 3DE3BA9F1658FF2E00CE504F /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; };
+ 3DE3BAA11658FF2E00CE504F /* MarkdownParserMac-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "MarkdownParserMac-Prefix.pch"; sourceTree = ""; };
+ 3DE3BAA81658FF9000CE504F /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
+ 3DE3BAB9165901AC00CE504F /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/AppKit.framework; sourceTree = DEVELOPER_DIR; };
+ 3DE3BABC165903B500CE504F /* NSFont+UIKitAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSFont+UIKitAdditions.h"; sourceTree = ""; };
+ 3DE3BABD165903B500CE504F /* NSFont+UIKitAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSFont+UIKitAdditions.m"; sourceTree = ""; };
+ 3DE3BACD1659087100CE504F /* MarkdownParserMacTests.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MarkdownParserMacTests.octest; sourceTree = BUILT_PRODUCTS_DIR; };
+ 3DE3BAD31659087100CE504F /* MarkdownParserMacTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "MarkdownParserMacTests-Info.plist"; sourceTree = ""; };
+ 3DE3BAD51659087100CE504F /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; };
+ 3DE3BADA1659087100CE504F /* MarkdownParserMacTests-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "MarkdownParserMacTests-Prefix.pch"; sourceTree = ""; };
+ 3DE3BB0C16590C4600CE504F /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk/System/Library/Frameworks/Cocoa.framework; sourceTree = DEVELOPER_DIR; };
3E575BDD161F30EF00286500 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = text; path = README.md; sourceTree = ""; };
3EB17E3C161F17B100A27750 /* MarkdownParserApp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MarkdownParserApp.app; sourceTree = BUILT_PRODUCTS_DIR; };
3EB17E40161F17B100A27750 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
@@ -71,7 +115,7 @@
3EB17E64161F17B200A27750 /* SenTestingKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SenTestingKit.framework; path = Library/Frameworks/SenTestingKit.framework; sourceTree = DEVELOPER_DIR; };
3EB17E6C161F17B200A27750 /* MarkdownParserTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "MarkdownParserTests-Info.plist"; sourceTree = ""; };
3EB17E6E161F17B200A27750 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; };
- 3EB17E71161F17B200A27750 /* MarkdownParserTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MarkdownParserTests.m; sourceTree = ""; };
+ 3EB17E71161F17B200A27750 /* MarkdownParserTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MarkdownParserTests.m; sourceTree = ""; usesTabs = 0; };
3EB17E82161F184D00A27750 /* BOAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BOAppDelegate.h; sourceTree = ""; };
3EB17E83161F184D00A27750 /* BOAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BOAppDelegate.m; sourceTree = ""; };
3EB17E84161F184D00A27750 /* BOViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BOViewController.h; sourceTree = ""; };
@@ -79,13 +123,12 @@
3EB17E86161F184D00A27750 /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = ""; };
3EB17E87161F184D00A27750 /* Default.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Default.png; sourceTree = ""; };
3EB17E88161F184D00A27750 /* Default@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default@2x.png"; sourceTree = ""; };
- 3EB17E8B161F184D00A27750 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = BOViewController.xib; sourceTree = ""; };
3EB17E8D161F184D00A27750 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = InfoPlist.strings; sourceTree = ""; };
3EB17E8E161F184D00A27750 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; };
3EB17E8F161F184D00A27750 /* MarkdownParser-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "MarkdownParser-Info.plist"; sourceTree = ""; };
3EB17E9A161F187D00A27750 /* MarkdownParser-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "MarkdownParser-Prefix.pch"; path = "Source/MarkdownParser-Prefix.pch"; sourceTree = SOURCE_ROOT; };
- 3EB17E9B161F187D00A27750 /* BOMarkdownParser.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BOMarkdownParser.h; path = Source/BOMarkdownParser.h; sourceTree = SOURCE_ROOT; };
- 3EB17E9C161F187D00A27750 /* BOMarkdownParser.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = BOMarkdownParser.m; path = Source/BOMarkdownParser.m; sourceTree = SOURCE_ROOT; };
+ 3EB17E9B161F187D00A27750 /* BOMarkdownParser.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = BOMarkdownParser.h; path = Source/BOMarkdownParser.h; sourceTree = SOURCE_ROOT; usesTabs = 0; };
+ 3EB17E9C161F187D00A27750 /* BOMarkdownParser.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = BOMarkdownParser.m; path = Source/BOMarkdownParser.m; sourceTree = SOURCE_ROOT; usesTabs = 0; };
3EB17EA1161F189F00A27750 /* libMarkdownParser.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libMarkdownParser.a; sourceTree = BUILT_PRODUCTS_DIR; };
3EB17EB1161F199900A27750 /* array.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = array.c; sourceTree = ""; };
3EB17EB2161F199900A27750 /* buffer.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = buffer.c; sourceTree = ""; };
@@ -93,13 +136,34 @@
3EB17EBA161F19B100A27750 /* array.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = array.h; sourceTree = ""; };
3EB17EBB161F19B100A27750 /* buffer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = buffer.h; sourceTree = ""; };
3EB17EBC161F19B100A27750 /* markdown.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = markdown.h; sourceTree = ""; };
- 3EB17EBD161F1A8700A27750 /* NSAttributedString+Markdown.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "NSAttributedString+Markdown.h"; path = "Source/NSAttributedString+Markdown.h"; sourceTree = SOURCE_ROOT; };
- 3EB17EBE161F1A8700A27750 /* NSAttributedString+Markdown.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "NSAttributedString+Markdown.m"; path = "Source/NSAttributedString+Markdown.m"; sourceTree = SOURCE_ROOT; };
+ 3EB17EBD161F1A8700A27750 /* NSAttributedString+Markdown.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = "NSAttributedString+Markdown.h"; path = "Source/NSAttributedString+Markdown.h"; sourceTree = SOURCE_ROOT; usesTabs = 0; };
+ 3EB17EBE161F1A8700A27750 /* NSAttributedString+Markdown.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = "NSAttributedString+Markdown.m"; path = "Source/NSAttributedString+Markdown.m"; sourceTree = SOURCE_ROOT; usesTabs = 0; };
3EC9321816629BB300DDB33D /* LICENSE */ = {isa = PBXFileReference; lastKnownFileType = text; path = LICENSE; sourceTree = ""; };
3EC9321916629BD600DDB33D /* LICENSE.md */ = {isa = PBXFileReference; lastKnownFileType = text; path = LICENSE.md; sourceTree = ""; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
+ 3DE3BA901658FF2E00CE504F /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 3DE3BABA165901AC00CE504F /* AppKit.framework in Frameworks */,
+ 3DE3BAA91658FF9000CE504F /* Foundation.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 3DE3BAC91659087100CE504F /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 3DE3BB0E16590C7E00CE504F /* MarkdownParserMac.framework in Frameworks */,
+ 3DE3BB0D16590C4600CE504F /* Cocoa.framework in Frameworks */,
+ 3DE3BAE1165908DD00CE504F /* AppKit.framework in Frameworks */,
+ 3DE3BAE0165908D800CE504F /* Foundation.framework in Frameworks */,
+ 3DE3BACE1659087100CE504F /* SenTestingKit.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
3EB17E39161F17B100A27750 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@@ -132,6 +196,65 @@
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
+ 3DE3BA971658FF2E00CE504F /* Other Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 3DE3BA981658FF2E00CE504F /* AppKit.framework */,
+ 3DE3BA991658FF2E00CE504F /* CoreData.framework */,
+ 3DE3BA9A1658FF2E00CE504F /* Foundation.framework */,
+ );
+ name = "Other Frameworks";
+ sourceTree = "";
+ };
+ 3DE3BA9B1658FF2E00CE504F /* MarkdownParserMac */ = {
+ isa = PBXGroup;
+ children = (
+ 3DE3BA881658FADD00CE504F /* OS-X-ObjC-Compatibility.h */,
+ 3DE3BABC165903B500CE504F /* NSFont+UIKitAdditions.h */,
+ 3DE3BABD165903B500CE504F /* NSFont+UIKitAdditions.m */,
+ 3DE3BA9C1658FF2E00CE504F /* Supporting Files */,
+ );
+ path = MarkdownParserMac;
+ sourceTree = "";
+ };
+ 3DE3BA9C1658FF2E00CE504F /* Supporting Files */ = {
+ isa = PBXGroup;
+ children = (
+ 3DE3BA9D1658FF2E00CE504F /* MarkdownParserMac-Info.plist */,
+ 3DE3BA9E1658FF2E00CE504F /* InfoPlist.strings */,
+ 3DE3BAA11658FF2E00CE504F /* MarkdownParserMac-Prefix.pch */,
+ );
+ name = "Supporting Files";
+ sourceTree = "";
+ };
+ 3DE3BABB165901C100CE504F /* Mac */ = {
+ isa = PBXGroup;
+ children = (
+ 3DE3BAB9165901AC00CE504F /* AppKit.framework */,
+ 3DE3BB0C16590C4600CE504F /* Cocoa.framework */,
+ 3DE3BAA81658FF9000CE504F /* Foundation.framework */,
+ );
+ name = Mac;
+ sourceTree = "";
+ };
+ 3DE3BAD11659087100CE504F /* MarkdownParserMacTests */ = {
+ isa = PBXGroup;
+ children = (
+ 3DE3BAD21659087100CE504F /* Supporting Files */,
+ );
+ path = MarkdownParserMacTests;
+ sourceTree = "";
+ };
+ 3DE3BAD21659087100CE504F /* Supporting Files */ = {
+ isa = PBXGroup;
+ children = (
+ 3DE3BAD31659087100CE504F /* MarkdownParserMacTests-Info.plist */,
+ 3DE3BAD41659087100CE504F /* InfoPlist.strings */,
+ 3DE3BADA1659087100CE504F /* MarkdownParserMacTests-Prefix.pch */,
+ );
+ name = "Supporting Files";
+ sourceTree = "";
+ };
3EB17E31161F17B100A27750 = {
isa = PBXGroup;
children = (
@@ -141,6 +264,8 @@
3EB17EB0161F197500A27750 /* libupskirt */,
3EB17E81161F183800A27750 /* App */,
3EB17E6A161F17B200A27750 /* Tests */,
+ 3DE3BA9B1658FF2E00CE504F /* MarkdownParserMac */,
+ 3DE3BAD11659087100CE504F /* MarkdownParserMacTests */,
3EB17E3F161F17B100A27750 /* Frameworks */,
3EB17E3D161F17B100A27750 /* Products */,
);
@@ -152,6 +277,8 @@
3EB17E3C161F17B100A27750 /* MarkdownParserApp.app */,
3EB17E63161F17B200A27750 /* MarkdownParserTests.octest */,
3EB17EA1161F189F00A27750 /* libMarkdownParser.a */,
+ 3DE3BA941658FF2E00CE504F /* MarkdownParserMac.framework */,
+ 3DE3BACD1659087100CE504F /* MarkdownParserMacTests.octest */,
);
name = Products;
sourceTree = "";
@@ -159,10 +286,12 @@
3EB17E3F161F17B100A27750 /* Frameworks */ = {
isa = PBXGroup;
children = (
+ 3DE3BABB165901C100CE504F /* Mac */,
3EB17E40161F17B100A27750 /* UIKit.framework */,
3EB17E42161F17B100A27750 /* Foundation.framework */,
3EB17E44161F17B100A27750 /* CoreGraphics.framework */,
3EB17E64161F17B200A27750 /* SenTestingKit.framework */,
+ 3DE3BA971658FF2E00CE504F /* Other Frameworks */,
);
name = Frameworks;
sourceTree = "";
@@ -241,7 +370,57 @@
};
/* End PBXGroup section */
+/* Begin PBXHeadersBuildPhase section */
+ 3DE3BA911658FF2E00CE504F /* Headers */ = {
+ isa = PBXHeadersBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 3DE3BB0A1659097400CE504F /* BOMarkdownParser.h in Headers */,
+ 3DE3BB0B16590AEA00CE504F /* OS-X-ObjC-Compatibility.h in Headers */,
+ 3DE3BABE165903B500CE504F /* NSFont+UIKitAdditions.h in Headers */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXHeadersBuildPhase section */
+
/* Begin PBXNativeTarget section */
+ 3DE3BA931658FF2E00CE504F /* MarkdownParserMac */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 3DE3BAA51658FF2E00CE504F /* Build configuration list for PBXNativeTarget "MarkdownParserMac" */;
+ buildPhases = (
+ 3DE3BA8F1658FF2E00CE504F /* Sources */,
+ 3DE3BA901658FF2E00CE504F /* Frameworks */,
+ 3DE3BA911658FF2E00CE504F /* Headers */,
+ 3DE3BA921658FF2E00CE504F /* Resources */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = MarkdownParserMac;
+ productName = MarkdownParserMac;
+ productReference = 3DE3BA941658FF2E00CE504F /* MarkdownParserMac.framework */;
+ productType = "com.apple.product-type.framework";
+ };
+ 3DE3BACC1659087100CE504F /* MarkdownParserMacTests */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = 3DE3BADB1659087100CE504F /* Build configuration list for PBXNativeTarget "MarkdownParserMacTests" */;
+ buildPhases = (
+ 3DE3BAC81659087100CE504F /* Sources */,
+ 3DE3BAC91659087100CE504F /* Frameworks */,
+ 3DE3BACA1659087100CE504F /* Resources */,
+ 3DE3BACB1659087100CE504F /* ShellScript */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ 3DE3BADF165908C000CE504F /* PBXTargetDependency */,
+ );
+ name = MarkdownParserMacTests;
+ productName = MarkdownParserMacTests;
+ productReference = 3DE3BACD1659087100CE504F /* MarkdownParserMacTests.octest */;
+ productType = "com.apple.product-type.bundle";
+ };
3EB17E3B161F17B100A27750 /* MarkdownParserApp */ = {
isa = PBXNativeTarget;
buildConfigurationList = 3EB17E75161F17B200A27750 /* Build configuration list for PBXNativeTarget "MarkdownParserApp" */;
@@ -303,15 +482,16 @@
isa = PBXProject;
attributes = {
CLASSPREFIX = BO;
- LastUpgradeCheck = 0450;
+ LastUpgradeCheck = 1240;
ORGANIZATIONNAME = "Bödewadt";
};
buildConfigurationList = 3EB17E36161F17B100A27750 /* Build configuration list for PBXProject "MarkdownParser" */;
compatibilityVersion = "Xcode 3.2";
- developmentRegion = English;
+ developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
+ Base,
);
mainGroup = 3EB17E31161F17B100A27750;
productRefGroup = 3EB17E3D161F17B100A27750 /* Products */;
@@ -321,11 +501,29 @@
3EB17EA0161F189F00A27750 /* MarkdownParser */,
3EB17E62161F17B200A27750 /* MarkdownParserTests */,
3EB17E3B161F17B100A27750 /* MarkdownParserApp */,
+ 3DE3BA931658FF2E00CE504F /* MarkdownParserMac */,
+ 3DE3BACC1659087100CE504F /* MarkdownParserMacTests */,
);
};
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
+ 3DE3BA921658FF2E00CE504F /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 3DE3BAA01658FF2E00CE504F /* InfoPlist.strings in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 3DE3BACA1659087100CE504F /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 3DE3BAD61659087100CE504F /* InfoPlist.strings in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
3EB17E3A161F17B100A27750 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
@@ -349,6 +547,19 @@
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
+ 3DE3BACB1659087100CE504F /* ShellScript */ = {
+ isa = PBXShellScriptBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ );
+ inputPaths = (
+ );
+ outputPaths = (
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ shellPath = /bin/sh;
+ shellScript = "# Run the unit tests in this test bundle.\n\"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests\"\n";
+ };
3EB17E61161F17B200A27750 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
@@ -365,6 +576,27 @@
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
+ 3DE3BA8F1658FF2E00CE504F /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 3DE3BAAA1658FF9500CE504F /* BOMarkdownParser.m in Sources */,
+ 3DE3BAAC1658FF9B00CE504F /* array.c in Sources */,
+ 3DE3BAAD1658FF9D00CE504F /* buffer.c in Sources */,
+ 3DE3BAAE1658FF9F00CE504F /* markdown.c in Sources */,
+ 3DE3BAAB1658FF9800CE504F /* NSAttributedString+Markdown.m in Sources */,
+ 3DE3BABF165903B500CE504F /* NSFont+UIKitAdditions.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+ 3DE3BAC81659087100CE504F /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 3DE3BAE2165908E900CE504F /* MarkdownParserTests.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
3EB17E38161F17B100A27750 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
@@ -398,6 +630,11 @@
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
+ 3DE3BADF165908C000CE504F /* PBXTargetDependency */ = {
+ isa = PBXTargetDependency;
+ target = 3DE3BA931658FF2E00CE504F /* MarkdownParserMac */;
+ targetProxy = 3DE3BADE165908C000CE504F /* PBXContainerItemProxy */;
+ };
3E575BDC161F29FF00286500 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 3EB17E3B161F17B100A27750 /* MarkdownParserApp */;
@@ -411,6 +648,22 @@
/* End PBXTargetDependency section */
/* Begin PBXVariantGroup section */
+ 3DE3BA9E1658FF2E00CE504F /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 3DE3BA9F1658FF2E00CE504F /* en */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "";
+ };
+ 3DE3BAD41659087100CE504F /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 3DE3BAD51659087100CE504F /* en */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "";
+ };
3EB17E6D161F17B200A27750 /* InfoPlist.strings */ = {
isa = PBXVariantGroup;
children = (
@@ -422,7 +675,7 @@
3EB17E8A161F184D00A27750 /* BOViewController.xib */ = {
isa = PBXVariantGroup;
children = (
- 3EB17E8B161F184D00A27750 /* en */,
+ 3D9E54F12715962C003DE4C5 /* Base */,
);
name = BOViewController.xib;
sourceTree = "";
@@ -438,29 +691,143 @@
/* End PBXVariantGroup section */
/* Begin XCBuildConfiguration section */
+ 3DE3BAA61658FF2E00CE504F /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SYSTEM_APPS_DIR)/Xcode.app/Contents/Developer/Library/Frameworks\"",
+ );
+ FRAMEWORK_VERSION = A;
+ GCC_ENABLE_OBJC_EXCEPTIONS = YES;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "MarkdownParserMac/MarkdownParserMac-Prefix.pch";
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ INFOPLIST_FILE = "MarkdownParserMac/MarkdownParserMac-Info.plist";
+ INSTALL_PATH = "@rpath";
+ MACOSX_DEPLOYMENT_TARGET = 10.7;
+ ONLY_ACTIVE_ARCH = YES;
+ PRODUCT_BUNDLE_IDENTIFIER = "de.umzugsagenten.${PRODUCT_NAME:rfc1034identifier}";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SDKROOT = macosx;
+ WRAPPER_EXTENSION = framework;
+ };
+ name = Debug;
+ };
+ 3DE3BAA71658FF2E00CE504F /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ DYLIB_COMPATIBILITY_VERSION = 1;
+ DYLIB_CURRENT_VERSION = 1;
+ FRAMEWORK_SEARCH_PATHS = (
+ "$(inherited)",
+ "\"$(SYSTEM_APPS_DIR)/Xcode.app/Contents/Developer/Library/Frameworks\"",
+ );
+ FRAMEWORK_VERSION = A;
+ GCC_ENABLE_OBJC_EXCEPTIONS = YES;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "MarkdownParserMac/MarkdownParserMac-Prefix.pch";
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ INFOPLIST_FILE = "MarkdownParserMac/MarkdownParserMac-Info.plist";
+ INSTALL_PATH = "@rpath";
+ MACOSX_DEPLOYMENT_TARGET = 10.7;
+ PRODUCT_BUNDLE_IDENTIFIER = "de.umzugsagenten.${PRODUCT_NAME:rfc1034identifier}";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SDKROOT = macosx;
+ WRAPPER_EXTENSION = framework;
+ };
+ name = Release;
+ };
+ 3DE3BADC1659087100CE504F /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ FRAMEWORK_SEARCH_PATHS = "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"";
+ GCC_ENABLE_OBJC_EXCEPTIONS = YES;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "MarkdownParserMacTests/MarkdownParserMacTests-Prefix.pch";
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ INFOPLIST_FILE = "MarkdownParserMacTests/MarkdownParserMacTests-Info.plist";
+ MACOSX_DEPLOYMENT_TARGET = 10.7;
+ ONLY_ACTIVE_ARCH = YES;
+ PRODUCT_BUNDLE_IDENTIFIER = "de.umzugsagenten.${PRODUCT_NAME:rfc1034identifier}";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SDKROOT = macosx;
+ WRAPPER_EXTENSION = octest;
+ };
+ name = Debug;
+ };
+ 3DE3BADD1659087100CE504F /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ COMBINE_HIDPI_IMAGES = YES;
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ FRAMEWORK_SEARCH_PATHS = "\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"";
+ GCC_ENABLE_OBJC_EXCEPTIONS = YES;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "MarkdownParserMacTests/MarkdownParserMacTests-Prefix.pch";
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
+ INFOPLIST_FILE = "MarkdownParserMacTests/MarkdownParserMacTests-Info.plist";
+ MACOSX_DEPLOYMENT_TARGET = 10.7;
+ PRODUCT_BUNDLE_IDENTIFIER = "de.umzugsagenten.${PRODUCT_NAME:rfc1034identifier}";
+ PRODUCT_NAME = "$(TARGET_NAME)";
+ SDKROOT = macosx;
+ WRAPPER_EXTENSION = octest;
+ };
+ name = Release;
+ };
3EB17E73161F17B200A27750 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
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_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_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ 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[sdk=iphoneos*]" = "iPhone Developer";
COPY_PHASE_STRIP = NO;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
+ ENABLE_TESTABILITY = YES;
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;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 6.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
+ ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
};
name = Debug;
@@ -469,18 +836,40 @@
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
CLANG_CXX_LIBRARY = "libc++";
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_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_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
+ 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[sdk=iphoneos*]" = "iPhone Developer";
COPY_PHASE_STRIP = YES;
+ ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_NO_COMMON_BLOCKS = YES;
+ GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES;
+ GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 6.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.0;
OTHER_CFLAGS = "-DNS_BLOCK_ASSERTIONS=1";
SDKROOT = iphoneos;
VALIDATE_PRODUCT = YES;
@@ -493,6 +882,7 @@
GCC_PRECOMPILE_PREFIX_HEADER = YES;
INFOPLIST_FILE = "App/MarkdownParser-Info.plist";
OTHER_LDFLAGS = "-ObjC";
+ PRODUCT_BUNDLE_IDENTIFIER = "dk.boedewadt.${PRODUCT_NAME:rfc1034identifier}";
PRODUCT_NAME = "$(TARGET_NAME)";
WRAPPER_EXTENSION = app;
};
@@ -504,6 +894,7 @@
GCC_PRECOMPILE_PREFIX_HEADER = YES;
INFOPLIST_FILE = "App/MarkdownParser-Info.plist";
OTHER_LDFLAGS = "-ObjC";
+ PRODUCT_BUNDLE_IDENTIFIER = "dk.boedewadt.${PRODUCT_NAME:rfc1034identifier}";
PRODUCT_NAME = "$(TARGET_NAME)";
WRAPPER_EXTENSION = app;
};
@@ -519,6 +910,7 @@
"\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"",
);
INFOPLIST_FILE = "Tests/MarkdownParserTests-Info.plist";
+ PRODUCT_BUNDLE_IDENTIFIER = "dk.boedewadt.${PRODUCT_NAME:rfc1034identifier}";
PRODUCT_NAME = "$(TARGET_NAME)";
TEST_HOST = "$(BUNDLE_LOADER)";
WRAPPER_EXTENSION = octest;
@@ -535,6 +927,7 @@
"\"$(DEVELOPER_LIBRARY_DIR)/Frameworks\"",
);
INFOPLIST_FILE = "Tests/MarkdownParserTests-Info.plist";
+ PRODUCT_BUNDLE_IDENTIFIER = "dk.boedewadt.${PRODUCT_NAME:rfc1034identifier}";
PRODUCT_NAME = "$(TARGET_NAME)";
TEST_HOST = "$(BUNDLE_LOADER)";
WRAPPER_EXTENSION = octest;
@@ -568,6 +961,24 @@
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
+ 3DE3BAA51658FF2E00CE504F /* Build configuration list for PBXNativeTarget "MarkdownParserMac" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 3DE3BAA61658FF2E00CE504F /* Debug */,
+ 3DE3BAA71658FF2E00CE504F /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ 3DE3BADB1659087100CE504F /* Build configuration list for PBXNativeTarget "MarkdownParserMacTests" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ 3DE3BADC1659087100CE504F /* Debug */,
+ 3DE3BADD1659087100CE504F /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
3EB17E36161F17B100A27750 /* Build configuration list for PBXProject "MarkdownParser" */ = {
isa = XCConfigurationList;
buildConfigurations = (
diff --git a/MarkdownParser.xcodeproj/xcshareddata/xcschemes/MarkdownParser.xcscheme b/MarkdownParser.xcodeproj/xcshareddata/xcschemes/MarkdownParser.xcscheme
index 57bb65b..6a31c2e 100644
--- a/MarkdownParser.xcodeproj/xcshareddata/xcschemes/MarkdownParser.xcscheme
+++ b/MarkdownParser.xcodeproj/xcshareddata/xcschemes/MarkdownParser.xcscheme
@@ -1,6 +1,6 @@
+ shouldUseLaunchSchemeArgsEnv = "YES">
@@ -55,22 +55,30 @@
-
-
+
+
+
+
+ shouldUseLaunchSchemeArgsEnv = "YES">
+
+
+
+
@@ -39,26 +48,19 @@
-
-
-
-
-
+
-
-
-
+
+
+
+
+ CFBundleDevelopmentRegion
+ English
+ CFBundleExecutable
+ ${EXECUTABLE_NAME}
+ CFBundleIconFile
+
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundleName
+ ${PRODUCT_NAME}
+ CFBundlePackageType
+ FMWK
+ CFBundleShortVersionString
+ 1.0
+ CFBundleSignature
+ ????
+ CFBundleVersion
+ 1
+ NSHumanReadableCopyright
+ Copyright © 2012 Bödewadt. All rights reserved.
+ NSPrincipalClass
+
+
+
diff --git a/MarkdownParserMac/MarkdownParserMac-Prefix.pch b/MarkdownParserMac/MarkdownParserMac-Prefix.pch
new file mode 100644
index 0000000..a30cd5c
--- /dev/null
+++ b/MarkdownParserMac/MarkdownParserMac-Prefix.pch
@@ -0,0 +1,8 @@
+//
+// Prefix header for all source files of the 'MarkdownParserMac' target in the 'MarkdownParserMac' project
+//
+
+#ifdef __OBJC__
+ #import
+ #import "OS-X-ObjC-Compatibility.h"
+#endif
diff --git a/MarkdownParserMac/NSFont+UIKitAdditions.h b/MarkdownParserMac/NSFont+UIKitAdditions.h
new file mode 100644
index 0000000..58a1006
--- /dev/null
+++ b/MarkdownParserMac/NSFont+UIKitAdditions.h
@@ -0,0 +1,17 @@
+//
+// NSFont+UIKitAdditions.h
+// MarkdownParser
+//
+// Created by Jan on 18.11.12.
+// Copyright (c) 2012 Bödewadt. All rights reserved.
+//
+
+#import
+
+@interface NSFont (UIKitAdditions)
+
++ (NSFont *)italicSystemFontOfSize:(CGFloat)size;
+
+- (NSFont *)fontWithSize:(CGFloat)size;
+
+@end
diff --git a/MarkdownParserMac/NSFont+UIKitAdditions.m b/MarkdownParserMac/NSFont+UIKitAdditions.m
new file mode 100644
index 0000000..963e04c
--- /dev/null
+++ b/MarkdownParserMac/NSFont+UIKitAdditions.m
@@ -0,0 +1,27 @@
+//
+// NSFont+UIKitAdditions.m
+// MarkdownParser
+//
+// Created by Jan on 18.11.12.
+// Copyright (c) 2012 Bödewadt. All rights reserved.
+//
+
+#import "NSFont+UIKitAdditions.h"
+
+@implementation NSFont (UIKitAdditions)
+
+// This can’t work, because no italic version of Lucida Grande is available!
++ (NSFont *)italicSystemFontOfSize:(CGFloat)size;
+{
+ NSFont *baseFont = [NSFont systemFontOfSize:((size == 0) ? [NSFont systemFontSize] : size)];
+ return [[NSFontManager sharedFontManager] convertFont:baseFont toHaveTrait:NSItalicFontMask];
+}
+
+- (NSFont *)fontWithSize:(CGFloat)size;
+{
+ NSFontDescriptor *fontDescriptor = [self fontDescriptor];
+ return [NSFont fontWithDescriptor:fontDescriptor size:((size == 0) ? [NSFont systemFontSize] : size)];
+}
+
+
+@end
diff --git a/MarkdownParserMac/en.lproj/InfoPlist.strings b/MarkdownParserMac/en.lproj/InfoPlist.strings
new file mode 100644
index 0000000..477b28f
--- /dev/null
+++ b/MarkdownParserMac/en.lproj/InfoPlist.strings
@@ -0,0 +1,2 @@
+/* Localized versions of Info.plist keys */
+
diff --git a/MarkdownParserMacTests/MarkdownParserMacTests-Info.plist b/MarkdownParserMacTests/MarkdownParserMacTests-Info.plist
new file mode 100644
index 0000000..169b6f7
--- /dev/null
+++ b/MarkdownParserMacTests/MarkdownParserMacTests-Info.plist
@@ -0,0 +1,22 @@
+
+
+
+
+ CFBundleDevelopmentRegion
+ en
+ CFBundleExecutable
+ ${EXECUTABLE_NAME}
+ CFBundleIdentifier
+ $(PRODUCT_BUNDLE_IDENTIFIER)
+ CFBundleInfoDictionaryVersion
+ 6.0
+ CFBundlePackageType
+ BNDL
+ CFBundleShortVersionString
+ 1.0
+ CFBundleSignature
+ ????
+ CFBundleVersion
+ 1
+
+
diff --git a/MarkdownParserMacTests/MarkdownParserMacTests-Prefix.pch b/MarkdownParserMacTests/MarkdownParserMacTests-Prefix.pch
new file mode 100644
index 0000000..3040d6d
--- /dev/null
+++ b/MarkdownParserMacTests/MarkdownParserMacTests-Prefix.pch
@@ -0,0 +1,8 @@
+//
+// Prefix header for all source files of the 'MarkdownParserMacTests' target in the 'MarkdownParserMacTests' project
+//
+
+#ifdef __OBJC__
+ #import
+ #import "OS-X-ObjC-Compatibility.h"
+#endif
diff --git a/MarkdownParserMacTests/en.lproj/InfoPlist.strings b/MarkdownParserMacTests/en.lproj/InfoPlist.strings
new file mode 100644
index 0000000..477b28f
--- /dev/null
+++ b/MarkdownParserMacTests/en.lproj/InfoPlist.strings
@@ -0,0 +1,2 @@
+/* Localized versions of Info.plist keys */
+
diff --git a/Source/BOMarkdownParser.h b/Source/BOMarkdownParser.h
index 7d5a9cc..bdafa2f 100644
--- a/Source/BOMarkdownParser.h
+++ b/Source/BOMarkdownParser.h
@@ -8,6 +8,10 @@
#import
+#if __MAC_OS_X_VERSION_MIN_REQUIRED
+ #import "OS-X-ObjC-Compatibility.h"
+#endif
+
@class UIFont;
@class UIColor;
@class NSMutableParagraphStyle;
diff --git a/Source/BOMarkdownParser.m b/Source/BOMarkdownParser.m
index b4e8725..ccbfe8b 100644
--- a/Source/BOMarkdownParser.m
+++ b/Source/BOMarkdownParser.m
@@ -9,7 +9,11 @@
#import "BOMarkdownParser.h"
#import "NSAttributedString+Markdown.h"
-#import
+#if TARGET_OS_IPHONE
+ #import
+#else
+ #import
+#endif
#import "markdown.h"
#import "buffer.h"
@@ -26,7 +30,7 @@ @interface BOMarkdownParser (Private)
- (void)setupAttributes;
- (void)preParseSetupAttributes;
-- (void)addAttribtuesToAttributedString:(NSMutableAttributedString *)output;
+- (void)addAttributesToAttributedString:(NSMutableAttributedString *)output;
@end
@@ -153,7 +157,7 @@ - (NSAttributedString *)parseString:(NSString *)input;
[_output appendAttributedString:[[NSAttributedString alloc] initWithString:bufferString attributes:baseAttributes]];
[_output beginEditing];
- [self addAttribtuesToAttributedString:_output];
+ [self addAttributesToAttributedString:_output];
[_output endEditing];
NSAttributedString *result = [_output copy];
@@ -182,7 +186,9 @@ - (void)setupAttributes;
self.listAttributes = @{NSParagraphStyleAttributeName: listParagraph};
self.listItemAttributes = @{};
- self.font = [UIFont systemFontOfSize:[UIFont systemFontSize]];
+#if TARGET_OS_IPHONE
+ CGFloat defaultSize = [UIFont systemFontSize];
+ self.font = [UIFont systemFontOfSize:defaultSize];
self.textColor = [UIColor blackColor];
self.emphasizeFont = ^(UIFont *originalFont){
@@ -194,6 +200,19 @@ - (void)setupAttributes;
CGFloat size = originalFont.pointSize;
return [UIFont boldSystemFontOfSize:size];
};
+#else
+ CGFloat defaultSize = [UIFont systemFontSize];
+ self.font = [UIFont fontWithName:@"Helvetica" size:defaultSize];
+ self.textColor = [UIColor blackColor];
+
+ self.emphasizeFont = ^(UIFont *originalFont){
+ return [[NSFontManager sharedFontManager] convertFont:originalFont toHaveTrait:NSItalicFontMask];
+ };
+
+ self.doubleEmphasizeFont = ^(UIFont *originalFont){
+ return [[NSFontManager sharedFontManager] convertFont:originalFont toHaveTrait:NSBoldFontMask];
+ };
+#endif
self.replaceLinkFont = self.doubleEmphasizeFont;
}
@@ -230,7 +249,7 @@ - (void)preParseSetupAttributes;
self.currentHeaderAttributes = self.headerAttributes;
}
-- (void)addAttribtuesToAttributedString:(NSMutableAttributedString *)output;
+- (void)addAttributesToAttributedString:(NSMutableAttributedString *)output;
{
[output updateFontAttributeInRangesWithStartMarker:startEmphMarker endMarker:endEmphMarker usingBlock:self.emphasizeFont];
[output updateFontAttributeInRangesWithStartMarker:startDoubleEmphMarker endMarker:endDoubleEmphMarker usingBlock:self.doubleEmphasizeFont];
diff --git a/Source/NSAttributedString+Markdown.m b/Source/NSAttributedString+Markdown.m
index 194af98..4a66be3 100644
--- a/Source/NSAttributedString+Markdown.m
+++ b/Source/NSAttributedString+Markdown.m
@@ -10,8 +10,11 @@
#import "NSAttributedString+Markdown.h"
#import
-#import
-
+#if TARGET_OS_IPHONE
+ #import
+#else
+ #import
+#endif
@implementation NSMutableAttributedString (BOMarkers)
diff --git a/Source/OS-X-ObjC-Compatibility.h b/Source/OS-X-ObjC-Compatibility.h
new file mode 100644
index 0000000..1199c93
--- /dev/null
+++ b/Source/OS-X-ObjC-Compatibility.h
@@ -0,0 +1,32 @@
+#ifndef _OS_X_OBJC_COMPATIBILITY_H_
+#define _OS_X_OBJC_COMPATIBILITY_H_
+
+#ifdef __MAC_OS_X_VERSION_MIN_REQUIRED
+
+#import
+
+
+// Types
+#define UIImage NSImage
+#define UIFont NSFont
+#define UIColor NSColor
+
+#define CGSize NSSize
+#define CGPoint NSPoint
+#define CGRect NSRect
+
+// Functions
+#define CGSizeMake NSMakeSize
+#define CGPointMake NSMakePoint
+#define CGRectMake NSMakeRect
+#define CGRectDivide NSDivideRect
+
+// Constants
+#define CGRectMinXEdge NSMinXEdge
+#define CGRectMinYEdge NSMinYEdge
+#define CGRectMaxXEdge NSMaxXEdge
+#define CGRectMaxYEdge NSMaxYEdge
+
+#endif
+
+#endif /* _OS_X_OBJC_COMPATIBILITY_H_ */
diff --git a/Submodules/libupskirt b/Submodules/libupskirt
index d77a823..0309946 160000
--- a/Submodules/libupskirt
+++ b/Submodules/libupskirt
@@ -1 +1 @@
-Subproject commit d77a823e7a84b0990c7a47c02badce294e45bc83
+Subproject commit 030994695086d31ee58e075d4470f784349fb1a7
diff --git a/Tests/MarkdownParserTests-Info.plist b/Tests/MarkdownParserTests-Info.plist
index 5126b4a..169b6f7 100644
--- a/Tests/MarkdownParserTests-Info.plist
+++ b/Tests/MarkdownParserTests-Info.plist
@@ -7,7 +7,7 @@
CFBundleExecutable
${EXECUTABLE_NAME}
CFBundleIdentifier
- dk.boedewadt.${PRODUCT_NAME:rfc1034identifier}
+ $(PRODUCT_BUNDLE_IDENTIFIER)
CFBundleInfoDictionaryVersion
6.0
CFBundlePackageType
diff --git a/Tests/MarkdownParserTests.m b/Tests/MarkdownParserTests.m
index a7df9e5..0ead430 100644
--- a/Tests/MarkdownParserTests.m
+++ b/Tests/MarkdownParserTests.m
@@ -7,9 +7,14 @@
//
#import
-#import
+#if TARGET_OS_IPHONE
+ #import
+ #import "BOMarkdownParser.h"
+#else
+ #import
+ #import
+#endif
-#import "BOMarkdownParser.h"
#define BOAssertEqualRanges(a1, a2, description, ...) \
@@ -62,13 +67,27 @@ @interface MarkdownParserTests : SenTestCase
@implementation MarkdownParserTests
{
BOMarkdownParser *parser;
+
+ CGFloat defaultFontSize;
+ UIFont *defaultFont;
+ UIFont *defaultItalicFont;
+ UIFont *defaultBoldFont;
}
- (void)setUp
{
[super setUp];
+#if TARGET_OS_IPHONE
parser = [NSClassFromString(@"BOMarkdownParser") parser];
+#else
+ parser = [BOMarkdownParser parser];
+#endif
+
+ defaultFontSize = [parser.font pointSize];
+ defaultFont = parser.font;
+ defaultItalicFont = parser.emphasizeFont(defaultFont);
+ defaultBoldFont = parser.doubleEmphasizeFont(defaultFont);
}
- (void)tearDown
@@ -87,17 +106,17 @@ - (void)testEmphasis;
NSRange range;
NSDictionary *attr = [output attributesAtIndex:0 longestEffectiveRange:&range inRange:NSMakeRange(0, [output length])];
- NSDictionary *should = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [UIFont systemFontOfSize:14.]};
+ NSDictionary *should = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: defaultFont};
STAssertEqualObjects(attr, should, @"");
BOAssertEqualRanges(range, NSMakeRange(0, 4), @"");
attr = [output attributesAtIndex:6 longestEffectiveRange:&range inRange:NSMakeRange(0, [output length])];
- should = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [UIFont italicSystemFontOfSize:14.]};
+ should = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: defaultItalicFont};
STAssertEqualObjects(attr, should, @"");
BOAssertEqualRanges(range, NSMakeRange(4, 3), @"");
attr = [output attributesAtIndex:8 longestEffectiveRange:&range inRange:NSMakeRange(0, [output length])];
- should = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [UIFont systemFontOfSize:14.]};
+ should = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: defaultFont};
STAssertEqualObjects(attr, should, @"");
BOAssertEqualRanges(range, NSMakeRange(7, 5), @"");
}
@@ -114,7 +133,7 @@ - (void)testList;
STAssertNotNil(output, @"");
STAssertEqualObjects([output string], @"Here's a list:\n•\taaa\n•\tbbb\n•\tccc\nAnd that's it.\n", @"");
- NSDictionary *shouldAttr = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [UIFont systemFontOfSize:14.]};
+ NSDictionary *shouldAttr = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: defaultFont};
NSMutableDictionary *shouldListAttr = [NSMutableDictionary dictionaryWithDictionary:shouldAttr];
[shouldListAttr addEntriesFromDictionary:parser.listAttributes];
@@ -158,10 +177,10 @@ - (void)testHeaders;
STAssertNotNil(output, @"");
STAssertEqualObjects([output string], @"Header 1\nLorem ipsum.\nHeader 2\nLorem ipsum.\nHeader 3\nLorem ipsum.\n", @"");
- NSDictionary *shouldAttr = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [UIFont systemFontOfSize:14.]};
- NSDictionary *shouldAttrHeader1 = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [UIFont boldSystemFontOfSize:24.]};
- NSDictionary *shouldAttrHeader2 = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [UIFont boldSystemFontOfSize:20.]};
- NSDictionary *shouldAttrHeader3 = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [UIFont boldSystemFontOfSize:18.]};
+ NSDictionary *shouldAttr = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: defaultFont};
+ NSDictionary *shouldAttrHeader1 = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [defaultBoldFont fontWithSize:(defaultFontSize + 10.0)]};
+ NSDictionary *shouldAttrHeader2 = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [defaultBoldFont fontWithSize:(defaultFontSize + 6.0)]};
+ NSDictionary *shouldAttrHeader3 = @{NSForegroundColorAttributeName: [UIColor blackColor], NSFontAttributeName: [defaultBoldFont fontWithSize:(defaultFontSize + 4.0)]};
NSRange range;
NSDictionary *attr = [output attributesAtIndex:0 longestEffectiveRange:&range inRange:NSMakeRange(0, [output length])];