From 0f309acf7eb78aa7fb293e87260e21683c8a7865 Mon Sep 17 00:00:00 2001
From: "qingwei.li" <cinwell.li@gmail.com>
Date: Fri, 2 Nov 2018 02:08:32 +0800
Subject: [PATCH 1/2] fix(cover): Compatible with legacy styles, fixed #677

---
 src/core/render/compiler.js      |  2 --
 src/core/render/embed.js         |  2 ++
 src/core/render/index.js         | 13 +------------
 src/themes/basic/_coverpage.styl |  2 +-
 4 files changed, 4 insertions(+), 15 deletions(-)

diff --git a/src/core/render/compiler.js b/src/core/render/compiler.js
index 41ae3a132..34c64ae72 100644
--- a/src/core/render/compiler.js
+++ b/src/core/render/compiler.js
@@ -265,8 +265,6 @@ export class Compiler {
         result = helperTpl('tip', text)
       } else if (/^\?&gt;/.test(text)) {
         result = helperTpl('warn', text)
-      } else if (/^</.test(text)) {
-        return text
       } else {
         result = `<p>${text}</p>`
       }
diff --git a/src/core/render/embed.js b/src/core/render/embed.js
index 85afbe646..2c1d85657 100644
--- a/src/core/render/embed.js
+++ b/src/core/render/embed.js
@@ -65,7 +65,9 @@ export function prerenderEmbed({compiler, raw = '', fetch}, done) {
   }
 
   const compile = compiler._marked
+  console.log(raw)
   let tokens = compile.lexer(raw)
+  console.log(tokens.slice())
   const embedTokens = []
   const linkRE = compile.InlineLexer.rules.link
   const links = tokens.links
diff --git a/src/core/render/index.js b/src/core/render/index.js
index feacd60d2..fae1bc526 100644
--- a/src/core/render/index.js
+++ b/src/core/render/index.js
@@ -179,7 +179,7 @@ export function renderMixin(proto) {
 
     const m = html
       .trim()
-      .match('<img.*?data-origin="(.*?)"[^a]+alt="(.*?)">([^<]*?)$')
+      .match('<p><img.*?data-origin="(.*?)"[^a]+alt="(.*?)">([^<]*?)</p>$')
 
     if (m) {
       if (m[2] === 'color') {
@@ -198,17 +198,6 @@ export function renderMixin(proto) {
       html = html.replace(m[0], '')
     }
 
-    // XXX: A Workaround
-    html = html
-      .split('\n')
-      .map(part => {
-        if (/^<a/.test(part)) {
-          return part.replace('<a', '<a data-button')
-        }
-        return part
-      })
-      .join('\n')
-
     this._renderTo('.cover-main', html)
     sticky()
   }
diff --git a/src/themes/basic/_coverpage.styl b/src/themes/basic/_coverpage.styl
index 600d4510a..001493225 100644
--- a/src/themes/basic/_coverpage.styl
+++ b/src/themes/basic/_coverpage.styl
@@ -61,7 +61,7 @@ section.cover
     max-width 500px
     padding 0
 
-  .cover-main > a[data-button]
+  .cover-main > p:last-child a
     border-color var(--theme-color, $color-primary)
     border-radius 2rem
     border-style solid

From 23d84cb0bf036142eaacb32e048d60c6785480e8 Mon Sep 17 00:00:00 2001
From: "qingwei.li" <cinwell.li@gmail.com>
Date: Fri, 2 Nov 2018 02:09:18 +0800
Subject: [PATCH 2/2] chore: remove console.log

---
 src/core/render/embed.js | 2 --
 1 file changed, 2 deletions(-)

diff --git a/src/core/render/embed.js b/src/core/render/embed.js
index 2c1d85657..85afbe646 100644
--- a/src/core/render/embed.js
+++ b/src/core/render/embed.js
@@ -65,9 +65,7 @@ export function prerenderEmbed({compiler, raw = '', fetch}, done) {
   }
 
   const compile = compiler._marked
-  console.log(raw)
   let tokens = compile.lexer(raw)
-  console.log(tokens.slice())
   const embedTokens = []
   const linkRE = compile.InlineLexer.rules.link
   const links = tokens.links