unused-files.mjs 795 B

12345678910111213141516171819202122232425262728293031
  1. #!/usr/bin/env node
  2. import { sync } from 'glob';
  3. import { readFileSync } from 'node:fs';
  4. import { join, dirname } from 'node:path';
  5. import { fileURLToPath } from 'node:url';
  6. const __dirname = dirname(fileURLToPath(import.meta.url))
  7. const srcDir = join(__dirname, '..')
  8. let foundFiles = []
  9. sync(`${srcDir}/pages/**/*.{html,md}`).forEach((file) => {
  10. let fileContent = readFileSync(file)
  11. fileContent.toString().replace(/\{% include(_cached)? "([a-z0-9\/_-]+\.html)"/g, (f, c, filename) => {
  12. filename = `${srcDir}/pages/_includes/${filename}`
  13. if (!foundFiles.includes(filename)) {
  14. foundFiles.push(filename)
  15. }
  16. })
  17. })
  18. let includeFiles = sync(`${srcDir}/pages/_includes/**/*.html`)
  19. includeFiles.forEach((file) => {
  20. if (!foundFiles.includes(file)) {
  21. console.log('file', file)
  22. }
  23. })