2
0
Sotaro KARASAWA 9 жил өмнө
parent
commit
70cb7ca4ac

+ 1 - 0
public/emoji_images

@@ -0,0 +1 @@
+../node_modules/emojify.js/dist/images

+ 9 - 0
resource/css/_wiki.scss

@@ -114,6 +114,15 @@ div.body {
     max-width: 100%;
     max-width: 100%;
   }
   }
 
 
+  img.emoji {
+    width: 0.95em;
+    margin: 1px;
+    border: none;
+    box-shadow: none;
+    vertical-align: middle;
+    display: inline;
+  }
+
   ul, ol {
   ul, ol {
     padding-left: 30px;
     padding-left: 30px;
 
 

+ 5 - 2
resource/js/util/CrowiRenderer.js

@@ -4,6 +4,7 @@ import hljs from 'highlight.js';
 import MarkdownFixer from './PreProcessor/MarkdownFixer';
 import MarkdownFixer from './PreProcessor/MarkdownFixer';
 import Linker        from './PreProcessor/Linker';
 import Linker        from './PreProcessor/Linker';
 import ImageExpander from './PreProcessor/ImageExpander';
 import ImageExpander from './PreProcessor/ImageExpander';
+import Emoji         from './PreProcessor/Emoji';
 
 
 import Tsv2Table from './LangProcessor/Tsv2Table';
 import Tsv2Table from './LangProcessor/Tsv2Table';
 import Template from './LangProcessor/Template';
 import Template from './LangProcessor/Template';
@@ -12,15 +13,17 @@ export default class CrowiRenderer {
 
 
 
 
   constructor(plugins) {
   constructor(plugins) {
+
     this.preProcessors = [
     this.preProcessors = [
       new MarkdownFixer(),
       new MarkdownFixer(),
       new Linker(),
       new Linker(),
       new ImageExpander(),
       new ImageExpander(),
+      new Emoji(),
     ];
     ];
 
 
     this.langProcessors = {
     this.langProcessors = {
-      'tsv2table': new Tsv2Table(),
-      'tsv2table-h': new Tsv2Table({header: true}),
+      'tsv': new Tsv2Table(),
+      'tsv-h': new Tsv2Table({header: true}),
       'template': new Template(),
       'template': new Template(),
     };
     };
 
 

+ 14 - 0
resource/js/util/PreProcessor/Emoji.js

@@ -0,0 +1,14 @@
+import emojify from 'emojify.js';
+
+export default class Emoji {
+
+  constructor() {
+    emojify.setConfig({
+      img_dir: '/emoji_images/basic',
+    });
+  }
+
+  process(markdown) {
+    return emojify.replace(markdown);
+  }
+}