Skip to content

Commit

Permalink
Fix michalyao#161 :bug
Browse files Browse the repository at this point in the history
  • Loading branch information
cancastilho committed Aug 10, 2021
1 parent af93bcd commit 70991c1
Showing 1 changed file with 25 additions and 8 deletions.
33 changes: 25 additions & 8 deletions src/converterplus.ts
Expand Up @@ -102,12 +102,14 @@ export default class Converter {
} }


async toEnml(markcontent) { async toEnml(markcontent) {
let BEGIN_NEW_MARK = '<span style="display:none">' + MAGIC_SPELL;
let END_NEW_MARK = MAGIC_SPELL + "</span>";
const html = await this.toHtml(markcontent); const html = await this.toHtml(markcontent);
let enml = '<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE en-note SYSTEM "http://xml.evernote.com/pub/enml2.dtd"><en-note>'; let enml = '<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE en-note SYSTEM "http://xml.evernote.com/pub/enml2.dtd"><en-note>';
enml += "<!--" + MAGIC_SPELL; enml += html; // prepend html content to prevent showing base64 in summary when using evernote web.
enml += BEGIN_NEW_MARK;
enml += Buffer.from(markcontent, "utf-8").toString("base64"); enml += Buffer.from(markcontent, "utf-8").toString("base64");
enml += MAGIC_SPELL + "-->"; enml += END_NEW_MARK;
enml += html;
enml += "</en-note>"; enml += "</en-note>";
return enml; return enml;
} }
Expand Down Expand Up @@ -156,15 +158,30 @@ export default class Converter {
let startIndex = enml.indexOf(">", beginTagIndex) + 1; let startIndex = enml.indexOf(">", beginTagIndex) + 1;
let endIndex = enml.indexOf("</en-note>"); let endIndex = enml.indexOf("</en-note>");
let rawContent = enml.substring(startIndex, endIndex); let rawContent = enml.substring(startIndex, endIndex);
if (rawContent.indexOf(MAGIC_SPELL) !== -1) {
let beginMark = "<!--" + MAGIC_SPELL; let BEGIN_COMMENT_MARK = "<!--"+MAGIC_SPELL;
let beginMagicIdx = rawContent.indexOf(beginMark) + beginMark.length; let END_COMMENT_MARK = MAGIC_SPELL+"-->";
let endMagicIdx = rawContent.indexOf(MAGIC_SPELL + "-->");
let BEGIN_NEW_MARK = '<span style="display:none">' + MAGIC_SPELL;
let END_NEW_MARK = MAGIC_SPELL + "</span>";

//needs refactoring
if (rawContent.indexOf(BEGIN_COMMENT_MARK) !== -1) {
let beginMagicIdx = rawContent.indexOf(BEGIN_COMMENT_MARK) + BEGIN_COMMENT_MARK.length;
let endMagicIdx = rawContent.indexOf(END_COMMENT_MARK);
let magicString = rawContent.substring(beginMagicIdx, endMagicIdx);
magicString = magicString.replace(BEGIN_COMMENT_MARK,"");
magicString = magicString.replace(END_COMMENT_MARK, "");
let base64content = new Buffer(magicString, "base64");
return base64content.toString("utf-8");
}else if(rawContent.indexOf(BEGIN_NEW_MARK) !== -1){
let beginMagicIdx = rawContent.indexOf(BEGIN_NEW_MARK) + BEGIN_NEW_MARK.length;
let endMagicIdx = rawContent.indexOf(END_NEW_MARK);
let magicString = rawContent.substring(beginMagicIdx, endMagicIdx); let magicString = rawContent.substring(beginMagicIdx, endMagicIdx);
let base64content = new Buffer(magicString, "base64"); let base64content = new Buffer(magicString, "base64");
return base64content.toString("utf-8"); return base64content.toString("utf-8");
} else { } else {
let commentRegex = /<!--.*?-->/; let commentRegex = /<span style="display:none">.*?<\/span>/;
let htmlStr = rawContent.replace(commentRegex, ""); let htmlStr = rawContent.replace(commentRegex, "");
let mdtxt = toMarkdown(htmlStr); let mdtxt = toMarkdown(htmlStr);
return this.todoFix(mdtxt); return this.todoFix(mdtxt);
Expand Down

0 comments on commit 70991c1

Please sign in to comment.