我正在用 Objective-C 编写一个 Cocoa 应用程序,并且我希望能够合并 Markdown。用户以 Markdown 语法输入文本,单击“导出”按钮,程序将输出 XHTML 文件。
不过,似乎有很多选择。我可以使用其中之一C/C++ 实现 https://stackoverflow.com/questions/889434/markdown-implementations-for-c-c, 我可以将 Perl 脚本作为我的 Cocoa 应用程序的资源运行 http://mailsteward.com/nickstek/?p=5,我假设可以使用 Python 实现和 PyObjC 桥或 Perl 实现和 CamelBones 或 PerlObjC 桥。最简单、最容易的解决方案是什么?我没有做任何复杂的事情,比如需要线程的实时渲染预览。
我查看了各种选项,最后发现库已售空 http://fossil.instinctive.eu/index.html,一个非常小的 C 实现,非常容易集成。你只需要在你的 Xcode 项目中包含 array.[ch]、buffer.[ch]、markdown.[ch] 和 renderers.[ch],然后你就可以将 NSString 从 markdown 转换为 HTML,如下所示:
NSString *rawMarkdown;
const char * prose = [rawMarkdown UTF8String];
struct buf *ib, *ob;
int length = rawMarkdown.length + 1;
ib = bufnew(length);
bufgrow(ib, length);
memcpy(ib->data, prose, length);
ib->size = length;
ob = bufnew(64);
markdown(ob, ib, &mkd_xhtml);
NSString *shinyNewHTML = [NSString stringWithUTF8String: ob->data];
NSLog(@"%@", shinyNewHTML);
bufrelease(ib);
bufrelease(ob);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)