Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions MMMarkdown.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
objects = {

/* Begin PBXBuildFile section */
B9FD4F131DE8D48E00DD679D /* MMChecklistTests.m in Sources */ = {isa = PBXBuildFile; fileRef = B9FD4F121DE8D48E00DD679D /* MMChecklistTests.m */; };
BE23E8FC1C0CF4190087F587 /* MMMarkdown.h in Headers */ = {isa = PBXBuildFile; fileRef = BE813DE214F893EB00EC9469 /* MMMarkdown.h */; };
BE23E8FD1C0CF4190087F587 /* MMMarkdown.m in Sources */ = {isa = PBXBuildFile; fileRef = BE813DE314F893EB00EC9469 /* MMMarkdown.m */; };
BE23E8FE1C0CF4190087F587 /* MMMarkdown-Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = BE813DE114F893EB00EC9469 /* MMMarkdown-Prefix.pch */; };
Expand Down Expand Up @@ -272,6 +273,7 @@
/* End PBXCopyFilesBuildPhase section */

/* Begin PBXFileReference section */
B9FD4F121DE8D48E00DD679D /* MMChecklistTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MMChecklistTests.m; sourceTree = "<group>"; };
BE1DB5D41514184000B26092 /* MMSpanTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MMSpanTests.m; sourceTree = "<group>"; };
BE1DB5D915143F4200B26092 /* MMBlockTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MMBlockTests.m; sourceTree = "<group>"; };
BE1DB5DC1515032F00B26092 /* MMLinkTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MMLinkTests.m; sourceTree = "<group>"; };
Expand Down Expand Up @@ -497,6 +499,7 @@
BEAAEB421549DD1700EF1EA0 /* MMImageTests.m */,
BE1DB5DC1515032F00B26092 /* MMLinkTests.m */,
BE813E9A15031B4000EC9469 /* MMListTests.m */,
B9FD4F121DE8D48E00DD679D /* MMChecklistTests.m */,
BE1DB5D41514184000B26092 /* MMSpanTests.m */,
BE813DF714F893EB00EC9469 /* MMMarkdownTests.h */,
BE813DF814F893EB00EC9469 /* MMMarkdownTests.m */,
Expand Down Expand Up @@ -913,6 +916,7 @@
BED761871B37783100687B36 /* MMImageTests.m in Sources */,
BED761821B37783100687B36 /* MMBlockTests.m in Sources */,
BED7618C1B37783100687B36 /* MMPHPMarkdownTests.m in Sources */,
B9FD4F131DE8D48E00DD679D /* MMChecklistTests.m in Sources */,
BED7618B1B37783100687B36 /* MMMarkdownTests.m in Sources */,
BED761851B37783100687B36 /* MMExtensionTests.m in Sources */,
);
Expand Down
6 changes: 6 additions & 0 deletions Source/MMElement.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,12 @@ typedef enum
MMElementTypeNumberedList,
MMElementTypeBulletedList,
MMElementTypeListItem,
MMElementTypeMinusChecklist,
MMElementTypePlusChecklist,
MMElementTypeAsteriskChecklist,
MMElementTypeNumberedChecklist,
MMElementTypeChecklistCheckedItem,
MMElementTypeChecklistUncheckedItem,
MMElementTypeCodeBlock,
MMElementTypeHorizontalRule,
MMElementTypeHTML,
Expand Down
21 changes: 21 additions & 0 deletions Source/MMGenerator.m
Original file line number Diff line number Diff line change
Expand Up @@ -92,6 +92,18 @@
return @"<ol>\n";
case MMElementTypeListItem:
return @"<li>";
case MMElementTypeMinusChecklist:
return @"<ul class=\"contains-task-list contains-task-list-minus\">\n";
case MMElementTypePlusChecklist:
return @"<ul class=\"contains-task-list contains-task-list-plus\">\n";
case MMElementTypeAsteriskChecklist:
return @"<ul class=\"contains-task-list contains-task-list-asterisk\">\n";
case MMElementTypeNumberedChecklist:
return @"<ol class=\"contains-task-list\">\n";
case MMElementTypeChecklistCheckedItem:
return @"<li class=\"task-list-item\"><input type=\"checkbox\" class=\"task-list-item-checkbox\" checked=\"\" /> ";
case MMElementTypeChecklistUncheckedItem:
return @"<li class=\"task-list-item\"><input type=\"checkbox\" class=\"task-list-item-checkbox\" /> ";
case MMElementTypeBlockquote:
return @"<blockquote>\n";
case MMElementTypeCodeBlock:
Expand Down Expand Up @@ -167,6 +179,15 @@
return @"</ol>\n";
case MMElementTypeListItem:
return @"</li>\n";
case MMElementTypeMinusChecklist:
case MMElementTypePlusChecklist:
case MMElementTypeAsteriskChecklist:
return @"</ul>\n";
case MMElementTypeNumberedChecklist:
return @"</ol>\n";
case MMElementTypeChecklistCheckedItem:
case MMElementTypeChecklistUncheckedItem:
return @"</li>\n";
case MMElementTypeBlockquote:
return @"</blockquote>\n";
case MMElementTypeCodeBlock:
Expand Down
3 changes: 2 additions & 1 deletion Source/MMMarkdown.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,8 +45,9 @@ typedef NS_OPTIONS(NSUInteger, MMMarkdownExtensions)
// MMMarkdownExtensionsTableCaptions = 1 << 7,
MMMarkdownExtensionsTables = 1 << 8,
MMMarkdownExtensionsUnderscoresInWords = 1 << 9,
MMMarkdownExtensionsTaskList = 1 << 10, // https://github.com/blog/1375-task-lists-in-gfm-issues-pulls-comments

MMMarkdownExtensionsGitHubFlavored = MMMarkdownExtensionsAutolinkedURLs|MMMarkdownExtensionsFencedCodeBlocks|MMMarkdownExtensionsHardNewlines|MMMarkdownExtensionsStrikethroughs|MMMarkdownExtensionsTables|MMMarkdownExtensionsUnderscoresInWords,
MMMarkdownExtensionsGitHubFlavored = MMMarkdownExtensionsAutolinkedURLs|MMMarkdownExtensionsFencedCodeBlocks|MMMarkdownExtensionsHardNewlines|MMMarkdownExtensionsStrikethroughs|MMMarkdownExtensionsTables|MMMarkdownExtensionsUnderscoresInWords|MMMarkdownExtensionsTaskList,
};

NS_ASSUME_NONNULL_BEGIN
Expand Down
Loading