2012-09-15 79 views
2

上下文:我一直在使用ropemacs for python,並設置和工作pyemacs。我想開始在Python中編程emacs(我有一些在elisp中編程emacs的經驗)。我開始與你好世界樣本。

我創建〜/ .emacs.d/hello.py與樣品從docs獲取你好世界在pymacs工作

from Pymacs import lisp 

def hello_world(): 
    lisp.insert("Hello from Python!") 
hello_world.interaction = '' 

我則想在我的init文件加載hello.py:

(eval-after-load "pymacs"        
    '(add-to-list 'pymacs-load-path "~/.emacs.d/")) 
(pymacs-load "hello") ;;this line fails        
(require 'hello)         

我收到以下錯誤。我究竟做錯了什麼?

Debugger entered--Lisp error: (error "Pymacs loading hello...failed")   
    signal(error ("Pymacs loading hello...failed"))        
    pymacs-report-error("Pymacs loading %s...failed" "hello")      
    (cond (lisp-code (let ((result (eval lisp-code))) (message "Pymacs loading %$ 
    (let ((lisp-code (pymacs-call "pymacs_load_helper" module prefix))) (cond (l$ 
    pymacs-load("hello")               
    eval((pymacs-load "hello") nil)            
    eval-last-sexp-1(nil)               
    eval-last-sexp(nil)               
+0

您的'hello_world.interaction ='''行是縮進,而在文檔中它不是。 – tkf

+0

嗨tkf這是一個錯字。修正了縮進 – Raghu

回答

0

我也許有點遲到了,但原因是因爲你應該確保將模塊添加到pymacs負載路徑後重新加載pymacs解釋,這樣做最簡單的方法是殺死Pymacs緩衝區,它應該工作後