diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2018-06-21 01:21:57 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2018-06-21 01:21:57 +0900 |
| commit | 79d1bf30a49e1fd1ef1f8b743a9aff84d104fb89 (patch) | |
| tree | ed8f50f01cc50cf851dc0d0f399ed7e0f514f6c6 /src/mfm/parse/elements/code.ts | |
| parent | Disable transitions to avoid memory leak (diff) | |
| download | sharkey-79d1bf30a49e1fd1ef1f8b743a9aff84d104fb89.tar.gz sharkey-79d1bf30a49e1fd1ef1f8b743a9aff84d104fb89.tar.bz2 sharkey-79d1bf30a49e1fd1ef1f8b743a9aff84d104fb89.zip | |
リモートユーザーのHTMLで表現されたプロフィールをMFMに変換するように
Diffstat (limited to 'src/mfm/parse/elements/code.ts')
| -rw-r--r-- | src/mfm/parse/elements/code.ts | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/mfm/parse/elements/code.ts b/src/mfm/parse/elements/code.ts new file mode 100644 index 0000000000..f48e945048 --- /dev/null +++ b/src/mfm/parse/elements/code.ts @@ -0,0 +1,24 @@ +/** + * Code (block) + */ + +import genHtml from '../core/syntax-highlighter'; + +export type TextElementCode = { + type: 'code' + content: string + code: string + html: string +}; + +export default function(text: string) { + const match = text.match(/^```([\s\S]+?)```/); + if (!match) return null; + const code = match[0]; + return { + type: 'code', + content: code, + code: code.substr(3, code.length - 6).trim(), + html: genHtml(code.substr(3, code.length - 6).trim()) + } as TextElementCode; +} |