导出html时,组织模式无法突出显示C++源代码

upd*_*liu 13 c++ emacs org-mode

我正在使用org-mode V7.8.09.当我尝试将以下c ++代码块导出为html时,

#+begin_src c++
  int a=1;
  int b=1;
  printf("%d\n", a+b);
#+end_src
Run Code Online (Sandbox Code Playgroud)

它失败了,留言

org-babel-exp processing...
font-lock-fontify-keywords-region: Symbol's value as variable is void: font-lock-end-statement-face`
Run Code Online (Sandbox Code Playgroud)

有趣的是,如果我声称它是python代码,它会成功导出...

#+begin_src python
  int a=1;
  int b=1;
  printf("%d\n", a+b);
#+end_src
Run Code Online (Sandbox Code Playgroud)

之后,我加入(org-babel-do-load-languages 'org-babel-load-languages '((C . t)))我的init.el,错误信息消失和C++代码可以导出成功HTML.但是c ++代码没有突出显示,而python代码被突出显示.

小智 4

您需要加载的包是 emacs/lisp/org/ob-C.el

https://bitbucket.org/nobeira/dot.emacs.d/src/c6af5b1535b1/elisp/org-7.4/lisp/ob-C.el

没有C++包

.emacs.el配置文件:

(org-babel-load-languages (C . t)))
(setq org-src-fontify-natively t)
Run Code Online (Sandbox Code Playgroud)

组织文件:

#+BEGIN_SRC cpp   :includes <stdio.h> :exports both
 int a=1;
 int b=1;
 printf("%d\n", a+b);
#+END_SRC
Run Code Online (Sandbox Code Playgroud)

对我来说,仅使用 cpp source_name 工作(fontify 和运行)

坎迪多