13

举个foo /bar/ baz例子,导出成HTML的时候就变成了foo <i>bar</i> baz,现在我想用原来的样式导出foo /bar/ baz,怎么实现呢?我试过foo \/bar\/ baz了,但是输出变成了foo \/bar\/ baz

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


编辑:

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

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

  1. 设置选项#+OPTIONS: *:nil以关闭所有强调符号
  2. 修改变量org-emphasis-alist,删除相关内容

对我来说,第一个解决方案是可以接受的,也很简单。

4

3 回答 3

7

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

组织模式文本

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

在第二个“foo”行的第一个正斜杠之前插入一个零宽度空格(不可见,因为它的宽度为零)在导出后生成以下 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/

于 2015-03-06T12:22:08.313 回答
1

如果您可以容忍斜线之间的空格,foo / bar / bas则将使用文字斜线导出。或者,您可以使用=foo /bar/ baz=.

我怀疑这些都不是你想要的,但它们可以很容易地完成并且可能已经足够好了。

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

于 2013-03-10T17:57:02.710 回答
1

(为了完整起见,我将在这里重新发布我的答案......)

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

代码中的文本和逐字字符串不会针对 Org 模式特定的语法进行处理;它是逐字导出的。

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

于 2015-01-12T23:22:16.313 回答