由markdown脚本和gcc命令想到的

2013-02-05 20:36:33 +08:00
 amoblin
markdown脚本用来将markdown文件转化为html文件
gcc命令将c源文件转化为可执行文件,执行后输出结果。

两者有相通之处吗?

是的。他们的输入和输出都是文本内容。

amoblin在Marboo的用户手册里这么写:

Marboo将文档和程序抽象为如下3步:

1. 输入 (markdown等置标语言文档、python等脚本语言文件、c等编译语言源程序)
2. 处理 (markdown的perl脚本、python脚本的python命令、c的gcc命令)
3. 输出 (markdown等置标语言的HTML输出,python等脚本的执行结果,c等源文件的编译执行结果)

可以看出,上述3步中的内容有一个共同特点:都是文本类型。

只要是文本类型,那么就好管理了。大致来说,文本内容分3类:

* 将内容语法高亮显示的
* 直接显示内容的
* 作为HTML显示内容的

下面举了一个python脚本的例子:

http://marboo.biz/guide/#id2

这是Marboo将文档和程序统一起来的思想,你觉得呢?
4415 次点击
所在节点    Markdown
5 条回复
amoblin
2013-02-05 20:38:39 +08:00
hahastudio
2013-02-05 21:12:43 +08:00
这就是编译啊,把一种语言翻译成另一种语言
amoblin
2013-02-05 21:42:05 +08:00
@hahastudio 算广义的编译,或者说转换更好。基于这个角度,我们可以把文档像程序一样管理,使用vim编辑,用git维护。而写程序也像写文档一样,我们只关心源输入和最终输出,不用每次手工敲gcc命令,而是自动更新的。
sinxccc
2013-02-05 23:26:23 +08:00
Literate programming

其实你可以更进一步,把所有的文本“织”起来,而不是独立的文件。至于怎么“织”起来,可以参考 org-mode。
amoblin
2013-02-06 15:08:47 +08:00
@sinxccc org-mode还没研究过。等Linux版Marboo开发完了,研究一下Emacs。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/59890

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX