如何在org-mode中添加一个℃符号并正确导出到latex

3

我尝试过几次并意识到出口商可以识别 $1100^{\circ}C$ 和 1000^\circ,但无法正确识别 1000^\circC 和 1000^\circ C,那么最好的方法是如何添加一个 ℃ 呢? 我不想使用 $1100^{\circ}C$,因为需要在两侧添加两个空格。

3个回答

4
为什么不在这里使用适当的所见即所得字符。
一个示例org文件:
Foo! The temp is 12 °C.
C-x C-e l o后的PDF如下:

pdf预览

使用Emacs的C-x 8子命令可以键入不同的扩展字母符号。例如:
Key            Gives
---------------------
C-x 8 o         °
C-x 8 u         µ

请务必检查C-x 8 C-h以获取一些映射符号。

还要检查输入法TeX。它非常酷。它可以将直接编写的TeX宏转换为Unicode符号。C- \ TeX RET即可完成设置。


嗨,谢谢你的帮助。但是你能告诉我如何输入这些所见即所得的字符吗? - Leu_Grady
如果你使用Evil,那么你可以在插入模式下使用C-k DG完成度数。如果没有,应该有一些在C-x 8下的功能,但我并没有真正使用过那个功能。 - mike3996
我找到了解决方案。无论如何,你能给我关于org-mode中微米单位输入的建议吗? - Leu_Grady
出于纯粹的运气,第一个键就是正确的:C-x 8 u提供了字母µ。顺便说一句,C-x 8 o给出了°。 - mike3996

0
如果我使用 C-x 8 o 插入摄氏度符号,它仍然会转换为不可打印或无用的字符。对我来说,摄氏度符号有效的唯一方法是在 org-mode 中使用 \textdegree 插入它。

0

另一种可能性是用一些LaTeX命令替换符号。我建议使用siunitx包,因为我认为它通常可以产生更好的结果。例如,使用下面的代码和在头文件中添加\usepackage{siunitx},你可以在Org文档中写12°C,然后它会在tex文件中变成\SI{12}{\degreeCelsius}。

(defun org-latex-replace-degree (text backend info)
  (when (org-export-derived-backend-p backend 'latex)
    (replace-regexp-in-string
     "\\([0-9\.]*\\)\s?\\(°C\\)" "\\\\SI\{\\1\}\{\\\\degreeCelsius\}" text)))

(add-to-list 'org-export-filter-plain-text-functions 'org-latex-replace-degree)

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