@rse/nunjucks-cli 1.0.1 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -3
- package/nunjucks.js +12 -5
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -37,7 +37,7 @@ $ nunjucks
|
|
|
37
37
|
[-c|--config <config-file>]
|
|
38
38
|
[-d|--defines <context-file>]
|
|
39
39
|
[-D|--define <key>=<value>]
|
|
40
|
-
[-e|--extension <
|
|
40
|
+
[-e|--extension <module-name>]
|
|
41
41
|
[-o|--output <output-file>|-]
|
|
42
42
|
<input-file>|-
|
|
43
43
|
```
|
|
@@ -52,8 +52,8 @@ $ nunjucks
|
|
|
52
52
|
load context definition YAML file.
|
|
53
53
|
- `-D`|`--define` `<key>=<value>`:<br/>
|
|
54
54
|
set context definition key/value.
|
|
55
|
-
- `-e`|`--extension` `default|date|eval|<
|
|
56
|
-
load Nunjucks JavaScript extension (built-in or
|
|
55
|
+
- `-e`|`--extension` `default|date|eval|<module-name>`:<br/>
|
|
56
|
+
load Nunjucks JavaScript extension module (built-in or NPM installed).
|
|
57
57
|
- `-o`|`--output` `<output-file>`|`-`:<br/>
|
|
58
58
|
save output file (or stdout).
|
|
59
59
|
- `<input-file>`|`-`:<br/>
|
package/nunjucks.js
CHANGED
|
@@ -26,7 +26,7 @@ const argv = yargs
|
|
|
26
26
|
"[-c|--config <config-file>] " +
|
|
27
27
|
"[-d|--defines <context-file>] " +
|
|
28
28
|
"[-D|--define <key>=<value>] " +
|
|
29
|
-
"[-e|--extension <
|
|
29
|
+
"[-e|--extension <module-name>] " +
|
|
30
30
|
"[-o|--output <output-file>|-] " +
|
|
31
31
|
"<input-file>|-")
|
|
32
32
|
.version(false)
|
|
@@ -35,7 +35,7 @@ const argv = yargs
|
|
|
35
35
|
.string("c").nargs("c", 1).alias("c", "config").describe("c", "load Nunjucks configuration YAML file")
|
|
36
36
|
.string("d").nargs("d", 1).alias("d", "defines").describe("d", "load context definition YAML file")
|
|
37
37
|
.string("D").nargs("D", 1).alias("D", "define").describe("D", "set context definition key/value")
|
|
38
|
-
.array("e").nargs("e", 1).alias("e", "extension").describe("e", "load Nunjucks JavaScript extension
|
|
38
|
+
.array("e").nargs("e", 1).alias("e", "extension").describe("e", "load Nunjucks JavaScript extension module")
|
|
39
39
|
.string("o").nargs("o", 1).alias("o", "output").default("o", "-").describe("o", "save output file")
|
|
40
40
|
.strict()
|
|
41
41
|
.showHelpOnFail(true)
|
|
@@ -141,11 +141,18 @@ if (typeof argv.extension === "object" && argv.extension instanceof Array) {
|
|
|
141
141
|
for (let extension of argv.extension) {
|
|
142
142
|
if (extension.match(/^(?:default|date|eval)$/))
|
|
143
143
|
extension = path.join(__dirname, "nunjucks.d", `${extension}.js`)
|
|
144
|
-
|
|
145
|
-
|
|
144
|
+
let path = null
|
|
145
|
+
try {
|
|
146
|
+
path = require.resolve(extension)
|
|
147
|
+
}
|
|
148
|
+
catch (ex) {
|
|
149
|
+
path = null
|
|
150
|
+
}
|
|
151
|
+
if (path === null) {
|
|
152
|
+
console.error(chalk.red(`nunjucks: ERROR: failed to find extension module: ${extension}`))
|
|
146
153
|
process.exit(1)
|
|
147
154
|
}
|
|
148
|
-
const ext = require(
|
|
155
|
+
const ext = require(extension)
|
|
149
156
|
if (!(ext !== null && typeof ext === "function")) {
|
|
150
157
|
console.error(chalk.red(`nunjucks: ERROR: failed to call extension file: ${extension}`))
|
|
151
158
|
process.exit(1)
|
package/package.json
CHANGED