从org-mode Babel导出时包含'$'符号?

时间:2017-10-23 17:22:46

标签: emacs org-mode

我正在使用org-mode编写一本技术书籍。我想导出到markdown(GitHub Flavored)代码和结果,它工作正常。但我也想导出$或之前发生的任何事情(例如,当我在终端输入内容时,(venv) $

现在我有了这个:

#+BEGIN_SRC sh :exports both
  python --version
#+END_SRC

#+RESULTS:
: Python 3.6.2

将其导出到此:

python --version
Python 3.6.2

我想要的是这个:

$ python --version

Python 3.6.2

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

对于HTML输出,您可以添加export filter之类的

(defun my-html-dollar-sign-filter (text backend info)
  "Add a $ sign to the beginning of code blocks"
  (when (org-export-derived-backend-p backend 'html)
        (replace-regexp-in-string
         "\\(<pre class=\"src src-sh\">\\)" "\\1$ " text)))

(add-to-list 'org-export-filter-src-block-functions
             'my-html-dollar-sign-filter)
<pre class="src src-sh">python --version</pre>以来工作的

在HTML输出中非常明确地标识命令。不幸的是,Latex导出器包装了两个代码并导致verbatim环境,这使得不可能只在这样的代码前面放一个美元符号。