summaryrefslogtreecommitdiff
path: root/src/mfm/parse/elements/inline-code.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/mfm/parse/elements/inline-code.ts')
-rw-r--r--src/mfm/parse/elements/inline-code.ts24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/mfm/parse/elements/inline-code.ts b/src/mfm/parse/elements/inline-code.ts
new file mode 100644
index 0000000000..1dd5affa51
--- /dev/null
+++ b/src/mfm/parse/elements/inline-code.ts
@@ -0,0 +1,24 @@
+/**
+ * Code (inline)
+ */
+
+import genHtml from '../core/syntax-highlighter';
+
+export type TextElementInlineCode = {
+ type: 'inline-code'
+ content: string
+ code: string
+ html: string
+};
+
+export default function(text: string) {
+ const match = text.match(/^`(.+?)`/);
+ if (!match) return null;
+ const code = match[0];
+ return {
+ type: 'inline-code',
+ content: code,
+ code: code.substr(1, code.length - 2).trim(),
+ html: genHtml(code.substr(1, code.length - 2).trim())
+ } as TextElementInlineCode;
+}