扫描目录,分析文件结构和统计信息,给任意文件添加备注,导出带注释的树形文本和其它多种数据格式,大大方便书写技术文档。css
若是你须要它,你会很爱它。若是你不须要,可能永远不会须要。html
开发这个软件的初衷是为了方便我书写个人 项目文档,其中有一部份内容根据用户的反馈来看,须要详细展现项目的重要目录分别的做用。vue
我找了一下发现能实现导出这类树形结构文字的项目大体有两种,一类是网络上分享的脚本,一类是能够读取开源仓库信息的在线工具。git
个人大体需求是,1 扫描目录 2 编辑注释 3 导出美观的结构图 4 能够隐藏我但愿忽略的文件。现有的方案显然都不方便,因此我忙里偷闲制做了这个软件。github
macOS | windows | Linuxvue-cli
releasesjson
vue-cli3 生成的基础项目,使用 vue-cli-plugin-electron-builder 将其转化为可使用 electron 打包的桌面项目。windows
全部演示基于下述的目录结构:bash
├─.DS_Store
├─.browserslistrc
├─.gitignore
├─README.md
├─babel.config.js
├─package.json
├─postcss.config.js
├─public
│ ├─favicon.ico
│ └─index.html
├─src
│ ├─App.vue
│ ├─assets
│ │ └─sys
│ │ └─logo
│ │ └─w200.png
│ ├─components
│ │ └─HelloWorld.vue
│ ├─layout
│ │ └─headerAside
│ │ ├─components
│ │ │ ├─aside
│ │ │ │ ├─index.vue
│ │ │ │ └─style.scss
│ │ │ └─header
│ │ │ ├─index.vue
│ │ │ └─style.scss
│ │ └─index.vue
│ └─main.js
└─yarn.lock
复制代码
导出的结果:babel
├─README.md --------------- // 介绍
├─babel.config.js
├─package.json
├─postcss.config.js
├─public ------------------ // 公共资源
│ ├─favicon.ico
│ └─index.html
├─src
│ ├─App.vue --------------- // 根组件
│ ├─assets
│ │ └─sys
│ │ └─logo
│ │ └─w200.png
│ ├─components
│ │ └─HelloWorld.vue
│ ├─layout
│ │ └─headerAside
│ │ ├─components
│ │ │ ├─aside
│ │ │ │ ├─index.vue
│ │ │ │ └─style.scss
│ │ │ └─header
│ │ │ ├─index.vue
│ │ │ └─style.scss
│ │ └─index.vue
│ └─main.js
└─yarn.lock
复制代码
不会导出被折叠和隐藏的文件或目录,而且会根据折叠以后的状态从新计算树形结构。
备注有记忆功能,例如扫描 /a
目录后添加了注释,以后扫描了 /b
目录,当再次扫描 /a
目录后第一次添加的注释会自动还原。
目前支持如下导出方式:
支持自定义扫描忽略的文件夹和文件,并能够指定忽略的文件类型。
为方便快速设置,选项会自动根据当前的扫描结果改变。
支持设置忽略 .
开头的文件,由于这些文件在 macOS 和 Linux 上是隐藏的
几乎全部的导出都支持自定义文件名,并支持多种占位符,请注意输入框右上角的提示:
点击提示以后会弹出这个位置全部可用的占位符,点击占位符能够快速复制到剪贴板:
占位符示例:
注:在一些其它的设置位置也支持占位符,例如设置备注的格式化,脑图的节点内容等。