如何在组织模式中逃避斜杠?

时间:2013-03-10 16:54:06

标签: emacs org-mode

foo /bar/ baz为例,当导出为HTML时,它变为foo <i>bar</i> baz,现在我想用原始样式foo /bar/ baz导出它,如何实现这一目标?我尝试了foo \/bar\/ baz,但输出变为foo \/bar\/ baz

我知道这是一个简单的问题,我搜索了很多,但只找到这个:Escape pipe-character in org-mode,答案说斜线逃避工作正常,但对我来说,似乎不太好。


编辑:

搜索组织模式邮件列表后,我在此处找到了一个讨论和解决方案:http://thread.gmane.org/gmane.emacs.orgmode/50743

有两种方法可以做到这一点:

  1. 设置选项#+OPTIONS: *:nil以关闭所有强调符号
  2. 修改变量org-emphasis-alist,删除相关内容
  3. 对我来说,第一种解决方案是可以接受的,也很简单。

3 个答案:

答案 0 :(得分:4)

在空格和正斜杠之间放置零宽度空格(U + 200B;使用Ctrl-x 8 RET 200B RET在Emacs中插入)。

组织模式文本

What do we see?
- /foo/
- ​/foo/

在第二个&#34; foo&#34;的第一个正斜杠之前插入零宽度空格line(不可见,因为它的宽度为零)导出后产生以下HTML:

<div id="content">
<h1 class="title">What do we see?</h1>

<ul>
<li><i>foo</i>
</li>
<li>​/foo/
</li>
</ul>

</div>

零宽度空间也会被导出,最终会在您期望的<li>/foo/之间结束。

答案 1 :(得分:1)

如果您可以容忍斜杠之间的空格,foo / bar / bas将使用文字斜杠导出。或者,您可以使用=foo /bar/ baz=逐字记录整个字符串。

我怀疑这些都不是你想要的,但它们可以轻松完成,也可能足够好。

修改 如果您需要URL的斜杠,则应使用orgmode链接语法,例如[[http://foo/bar.baz]]

答案 2 :(得分:1)

(为了完整起见,我会在这里重新发布my answer ...)

您还可以将相关文字格式化为逐字代码

  

代码中的文本和Org模式不处理逐字字符串   具体语法;它是逐字导出的。

因此,您可以尝试使用=foo | bar=(代码)或foo ~|~ bar(逐字)。但它确实改变了输出格式。