UNPKG

3.04 kBJavaScriptView Raw
1'use strict';
2
3module.exports = function(ctx) {
4 const console = ctx.extend.console;
5
6 console.register('clean', 'Remove generated files and cache.', require('./clean'));
7
8 console.register('config', 'Get or set configurations.', {
9 usage: '[name] [value]',
10 arguments: [
11 {name: 'name', desc: 'Setting name. Leave it blank if you want to show all configurations.'},
12 {name: 'value', desc: 'New value of a setting. Leave it blank if you just want to show a single configuration.'}
13 ]
14 }, require('./config'));
15
16 console.register('deploy', 'Deploy your website.', {
17 options: [
18 {name: '--setup', desc: 'Setup without deployment'},
19 {name: '-g, --generate', desc: 'Generate before deployment'}
20 ]
21 }, require('./deploy'));
22
23 console.register('generate', 'Generate static files.', {
24 options: [
25 {name: '-d, --deploy', desc: 'Deploy after generated'},
26 {name: '-f, --force', desc: 'Force regenerate'},
27 {name: '-w, --watch', desc: 'Watch file changes'},
28 {name: '-b, --bail', desc: 'Raise an error if any unhandled exception is thrown during generation'}
29 ]
30 }, require('./generate'));
31
32 console.register('list', 'List the information of the site', {
33 desc: 'List the information of the site.',
34 usage: '<type>',
35 arguments: [
36 {name: 'type', desc: 'Available types: page, post, route, tag, category'}
37 ]
38 }, require('./list'));
39
40 console.register('migrate', 'Migrate your site from other system to Hexo.', {
41 init: true,
42 usage: '<type>',
43 arguments: [
44 {name: 'type', desc: 'Migrator type.'}
45 ]
46 }, require('./migrate'));
47
48 console.register('new', 'Create a new post.', {
49 usage: '[layout] <title>',
50 arguments: [
51 {name: 'layout', desc: 'Post layout. Use post, page, draft or whatever you want.'},
52 {name: 'title', desc: 'Post title. Wrap it with quotations to escape.'}
53 ],
54 options: [
55 {name: '-r, --replace', desc: 'Replace the current post if existed.'},
56 {name: '-s, --slug', desc: 'Post slug. Customize the URL of the post.'},
57 {name: '-p, --path', desc: 'Post path. Customize the path of the post.'}
58 ]
59 }, require('./new'));
60
61 console.register('publish', 'Moves a draft post from _drafts to _posts folder.', {
62 usage: '[layout] <filename>',
63 arguments: [
64 {name: 'layout', desc: 'Post layout. Use post, page, draft or whatever you want.'},
65 {name: 'filename', desc: 'Draft filename. "hello-world" for example.'}
66 ]
67 }, require('./publish'));
68
69 console.register('render', 'Render files with renderer plugins.', {
70 init: true,
71 desc: 'Render files with renderer plugins (e.g. Markdown) and save them at the specified path.',
72 usage: '<file1> [file2] ...',
73 options: [
74 {name: '--output', desc: 'Output destination. Result will be printed in the terminal if the output destination is not set.'},
75 {name: '--engine', desc: 'Specify render engine'},
76 {name: '--pretty', desc: 'Prettify JSON output'}
77 ]
78 }, require('./render'));
79};