text: #!/usr/bin/env node
  
  const path = require('path')
  const walk = require('walk-sync')
  const replace = require('replace')
  
  const FINDER = /{{\s?octicon-([a-z-]+)(\s[\w\s\d-]+)?\s?}}/g
  
  async function rewriteFiles (dir) {
    const files = walk(dir, { includeBasePath: true })
    replace({
      regex: FINDER,
      replacement: (match, p1, p2) => {
        if (p2) {
          return `{% octicon "${p1}" aria-label="${p2.trim()}" %}`
        } else {
          return `{% octicon "${p1}" %}`
        }
      },
      paths: files,
      recursive: true
    })
  }
  
  async function main () {
    const dirs = [
      path.join(__dirname, '../../content'),
      path.join(__dirname, '../../data'),
      path.join(__dirname, '../../translations')
    ]
  
    for (const dir of dirs) {
      await rewriteFiles(dir)
    }
  }
  
  main()
    .catch(console.error)
    .finally(() => console.log('Done!'))
  