1.drawio.io 二次开发记录
2.使用VScode+AsciiDoc+drawio+PlantUML设计文档真香
drawio.io 二次开发记录
导入IDE
增加本地和OSS存储的源码纯前端功能,以及各种修改位置介绍。分析
准备环境
项目默认使用打包好的源码app.min.js,若需修改代码,分析则需在请求参数中增加dev=1。源码
同时在index.html的分析官网素材源码line:处注释掉远程地址,以确保测试环境下能够请求本地修改后的源码js。
修改菜单
菜单相关设置位于js/diagramly/Menus.js中。分析例如,源码要删除File->share...功能,分析只需在该文件中搜索并注释掉对应的源码代码。
修改功能代码亦同理,分析从站ssc源码如将share...按钮修改为打开百度,源码只需在相应的分析代码中实现即可。
可以在浏览器控制台查看各种变量信息,源码如:
具体功能实现
发现菜单中默认弹出SQL转ER框功能很有意思,可以直接将SQL语句转成ER图。但由于路径较长,需要选择好几级菜单才能找到这个功能。如何让页面默认弹出这个编辑框?具体实现在\src\main\webapp\js\diagramly\Menus.js和\src\main\webapp\js\diagramly\Dialogs.js中,ParseDialog功能在\src\main\webapp\js\diagramly\Dialogs.js中实现,splash对话框的实现则在\src\main\webapp\js\diagramly\App.js中。
添加问题反馈
反馈功能使用腾讯的整数小数的源码兔小巢,将右上角的共享功能修改为URL共享,并添加一个问题反馈按钮。定位至右上角共享功能代码,在界面上点击共享->右键->检查,可在源代码中找到相应的地址。
文件菜单功能修改
功能仍在,但已删除“添加”至嵌入->google相关功能的代码替换。由于该功能需要使用官方地址,暂不启用。
帮助菜单修改
删除Fork me和获取桌面版本。每次打开页面时会提示下载桌面版本,抖数据源码可通过注释掉代码来禁用此功能。此功能代码位于\src\main\webapp\js\PreConfig.js中。
右上角语言列表修改
只需保留需要的语言即可。
修改通知功能
通知路径的定义。
首页修改
修改首页菜单搜索为百度,代码位于src\main\webapp\js\diagramly\Menus.js中。
首页报错
有时页面会提示错误加载文件或未选择文件,导致无法使用。关键词定位至代码src\main\webapp\js\diagramly\App.js。暂时注释掉这段代码,但运行一段时间后发现又会报错。过客源码铺最终发现需要将window.DRAWIO_LIGHTBOX_URL设置为null,原因在于src\main\webapp\js\diagramly\Init.js使用了这个变量。
部署上线
完成所有更改后,项目可以上线。在线画图地址提供。
未完成的事业
列出未完成的任务,如二次开发交流、参考文档、优秀项目和编码解密工具等。
使用VScode+AsciiDoc+drawio+PlantUML设计文档真香
技术文档编写,如何以技术手段提升效率?让我们来看看这个强大的组合:VScode+AsciiDoc+drawio+PlantUML,让你的文档编写体验升级。
首先,VScode作为开发者的首选工具,以其强大的代码编辑能力闻名,丰富的插件生态几乎覆盖所有语言开发,是前端开发的得力助手。它不仅是开发环境,也是文档编辑的得力后盾。
接着是AsciiDoc,这个在Java社区广泛应用的文档格式,语法类似Markdown,但功能更全面。虽然上手可能需要一点学习,但其原生支持的特性如作者信息、版本管理、表格等,使得编写文档更为便捷。特别提醒,导出PDF时可能遇到乱码问题,需要调整VScode插件和字体设置,比如使用AsciiDoc主题下的字体方案。
相较于Markdown,AsciiDoc像是一个更精简且功能强大的替代品。它无需额外学习HTML扩展,能直接满足大部分文档编撰需求。例如,你可以在 AsciiDoc 中直接添加自定义块和文档引用,提高编写效率。
draw.io作为在线流程图绘制工具,无需安装,浏览器就能使用。它支持各类图表类型,包括流程图、软件图等,甚至可通过VScode插件直接在编辑器内操作,十分方便。虽然在线版速度可能稍慢,但其灵活性让人印象深刻。
对于需要高级图表的场景,如UML图,PlantUML是不二之选。它支持编码绘图,范围超出UML,让图形设计更专业。通过PlantUML中文官网,你可以找到更多关于它的详细信息。
总结来说,这个组合——在VScode中编写AsciiDoc文档,结合drawio绘制图表,再加上PlantUML的图形支持,无疑为技术文档的编写增添了极大的便利。你可以在github.com/hangcheng/As...找到相关的源码示例,开始你的高效文档之旅吧。