我使用ropemacs编写python源代码,下面是.emacs的相关部分:
(defun my-python-hook-mode ()
(interactive)
(require 'pymacs)
(autoload 'pymacs-apply "pymacs")
(autoload 'pymacs-call "pymacs")
(autoload 'pymacs-eval "pymacs" nil t)
(autoload 'pymacs-exec "pymacs" nil t)
(autoload 'pymacs-load "pymacs" nil t)
(ac-ropemacs-setup)
(setq ropemacs-confirm-saving 'nil)
(ropemacs-mode t)
(define-key python-mode-map "\C-m" 'newline-and-indent)
)
(add-hook 'python-mode-hook 'my-python-hook-mode)上述功能适用于在python模式下打开的文件。但由于某些原因(尚不清楚),emacs将以jython模式处理一些文件。
每次在jython模式中打开文件时,函数“my-python-钩子模式”被称为两次,并且有一条警告消息(到目前为止没有发现副作用):
切换pass模式关闭;最好传递一个显式参数。
有人遇到过这样的问题吗?谢谢。
发布于 2011-03-09 09:54:01
从您的描述中可以看出,jython-mode有自己的钩子,在运行python-mode的钩子之后运行。这也是M-x describe-function jython-mode展示的。这个函数很可能是通过这两个钩子执行的。
在文件的第一行输入注释,以指示文件的模式,将有助于Emacs选择最适合您的主要模式,并停止警告。
https://stackoverflow.com/questions/5233784
复制相似问题