36 lines
1.1 KiB
JavaScript
36 lines
1.1 KiB
JavaScript
|
const fs = require('fs')
|
||
|
const path = require('path')
|
||
|
|
||
|
const check = process.argv.includes('--check')
|
||
|
|
||
|
const dictsPath = path.resolve(__dirname, '..', '..', 'third_party', 'hunspell_dictionaries')
|
||
|
const gclientPath = 'third_party/hunspell_dictionaries'
|
||
|
|
||
|
const allFiles = fs.readdirSync(dictsPath)
|
||
|
|
||
|
const dictionaries = allFiles
|
||
|
.filter(file => path.extname(file) === '.bdic')
|
||
|
|
||
|
const licenses = allFiles
|
||
|
.filter(file => file.startsWith('LICENSE') || file.startsWith('COPYING'))
|
||
|
|
||
|
const content = `hunspell_dictionaries = [
|
||
|
${dictionaries.map(f => `"//${path.posix.join(gclientPath, f)}"`).join(',\n ')},
|
||
|
]
|
||
|
|
||
|
hunspell_licenses = [
|
||
|
${licenses.map(f => `"//${path.posix.join(gclientPath, f)}"`).join(',\n ')},
|
||
|
]
|
||
|
`
|
||
|
|
||
|
const filenamesPath = path.resolve(__dirname, '..', 'filenames.hunspell.gni')
|
||
|
|
||
|
if (check) {
|
||
|
const currentContent = fs.readFileSync(filenamesPath, 'utf8')
|
||
|
if (currentContent !== content) {
|
||
|
throw new Error('hunspell filenames need to be regenerated, latest generation does not match current file. Please run node gen-hunspell-filenames.js')
|
||
|
}
|
||
|
} else {
|
||
|
fs.writeFileSync(filenamesPath, content)
|
||
|
}
|