V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Daring Fireball: Markdown
CommonMark
MacDown Open Source Markdown Editor
Marked
GitHub Flavored Markdown
amoblin
V2EX  ›  Markdown

由markdown脚本和gcc命令想到的

  •  
  •   amoblin · 2013-02-05 20:36:33 +08:00 · 4404 次点击
    这是一个创建于 4097 天前的主题,其中的信息可能已经有所发展或是发生改变。
    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将文档和程序统一起来的思想,你觉得呢?
    5 条回复    1970-01-01 08:00:00 +08:00
    amoblin
        1
    amoblin  
    OP
       2013-02-05 20:38:39 +08:00
    这是marboo的演示视频:

    hahastudio
        2
    hahastudio  
       2013-02-05 21:12:43 +08:00
    这就是编译啊,把一种语言翻译成另一种语言
    amoblin
        3
    amoblin  
    OP
       2013-02-05 21:42:05 +08:00
    @hahastudio 算广义的编译,或者说转换更好。基于这个角度,我们可以把文档像程序一样管理,使用vim编辑,用git维护。而写程序也像写文档一样,我们只关心源输入和最终输出,不用每次手工敲gcc命令,而是自动更新的。
    sinxccc
        4
    sinxccc  
       2013-02-05 23:26:23 +08:00
    Literate programming

    其实你可以更进一步,把所有的文本“织”起来,而不是独立的文件。至于怎么“织”起来,可以参考 org-mode。
    amoblin
        5
    amoblin  
    OP
       2013-02-06 15:08:47 +08:00
    @sinxccc org-mode还没研究过。等Linux版Marboo开发完了,研究一下Emacs。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5409 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 03:38 · PVG 11:38 · LAX 20:38 · JFK 23:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.