Pandoc:将docx转换为markdown时的条件中断

时间:2015-09-25 13:54:17

标签: html ms-word markdown html-entities pandoc

我有一个docx文档,其中包含条件中断( (function (window, undefined) { var frame, lastKnownFrameHeight = 0, maxFrameLoadedTries = 5, maxResizeCheckTries = 20; //Resize iframe on window resize addEvent(window, 'resize', resizeFrame); var iframeCheckInterval = window.setInterval(function () { maxFrameLoadedTries--; var frames = document.getElementsByTagName('iframe'); if (maxFrameLoadedTries == 0 || frames.length) { clearInterval(iframeCheckInterval); frame = frames[0]; addEvent(frame, 'load', resizeFrame); var resizeCheckInterval = setInterval(function () { resizeFrame(); maxResizeCheckTries--; if (maxResizeCheckTries == 0) { clearInterval(resizeCheckInterval); } }, 1000); resizeFrame(); } }, 500); function resizeFrame() { if (frame) { var frameHeight = frame.contentWindow.document.body.scrollHeight; if (frameHeight !== lastKnownFrameHeight) { lastKnownFrameHeight = frameHeight; var viewportWidth = document.documentElement.clientWidth; if (document.compatMode && document.compatMode === 'BackCompat') { viewportWidth = document.body.clientWidth; } frame.setAttribute('width', viewportWidth); frame.setAttribute('height', lastKnownFrameHeight); frame.style.width = viewportWidth + 'px'; frame.style.height = frameHeight + 'px'; } } } //-------------------------------------------------------------- // Cross-browser helpers //-------------------------------------------------------------- function addEvent(elem, event, fn) { if (elem.addEventListener) { elem.addEventListener(event, fn, false); } else { elem.attachEvent("on" + event, function () { return (fn.call(elem, window.event)); }); } } })(window); )。我将它们转换为markdown,后来(使用jekyll)转换为HTML。不幸的是,条件中断丢失了。解决方法是编辑生成的markdown文档并插入Ctrl + -,但这不是解决方案,因为我需要从docx regulary生成markdown。

如何告诉pandoc保持条件中断?

编辑:它不仅在转换为markdown时发生,在直接转换为HTML时也会丢失条件中断。

1 个答案:

答案 0 :(得分:3)

不幸的是,Word不使用unicode字符'SOFT HYPHEN'(U + 00AD),而是在其内部以docx格式创建自己的XML元素<w:softHyphen/>

已提交pandoc issue来调整docx读者。