Skip to content

Commit 8f311bf

Browse files
author
LHammer
committed
🗃️feat: support rename tpl Files
1 parent 1ed97cf commit 8f311bf

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

lib/generate.js

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,33 @@ function filterFiles (filters) {
5252
}
5353
}
5454

55+
/**
56+
* Create a middleware for rename files.
57+
*
58+
* @param {Object} filters meta.js中filters对象
59+
* @return {Function}
60+
*/
61+
function renameTplFiles () {
62+
return (files, metalsmith, done) => {
63+
const fileNames = Object.keys(files)
64+
const metalsmithMetadata = metalsmith.metadata()
65+
66+
fileNames.forEach(file => {
67+
if (file === 'src/app/template/index.tpl') {
68+
const newFile = `src/app/template/${metalsmithMetadata.name}.tpl`
69+
files[newFile] = files[file]
70+
delete files[file]
71+
}
72+
if (file === 'src/web/template.tpl') {
73+
const newFile = `src/web/${metalsmithMetadata.name}.tpl`
74+
files[newFile] = files[file]
75+
delete files[file]
76+
}
77+
})
78+
done()
79+
}
80+
}
81+
5582
/**
5683
* Create a middleware for render template files.
5784
*
@@ -108,6 +135,7 @@ module.exports = (name, src, dest, done) => {
108135
metalsmith
109136
.use(askQuestions(opts.prompts))
110137
.use(filterFiles(opts.filters))
138+
.use(renameTplFiles(opts.filters))
111139
.use(renderTemplateFiles(opts.skipInterpolation))
112140

113141
metalsmith

0 commit comments

Comments
 (0)