zoukankan      html  css  js  c++  java
  • 关于Ldoc

    • ldoc是在lua中很方便的注释文档生成工具,比luadoc更强大,并且其逻辑是由lua代码编写,方便自己修改和理解源码
    • ldoc依赖luafilesystem和pl库
    • luafilesystem在 https://github.com/keplerproject/luafilesystem,是用c编写的跨平台的文件操作库,其源码可作为c导出到lua的模范来学习,这里需要将其编译成so
    • pl库在 https://github.com/stevedonovan/Penlight,是用纯lua编写的一系列lua工具库,有兴趣可以学习学习,这里需要将pl目录放到ldoc同层目录
    • 关于ldoc,luafilesystem,pl都支持通过lua模块管理工具luarocks快捷安装,luarocks有点类似nodejs的npm
    • 关于文档如何生成可以参考:http://stevedonovan.github.io/ldoc/,另外该网页文档也是通过ldoc生成的
    • 在项目中可能需要根据实际项目情况对ldoc源码进行修改,这里使用ldoc版本为 1.4.3:
      • html页面左边部分宽度因为实际项目的多层次目录,模块名可能很长,需要增加宽度,其css代码在html/ldoc_css.lua文件中,163行navigation的width和197行content的margin-left值可同时修改为24em,然后去除199行content的 700px,这样整个页面显示将更宽阔
      • html/ldoc_ltp.lua中部分可加上自定义的标识
      • doc.lua在322-324行做了处理,当当前的函数的模块和文件的模块名一致时,则重新设置item.name为funcname,然后在后面的346行对此种情况进行特殊处理,解析然后自动加上模块和间隔符,但这种情况下实际破坏了真实的函数结构,将其统一与模块名相同的函数全设为" : ",从而在帮助文档中便不知到底是" "方法还是" "方法,所以这里注释掉这三行代码
        -- ifthat's the mod_name, then we want to only use 'foo'
        -- if mod == this_mod.mod_name andthis_mod.tags.pragma ~= 'nostrip' then
        --    item.name = fname
        --end
      • 在builtin/globals.lua设置了在线的lua帮助文档路径,这里可以自助下载离线文档,然后修改路径,另外5.3发布,如有需求参照5.1和5.2也可加上5.3的manual 
  • 相关阅读:
    物理机与虚拟机互通
    error while loading shared libraries: libevent-2.2.so.1: cannot open shared object file: No such file or directory
    DateTime.Now.ToFileTime
    洛谷-P2249 【深基13.例1】查找
    洛谷-P3817 小A的糖果
    洛谷-P3612 [USACO17JAN]Secret Cow Code S
    洛谷-P5019 铺设道路
    洛谷-P2437 蜜蜂路线
    洛谷-P1044 栈
    洛谷-P1255 数楼梯
  • 原文地址:https://www.cnblogs.com/jncpp/p/4230315.html
Copyright © 2011-2022 走看看