Created: 08 Feb 2023
Last modified: 26 Mar 2023
OrgMode HTML Exporter keeps new lines and multiple spaces
需求
当在 OrgMode 下通过文本记录某种图形、逻辑关系时,需在导出的 HTML 页面保留原有的回车和空格位置或数量,例如:
index: 0 1 x-1 x x+1 n-1 * ------ * ---------- * ----- * ----- * ---------- * value: 0 1 x-1 x+1 x+2 n
问题
如果直接通过 quote
记录图形关系,会产生如下两个问题:
- OrgMode 导出时在
quote
部分不保留结尾的换行符; - 默认使用的 CSS 会压缩连续空格。
已知方法
针对问题一
- 信息点一:https://emacs.stackexchange.com/questions/21556/org-mode-export-how-to-force-newline-on-lines-between-paragraphs
为当前文件添加Export settings
针对问题二
- 信息点一:https://stackoverflow.com/questions/36259826/how-to-stop-browser-from-replacing-multiple-space-by-single-space
- 关键字:CSS 样式
white-space: pre-wrap
- 关键字:CSS 样式
- 信息点二:https://emacs.stackexchange.com/questions/27797/emacs-org-mode-export-paragraph-in-block-to-html-the-content-does-not-wrap
- 关键字:
#+begin_export html
- 关键字:
解决方案:添加 html 导出结构并指定保留多个空格的样式(注:此处需通过网页源代码查看)
index: 0 1 x-1 x x+1 n-1 * ------ * ---------- * ----- * ----- * ---------- * value: 0 1 x-1 x+1 x+2 n
通过 pre tag 保留全部换行和空白
信息点:
- https://stackoverflow.com/questions/8994516/html-css-best-practice-for-preserving-white-space-on-certain-elements
- https://www.w3schools.com/tags/tag_pre.asp
The <pre> tag defines preformatted text.
标记预格式化文本,
pre
元素中的文本将完全按照 HTML 源码呈现。例如:
index: 0 1 x-1 x x+1 n-1 * ------ * ---------- * ----- * ----- * ---------- * value: 0 1 x-1 x+1 x+2 n
- https://stackoverflow.com/questions/8994516/html-css-best-practice-for-preserving-white-space-on-certain-elements
renyddd by Renyddd is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.