mirror of
https://github.com/facebook/docusaurus.git
synced 2025-05-14 17:47:40 +02:00
Added option for client to include there own remarkable config (#974)
* Added option for client to include there own remarkable config * Better use merge here * Added lodash ... * Change use of lodash to deepmerge and added description to api site * markdownConfig -> markdownOptions * Update api-site-config.md * remove 1.4 docs change since it is unrelated (the feature will only be available in next release) * Run prettier
This commit is contained in:
parent
3c36a1cc8c
commit
8568a96e65
3 changed files with 27 additions and 4 deletions
|
@ -149,6 +149,8 @@ h1 {
|
|||
|
||||
`manifest` - Path to your web app manifest (e.g., `/manifest.json`). This will add a `<link>` tag to `<head>` with `rel` as `"manifest"` and `content` as the provided path.
|
||||
|
||||
`markdownOptions` - Override default [Remarkable options](https://github.com/jonschlinkert/remarkable#options) that will be used to render markdown.
|
||||
|
||||
`markdownPlugins` - An array of plugins to be loaded by Remarkable, the markdown parser and renderer used by Docusaurus. The plugin will receive a reference to the Remarkable instance, allowing custom parsing and rendering rules to be defined.
|
||||
|
||||
`ogImage` - Local path to an Open Graph image (e.g., `img/myImage.png`). This image will show up when your site is shared on Facebook and other websites/apps where the Open Graph protocol is supported.
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
const hljs = require('highlight.js');
|
||||
const Markdown = require('remarkable');
|
||||
const prismjs = require('prismjs');
|
||||
const deepmerge = require('deepmerge');
|
||||
|
||||
const anchors = require('./anchors.js');
|
||||
|
||||
|
@ -21,7 +22,7 @@ class MarkdownRenderer {
|
|||
constructor() {
|
||||
const siteConfig = require(`${CWD}/siteConfig.js`);
|
||||
|
||||
const md = new Markdown({
|
||||
let markdownOptions = {
|
||||
// Highlight.js expects hljs css classes on the code element.
|
||||
// This results in <pre><code class="hljs css languages-jsx">
|
||||
langPrefix: 'hljs css language-',
|
||||
|
@ -67,7 +68,18 @@ class MarkdownRenderer {
|
|||
},
|
||||
html: true,
|
||||
linkify: true,
|
||||
});
|
||||
};
|
||||
|
||||
// Allow overriding default options
|
||||
if (siteConfig.markdownOptions) {
|
||||
markdownOptions = deepmerge(
|
||||
{},
|
||||
markdownOptions,
|
||||
siteConfig.markdownOptions,
|
||||
);
|
||||
}
|
||||
|
||||
const md = new Markdown(markdownOptions);
|
||||
|
||||
// Register anchors plugin
|
||||
md.use(anchors);
|
||||
|
|
|
@ -3,7 +3,12 @@
|
|||
"description": "Easy to Maintain Open Source Documentation Websites",
|
||||
"version": "1.4.0",
|
||||
"license": "MIT",
|
||||
"keywords": ["documentation", "websites", "open source", "docusaurus"],
|
||||
"keywords": [
|
||||
"documentation",
|
||||
"websites",
|
||||
"open source",
|
||||
"docusaurus"
|
||||
],
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/facebook/Docusaurus.git"
|
||||
|
@ -14,7 +19,11 @@
|
|||
"start": "cd website && yarn start"
|
||||
},
|
||||
"jest": {
|
||||
"testPathIgnorePatterns": ["/node_modules/", "__fixtures__", "v2"],
|
||||
"testPathIgnorePatterns": [
|
||||
"/node_modules/",
|
||||
"__fixtures__",
|
||||
"v2"
|
||||
],
|
||||
"testURL": "http://localhost/"
|
||||
},
|
||||
"bin": {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue