Skip to content

v1.7.4

Choose a tag to compare

@LingNc LingNc released this 07 Jan 12:33
· 15 commits to main since this release

更新内容

  1. 修复:-f/-F 参数情况下如果有范围过滤选项会覆盖掉后面的 ! 排除项。例如 dir2txt -d xxxx -f '*' '!xxxx.file' 会导致 xxxx.file 一起被排除。
  2. 新增:--gitignore 配置项(默认硬过滤),会按照 git 的排除方法对该文件夹中包含的 .gitignore 进行排除,包括子文件夹的 .gitignore 就像 git 一样。并且使用该选项的时候会忽略原本自带的 build 等忽略项,只会根据 .gitignore 中的规则进行过滤(但是会过滤 .git 文件夹)。该选项和 -Fc/-fc 互斥。使用 -f 修饰该选项可以修改其过滤性质。
  3. 新增:--default 命令用来添加默认排除规则。
  4. 新增:--all 命令用来清除前面所有的规则,默认将所有文件加入。
  5. 调整:采用顺序优先级,默认排除规则首先添加(优先级最低),其次按照从左到右优先级依次升高,后面的规则可以覆盖前面的规则,实现更精细化操作。

使用说明:

  1. dir2txt 无参数,默认相当于 dir2txt -F '.git' '.idea' '.vscode' 'node_modules' '__pycache__' 'dist' 'build' 'vendor' 'bin' 'obj' 'target' '.next' 'coverage' -f '*.png' '*.jpg' '*.jpeg' '*.gif' '*.ico' '*.svg' '*.mp4' '*.mp3' '*.wav' '*.webp' '*.zip' '*.tar' '*.gz' '*.7z' '*.rar' '*.exe' '*.dll' '*.so' '*.dylib' '*.class' '*.pyc' '*.o' '*.ttf' '*.woff' '*.woff2' '*.eot' '*.lock' '*.pdf' '*.ds_store'
  2. dir2txt -f node_modules 可以将 node_modules 目录保留在目录树中,但是不输出内容。
  3. dir2txt -f --gitignore 可以根据 .gitignore 规则进行软过滤。
  4. dir2txt --all --gitignore 可以先清除所有规则之后再应用 --gitignore 规则。
  5. dir2txt -F src/ -f src/main.go 可以将 src 目录完全过滤掉,但是保留 main.go 文件。
  6. dir2txt complex_test -f --gitignore '!app.log' -F 'temp/' 可以先将 gitignore 变成软过滤保留排除目录,之后还原 app.log 内容,最后移除 temp/ 在目标文件中的显示。

Full Changelog: v1.7.0...v1.7.4