【发布时间】:2014-07-29 12:20:03
【问题描述】:
我知道很多人都问过这类问题, 但我已经阅读了很多类似的帖子,但仍然不知道 该怎么办。所以这里是 .emacs 中的 elisp 代码:
;; send line to python console
(require 'python-mode)
(defun py-execute-line-down ()
"execute python line and move cursor down"
(progn
(py-execute-line)
(evil-next-line)))
(add-hook 'python-mode-hook
(lambda () (define-key python-mode-map (kbd "C-c C-j") 'py-execute-line-down)))
我也试过在函数中添加(interactive),还是不行。
【问题讨论】:
-
对于有兴趣查看
python-mode源代码的人,这里是原始发布者可能使用的库的链接:launchpad.net/python-mode 最新版本有一个绿色下载链接。跨度> -
qed:
(interactive)是你所需要的。我猜您在添加该行后没有重新评估该功能?还是你放错地方了? (应该紧跟在文档字符串之后)。另请注意,您也不需要将(progn ... )包裹在函数体周围。 -
另外:对
define-key的调用不需要进入钩子,每次打开 python 缓冲区时都会对其进行评估。 -
+1 @phils 的评论。并确保将
(interactive)放在正确的位置:在文档字符串之后和函数体之前。