Merge pull request #5136 from frostime/contrib-txtcode

 feat(markdown): 对纯文本的代码块内容进行折行处理
This commit is contained in:
Lloyd Zhou 2024-08-02 19:22:13 +08:00 committed by GitHub
commit 324d30bef9
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 26 additions and 0 deletions

View File

@ -96,6 +96,32 @@ export function PreCode(props: { children: any }) {
[plugins],
);
//Wrap the paragraph for plain-text
useEffect(() => {
if (ref.current) {
const codeElements = ref.current.querySelectorAll(
"code",
) as NodeListOf<HTMLElement>;
const wrapLanguages = [
"",
"md",
"markdown",
"text",
"txt",
"plaintext",
"tex",
"latex",
];
codeElements.forEach((codeElement) => {
let languageClass = codeElement.className.match(/language-(\w+)/);
let name = languageClass ? languageClass[1] : "";
if (wrapLanguages.includes(name)) {
codeElement.style.whiteSpace = "pre-wrap";
}
});
}
}, []);
return (
<>
<pre ref={ref}>