如何让org2blog与Crayon Syntax Highlighter配合使用?

时间:2016-05-07 14:16:49

标签: wordpress emacs org-mode

我使用org2blog / wp将我的文章发布到wordpress。我安装了插件Crayon Syntax Highlighter,但无法突出显示我的代码块。 我认为可能有两个原因。

第一个问题,标签。

蜡笔检查标签

<pre>

...(my code)

</pre> 

但是org2blog / wp将代码块的格式输出为

[sourcecode]

...(my code)

[/sourcecode]

我不知道我们是否可以自定义代码块的输出格式,我尝试更改函数的src&#34; org-wp-src-block&#34;。在ox-wp.el

...
(if (not sc)
        (org-html-src-block src-block contents info)
       ;;(format "[sourcecode language=\"%s\" title=\"%s\" %s]\n%s[/sourcecode]"
         (format "<pre class=\"lang:%s decode:true\" title =\"%s\"> %s\n%s</pre>" 
              (or (cdr (assoc lang langs-map)) lang "text")
              (or caption "")
              (or syntaxhl "")
              (org-export-format-code-default src-block info)))))
...

如上所示,我将[sourcecode language=\"%s\" title=\"%s\" %s]\n%s[/sourcecode]替换为<pre class=\"lang:%s decode:true\" title =\"%s\"> %s\n%s</pre>

它修复了第一个问题,即org2blog / wp现在可以输出代码块的格式如下:

<pre>
...(my code)
</pre>

但我仍然想知道是否还有另一种优雅的方法来解决标签问题。

第二个问题,我将举一个例子。

#+BEGIN_SRC cpp
int a = 4;
cout << a;
#+END_SRC

以上是组织文件中的代码块,我使用org2blog / wp发布并将其公开给我的博客。

<pre class="lang:cpp decode:true" title =""> 
int a = 4;
cout << a;
</pre>

以上是org2blog / wp输出的内容。它应该像这样输出吗?

<pre class="lang:cpp decode:true" title =""> 
int a = 4;
cout &lt;&lt; a;
</pre>

org2blog / wp似乎没有逃脱src块中的一些字符,例如&#39;&lt;&#;&#39;&#39;&gt;&#39;。

换句话说,我想要org2blog / wp转换&#39;&lt;&#39;到代码块中的'&lt;'。怎么做?

0 个答案:

没有答案