目前文档是用 gitbook 写的, 200 多个页面, build 一次太慢了,请问有什么好的替代方案? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
JJstyle
V2EX    程序员

目前文档是用 gitbook 写的, 200 多个页面, build 一次太慢了,请问有什么好的替代方案?

  •  
  •   JJstyle 2020-09-08 11:29:44 +08:00 6261 次点击
    这是一个创建于 1863 天前的主题,其中的信息可能已经有所发展或是发生改变。

    目前 build 一次需要 100 多秒,有点无法接受,请问有什么好的替代方案? 要求:

    1. 不能破坏当前的目录结构,可复用 SUMMARY.md 当做菜单或者目录
    2. 能生成 PDF 文档(带有封面 /目录,非单个 md 文件生成)
    第 1 条附言    2020-09-08 12:05:04 +08:00

    Summary.md 是 gitbook 用于配置目录和菜单用的,举个例子:

    # Summary * [主页](README.md) * [最近更新](latest-updated.md) --- * [后端开发](backend/README.md) * [v3.9加值券部署指南](backend/README-v3.9-coupon.md) * [抢红包并发模拟](backend/coupon-concurrency.md) * [MySQL部分字段解释](backend/mysql-field-types.md) * [datetime字段转timestamp](backend/db-datetime-2-timestamp.md) * [phpstorm使用技巧](backend/phpstorm.md) * [消息-在线推离线拉模式](backend/message-push-pull.md) 
    第 2 条附言    2020-09-09 11:47:50 +08:00
    1. 公司内部文档,所以不接受用任何托管服务;
    2. 有时候需要将部分文档生成 PDF (多页生成,包含目录和封面)给第三方。

    目前 gitbook cli 能用,就是太慢了。
    28 条回复    2020-09-09 23:15:45 +08:00
    755rQlBW742S6Fcc
        1
    755rQlBW742S6Fcc  
       2020-09-08 11:32:18 +08:00
    vuepress
    96412hj
        2
    96412hj  
       2020-09-08 11:32:52 +08:00
    jira confluence google doc 都可以呀
    JJstyle
        3
    JJstyle  
    OP
       2020-09-08 11:50:38 +08:00
    @qingjiaowochangd vuepress 看着不错,可以根据目录自动生成菜单吗?或者根据 SUMMARY.md 生成也行,我看需要在 js 文件中配置,似乎比较麻烦,我这 200 多个页面分 10 几个目录
    sidkang
        4
    sidkang  
       2020-09-08 12:02:04 +08:00
    docify,summary 稍微改改应该就可以直接用了
    sidkang
        5
    sidkang  
       2020-09-08 12:02:25 +08:00
    docsify 更正
    afc163
        6
    afc163  
       2020-09-08 12:03:39 +08:00   1
    dumi - 基于 Umi 、为组件开发场景而生的文档工具: https://d.umijs.org/
    Cbdy
        7
    Cbdy  
       2020-09-08 12:18:15 +08:00 via Android
    换语雀,支持导入 markdown
    matrix67
        8
    matrix67  
       2020-09-08 12:33:55 +08:00
    mdbook 直接可以用的。rust 写的
    matrix67
        9
    matrix67  
       2020-09-08 12:36:27 +08:00   4
    gitbook 里面明显用了油漆匠算法。


    ================
    老王得到一份当街道油漆匠的工作,工作内容是在马路中间喷涂点画线。第一天, 他拿出一罐漆来到他负责的路段,喷涂了 300 码长的线。“干得不错! ”他的老板称赞道, “真是一位麻利的工匠”,然后赏给他一个戈比(一种俄罗斯辅币,译者注)。

    第二天,老王只喷涂了 150 码。“喏,虽然不如昨天那样好,但你仍然算得上一位 麻利的工匠! 150 码还是值得肯定的一个长度,”老板说完又赏给他一戈比。

    接下来的一天,老王只喷涂了 30 码长的马路。“才 30 码!”他的老板吼道。“这太 令人难以接受了!第一天你干的工作量是今天的 10 倍!接下来是怎么回事?〃

    “我尽力了,”老王说道。“一天一天下去,我离油漆罐越来越远!〃
    matrix67
        10
    matrix67  
       2020-09-08 12:39:08 +08:00
    而且 https://news.ycombinator.com/item?id=23659451 这边也有一个大佬抱怨过。

    It became clear to me that, internally some sort of scaling problem is present in the code that manifests itself abruptly once the book hits a certain size.
    bless110
        11
    bless110  
       2020-09-08 12:46:56 +08:00
    我之前也用的 gitbook,然后改用的 docsify.js ,迁移比较顺利。你可以参考下 https://github.com/zhaohaodang/pro-js
    jorneyr
        12
    jorneyr  
       2020-09-08 13:16:48 +08:00
    我就是把 Gitbook 的改为了 Docsify,很容易
    zhbzhbzhbz
        13
    zhbzhbzhbz  
       2020-09-08 16:15:56 +08:00
    docsify
    yuhangch
        14
    yuhangch  
       2020-09-08 16:17:45 +08:00 via iPhone
    docsify,理论上稍微改改目录就可以了
    itskingname
        15
    itskingname  
       2020-09-08 16:30:17 +08:00
    @matrix67 为什么不带着油漆桶走呢
    matrix67
        16
    matrix67  
       2020-09-08 17:13:41 +08:00
    @itskingname #15

    所以才叫油漆匠算法啊。 你的算法是不能随着问题的规模 scale 的。

    比如 gitbook 渲染 10 个页面要 10 秒; 但是加一个页面,不是多花 1 秒,是多花 11 秒哦,他就是从头吭哧吭哧渲染起的油漆匠啊。

    755rQlBW742S6Fcc
        17
    755rQlBW742S6Fcc  
       2020-09-08 17:36:55 +08:00
    @JJstyle 你用代码改下这个文件 修改成 vuepress 的 config 就行了
    dnL
        18
    dnL  
       2020-09-08 17:44:19 +08:00
    @itskingname 我说我杀人不眨眼,你问我眼睛干不干?
    itskingname
        19
    itskingname  
       2020-09-08 19:30:47 +08:00 via iPhone
    @matrix67 明白了,感谢
    anUglyDog
        20
    anUglyDog  
       2020-09-08 21:44:22 +08:00
    mlboy
        21
    mlboy  
       2020-09-09 02:45:02 +08:00 via iPhone
    不如换台新电脑?
    raaaaaar
        22
    raaaaaar  
       2020-09-09 07:02:45 +08:00 via Android
    没人用 mdbook ?模仿 gitbook 的,但编译速度快许多。
    12101111
        23
    12101111  
       2020-09-09 09:20:38 +08:00
    @raaaaaar 楼主要输出到 pdf,现在 mdbook 好像没有支持生成 pdf 书签的后端
    aiifabbf
        24
    aiifabbf  
       2020-09-09 09:47:58 +08:00
    sphinx <sphinx-doc.org/> 可以输出到各种格式( LaTeX, html, man page ),好像 Python 和 Swift 的官方文档都是用这个生成的。
    SpiritLingPub
        25
    SpiritLingPub  
       2020-09-09 11:03:00 +08:00
    我觉得你直接用看云吧,看云和 gitbook 很相似的,都是 summary 来设置目录,而且看云也是 git 管理的。
    JCZ2MkKb5S8ZX9pq
        26
    JCZ2MkKb5S8ZX9pq  
       2020-09-09 11:50:20 +08:00 via iPhone
    0703wzq
        27
    0703wzq  
       2020-09-09 18:56:06 +08:00
    docsify 无需编译。
    solider245
        28
    solider245  
       2020-09-09 23:15:45 +08:00
    我想知道 docsify 如何自动生成目录呢?文件少还好,多了的话,每篇文章都要写一个目录,扛不住啊
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     968 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 22:43 PVG 06:43 LAX 15:43 JFK 18:43
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86