summaryrefslogtreecommitdiff
path: root/src/text/parse
diff options
context:
space:
mode:
Diffstat (limited to 'src/text/parse')
-rw-r--r--src/text/parse/elements/search.ts13
-rw-r--r--src/text/parse/elements/title.ts14
-rw-r--r--src/text/parse/index.ts4
3 files changed, 30 insertions, 1 deletions
diff --git a/src/text/parse/elements/search.ts b/src/text/parse/elements/search.ts
new file mode 100644
index 0000000000..12ee8ecbb8
--- /dev/null
+++ b/src/text/parse/elements/search.ts
@@ -0,0 +1,13 @@
+/**
+ * Search
+ */
+
+module.exports = text => {
+ const match = text.match(/^(.+?) 検索(\n|$)/);
+ if (!match) return null;
+ return {
+ type: 'search',
+ content: match[0],
+ query: match[1]
+ };
+};
diff --git a/src/text/parse/elements/title.ts b/src/text/parse/elements/title.ts
new file mode 100644
index 0000000000..9f4708f5d6
--- /dev/null
+++ b/src/text/parse/elements/title.ts
@@ -0,0 +1,14 @@
+/**
+ * Title
+ */
+
+module.exports = text => {
+ const match = text.match(/^【(.+?)】\n/);
+ if (!match) return null;
+ const title = match[0];
+ return {
+ type: 'title',
+ content: title,
+ title: title.substr(1, title.length - 3)
+ };
+};
diff --git a/src/text/parse/index.ts b/src/text/parse/index.ts
index b958da81b0..cfddd9f615 100644
--- a/src/text/parse/index.ts
+++ b/src/text/parse/index.ts
@@ -4,6 +4,7 @@
const elements = [
require('./elements/bold'),
+ require('./elements/title'),
require('./elements/url'),
require('./elements/link'),
require('./elements/mention'),
@@ -11,7 +12,8 @@ const elements = [
require('./elements/code'),
require('./elements/inline-code'),
require('./elements/quote'),
- require('./elements/emoji')
+ require('./elements/emoji'),
+ require('./elements/search')
];
export default (source: string): any[] => {