mirror of
https://github.com/facebook/docusaurus.git
synced 2025-06-07 13:22:26 +02:00
feat(v2): add ability default lang for code blocks (#1910)
* feat(v2): add ability default lang for code blocks * Add support for CodeBlock * changelog * more changelog * Add checks * docs * docs * Fix changelog * revert config * Update theme-classic.md * Update packages/docusaurus-theme-classic/src/theme/CodeBlock/index.js Co-Authored-By: Endi <endiliey@gmail.com>
This commit is contained in:
parent
3b9309fa87
commit
c507028cb0
5 changed files with 64 additions and 10 deletions
|
@ -19,7 +19,7 @@ const highlightLinesRangeRegex = /{([\d,-]+)}/;
|
|||
export default ({children, className: languageClassName, metastring}) => {
|
||||
const {
|
||||
siteConfig: {
|
||||
themeConfig: {prismTheme},
|
||||
themeConfig: {prism = {}},
|
||||
},
|
||||
} = useDocusaurusContext();
|
||||
const [showCopied, setShowCopied] = useState(false);
|
||||
|
@ -48,9 +48,13 @@ export default ({children, className: languageClassName, metastring}) => {
|
|||
};
|
||||
}, [button.current, target.current]);
|
||||
|
||||
const language =
|
||||
let language =
|
||||
languageClassName && languageClassName.replace(/language-/, '');
|
||||
|
||||
if (!language && prism.defaultLanguage) {
|
||||
language = prism.defaultLanguage;
|
||||
}
|
||||
|
||||
const handleCopyCode = () => {
|
||||
window.getSelection().empty();
|
||||
setShowCopied(true);
|
||||
|
@ -61,7 +65,7 @@ export default ({children, className: languageClassName, metastring}) => {
|
|||
return (
|
||||
<Highlight
|
||||
{...defaultProps}
|
||||
theme={prismTheme || defaultTheme}
|
||||
theme={prism.theme || defaultTheme}
|
||||
code={children.trim()}
|
||||
language={language}>
|
||||
{({className, style, tokens, getLineProps, getTokenProps}) => (
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue