从org-mode Babel导出时如何包含“$”符号?

4
我正在使用org-mode写一本技术书。我想要将它导出为markdown(适用于GitHub)的代码和结果,并且这一步运行良好。但我同时也希望导出终端中出现的$或者在它之前的任何内容(例如,当我在终端上输入东西时会出现(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

对于HTML输出,您可以添加一个导出过滤器,例如

(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 环境中,这样就不可能只在代码前面加上一个美元符号。


谢谢。我想要导出为GitHub风格的Markdown。 - Angelo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接