Use local built CSS and fonts for master documentation (#1584)

* Change `npm run` to `yarn`

* Export `commander` program if required as module

* Move `prestart` (cli.md generation) to build.js

* Normalize script names

* Change `yarn prestart` to `node lib/build.js`

* Use local built CSS and fonts

* Move stylesheet after the first paragraph

* Remove prestart script
This commit is contained in:
ylemkimon
2018-08-11 08:20:03 +09:00
committed by GitHub
parent d2f56cebd7
commit b99de9ae68
11 changed files with 60 additions and 37 deletions

16
website/lib/build.js Normal file
View File

@@ -0,0 +1,16 @@
const fs = require('fs-extra');
// generate cli.md
const cli = require('../../cli');
const template = fs.readFileSync('../docs/cli.md.template');
fs.writeFileSync('../docs/cli.md', [template,
...cli.options.map(option => `### \`${option.flags}\`
${option.description}${((option.bool && option.defaultValue !== undefined)
? ' (default: ' + option.defaultValue + ')' : '')}
`),
'### `-h, --help`\nOutput usage information', ''].join('\n'));
// copy local built CSS and fonts
fs.copySync('../dist/katex.min.css', 'static/static/katex.min.css');
fs.copySync('../dist/fonts', 'static/static/fonts');

View File

@@ -1,15 +1,16 @@
{
"scripts": {
"prestart": "cp ../docs/cli.md.template ../docs/cli.md && node ../cli.js markdown-help >> ../docs/cli.md",
"start": "docusaurus-start",
"build": "npm run prestart && docusaurus-build",
"publish-gh-pages": "npm run prestart && docusaurus-publish",
"start": "node lib/build.js && docusaurus-start",
"build": "node lib/build.js && docusaurus-build",
"publish-gh-pages": "node lib/build.js && docusaurus-publish",
"write-translations": "docusaurus-write-translations",
"version": "npm run prestart && docusaurus-version",
"version": "node lib/build.js && docusaurus-version",
"rename-version": "docusaurus-rename-version"
},
"devDependencies": {
"docusaurus": "^1.3.2"
"docusaurus": "^1.3.2",
"fs-extra": "^7.0.0",
"remarkable-embed": "^0.4.1"
},
"dependencies": {}
}

View File

@@ -12,6 +12,14 @@
// If on netlify, use '/'. Otherwise use '/KaTeX/'.
const baseUrl = process.env.BASE_URL || (process.env.CONTEXT ? '/' : '/KaTeX/');
// Plugin for Remarkable to inject variables
const {Plugin: Embed} = require('remarkable-embed');
const embed = new Embed();
// {@stylesheet: path}
embed.register('stylesheet',
path => `<link rel="stylesheet" href="${baseUrl}static/${path}"/>`);
/* List of projects/orgs using your project for the users page */
const users = [
{
@@ -66,8 +74,9 @@ const siteConfig = {
},
markdownPlugins: [
require('./lib/remarkableKatex'),
require('./lib/empty_thead'),
embed.hook,
require('./lib/remarkable-katex'),
require('./lib/empty-thead'),
],
scripts: [