2010-01-09 2 views
3

파이썬 모드를 사용합니다 (기본값은 emacs 23과 함께 제공되지 않음).emacs windows는 현재 버퍼에서 파이썬 프로그램을 실행하고 출력 창에 출력을 표시합니다.

현재 emacs에로드 된 python 프로그램을 실행할 수 없습니다.

"Symbol의 함수 정의가 void 임 : 스마트 연산자 모드 켜기"오류가 발생합니다.

모든 단서 또는 팁을 사용하면 파이썬 프로그램을 만들고 이맥스에서 실행하고 결과 출력 창을 표시 할 수 있습니까?

여기서 이맥스 오류 보고서.

Debugger entered--Lisp error: (void-function smart-operator-mode-on) 
    (smart-operator-mode-on) 
    (lambda nil (set-variable (quote py-indent-offset) 4) 
     (set-variable (quote indent-tabs-mode) nil) (define-key py-mode-map (kbd "RET") (quote newline-and-indent)) (smart-operator-mode-on))() 
     run-hooks(python-mode-hook) 
    (if python-mode-hook (run-hooks (quote python-mode-hook)) (run-hooks (quote py-mode-hook))) python-mode() 

내 init_python.el 스크립트 내가 해결하는 방법을 볼 필요가 그것은 (스마트 운영자 모드에서) 를 전원을 끈 후 작동

(autoload 'python-mode "python-mode" "Python Mode." t) 
(add-to-list 'auto-mode-alist '("\\.py\\'" . python-mode)) 
(add-to-list 'interpreter-mode-alist '("python" . python-mode)) 

    (require 'python-mode) 
    (add-hook 'python-mode-hook 
    (lambda() 
(set-variable 'py-indent-offset 4) 
;(set-variable 'py-smart-indentation nil) 
(set-variable 'indent-tabs-mode nil) 
(define-key py-mode-map (kbd "RET") 'newline-and-indent) 
;(define-key py-mode-map [tab] 'yas/expand) 
;(setq yas/after-exit-snippet-hook 'indent-according-to-mode) 
(smart-operator-mode-on) 
)) 
+0

초기화 파일에서'(setq debug-on-error t)'를 수행 한 다음이 오류를 재현 할 수 있습니까? 추적을하면 더 많은 정보를 얻을 수 있습니다. –

+0

Nouful Ibrahim, 팁 주셔서 감사합니다. 질문을 업데이트했습니다. –

답변

0

스마트 운영자 모드 -

(setq debug-on-error t)은 오류를 발견하는 데 도움이됩니다. 감사 Noufal.

+0

http://www.emacswiki.org/emacs/SmartOperator가 유용 할 수 있습니다. –

0

로드 경로에 smart-operator.el 파일을 다운로드하고 smart-operator-mode-on을 호출하기 전에 require 'smart-operator'을 추가하면이 오류가 해결되었습니다.