3 Star 24 Fork 9

D2Projects / folder-explorer

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

扫描目录,分析文件结构和统计信息,给任意文件添加备注,导出带注释的树形文本和其它多种数据格式,大大方便书写技术文档。

如果你需要它,你会很爱它。如果你不需要,可能永远不会需要。

开发这个软件的初衷是为了方便我书写我的 项目文档,其中有一部分内容根据用户的反馈来看,需要详细展示项目的重要目录分别的作用。

我找了一下发现能实现导出这类树形结构文字的项目大致有两种,一类是网络上分享的脚本,一类是可以读取开源仓库信息的在线工具。

我的大致需求是,1 扫描目录 2 编辑注释 3 导出美观的结构图 4 可以隐藏我希望忽略的文件。现有的方案显然都不方便,所以我忙里偷闲制作了这个软件。

下载

macOS | windows | Linux

releases

功能

  • 扫描指定的目录(支持拖拽)以及再次扫描当前结果中的指定目录
  • 展示文件结构的树形统计,支持添加注释,隐藏单个文件或者文件夹内容
  • 文件类型统计
  • 文件体积分布统计
  • 导出文字构成的树形结构图,支持注释和自动对齐,支持自定义内容格式
  • 导出 json 文件和 xml 文件供其他软件或者程序使用
  • 导出 xmind 结构图,支持自定义节点、label 和注释的内容格式化
  • 自定义导出文件的名称预设
  • 注释信息记忆功能
  • 个性化设置的备份和导入
  • 其它丰富的设置选项

使用场景

  • 项目文档书写,附上文件结构和注释可以更清晰地让别人上手项目
  • 展示课程目录,如果你是讲师,可以一口气将你的课程所有章节生成树形结构展示
  • 统计某个资源文件夹中的文件大小分布,例如分析你的照片文件夹,或者一目了然磁盘里每部电影占了多大空间

技术方案

vue-cli3 生成的基础项目,使用 vue-cli-plugin-electron-builder 将其转化为可以使用 electron 打包的桌面项目。

详细功能介绍

所有演示基于下述的目录结构:

├─.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 

编辑器

展开和折叠节点

移除节点

添加注释

导出的结果:

├─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 
  1. 不会导出被折叠和隐藏的文件或目录,并且会根据折叠之后的状态重新计算树形结构。

  2. 备注有记忆功能,例如扫描 /a 目录后添加了注释,之后扫描了 /b 目录,当再次扫描 /a 目录后第一次添加的注释会自动还原。

打开文件

打开目录

扫描子文件夹

统计

文件类型统计

文件大小统计

导出

目前支持以下导出方式:

文本

json

xmind

xml

html

扫描

自定义扫描

支持自定义扫描忽略的文件夹和文件,并可以指定忽略的文件类型。

为方便快速设置,选项会自动根据当前的扫描结果改变。

自定义扫描深度

只扫描文件夹

忽略隐藏文件

支持设置忽略 . 开头的文件,因为这些文件在 macOS 和 Linux 上是隐藏的

预设文件名

几乎所有的导出都支持自定义文件名,并支持多种占位符,请注意输入框右上角的提示:

点击提示之后会弹出这个位置所有可用的占位符,点击占位符可以快速复制到剪贴板:

占位符示例:

注:在一些其它的设置位置也支持占位符,例如设置备注的格式化,脑图的节点内容等。

支持

如果觉得我的代码写的还不错,或者这个项目使你收益,欢迎小小的打赏支持开源。

技术交流

其它开源项目

MIT License Copyright (c) 2019 李杨 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

暂无描述 展开 收起
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
1
https://gitee.com/d2-projects/folder-explorer.git
git@gitee.com:d2-projects/folder-explorer.git
d2-projects
folder-explorer
folder-explorer
master

搜索帮助