为什么在emacs org模式下禁用对此python代码块的评估?

sin*_*dly 6 python emacs evaluation org-mode

emacs说,在org-mode中的python源块中,在点击Cc Cc之后

禁用对python源块的评估

谁有人解释为什么?

Ale*_* Xu 9

如果组织模式版本为> = 9.这里是另一个西蒙的答案是不正确的问题,同样的问题.

解决方案

cd .emacs.d
cd elpa
cd org-xxxx
rm *.elc
Run Code Online (Sandbox Code Playgroud)

然后,最好对字节重新编译org-xxxx的目录.为此,请启动emacs

C-0 M-x byte-recompile-directory RET ~/emacs.d/elpa/org-xxxx
Run Code Online (Sandbox Code Playgroud)

细节在这里.

更新1:编译文件上的EmacsWiki.


Sim*_*mme 2

为了评估特定语言的组织模式代码块,您必须按照此处org-babel-load-languages所述进行自定义。评估以下内容可能会解决您的问题:

(org-babel-do-load-languages
 'org-babel-load-languages
 '((python . t)))
Run Code Online (Sandbox Code Playgroud)

来自文档:

org-babel-load-languages是定义在 中的变量org.el。原始值为((emacs-lisp . t))

可以在组织模式缓冲区中评估的语言。此列表可用于加载对以下任何语言的支持,请注意,每种语言将取决于一组不同的系统可执行文件和/或 Emacs 模式。org-babel-execute-src-block当一种语言被“加载”时,该语言中的代码块可以通过默认绑定来评估C-c C-c(注意org-babel-no-eval-on-ctrl-c-ctrl-c可以设置该变量以从C-c C-c键绑定中删除代码块评估。默认情况下,只有 Emacs Lisp(没有要求)是已加载。

您可以自定义此变量。

在 Emacs 24.1 版本中引入了此变量,或者更改了其默认值。