gpt4 book ai didi

python - pymacs:一般问题和安装问题

转载 作者:太空狗 更新时间:2023-10-30 00:12:20 25 4
gpt4 key购买 nike

我正在尝试为 python 开发设置 emacs。

根据我的阅读,建议使用 python-mode.el 而不是 Emacs 22.3 中的默认 python.el。所以我开始了新的冒险。

据我了解,python-mode 有几个依赖项,所以我需要安装 rope、ropemode 和 ropemacs。然后最重要的是我需要安装 pymacs。

问:是否正确?

现在这是我的新 .emacs:

(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(inhibit-startup-screen t)
'(tab-width 4))
(custom-set-faces
;; custom-set-faces was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
)

(setq emacs-config-path "~/.emacs.d/")
(setq base-lisp-path "~/.emacs.d/site-lisp/")
(setq site-lisp-path (concat emacs-config-path "/site-lisp"))
(defun add-path (p)
(add-to-list 'load-path (concat base-lisp-path p)))

(add-path "")
(add-to-list 'load-path "~/.emacs.d")

(require 'psvn)

;; python-mode
;;
(setq auto-mode-alist (cons '("\\.py$" . python-mode) auto-mode-alist))
(setq interpreter-mode-alist (cons '("python" . python-mode) interpreter-mode-alist))
(autoload 'python-mode "python-mode" "Python editing mode." t)


(setq pymacs-load-path '( "~/.emacs.d/site-lisp/rope"
"~/.emacs.d/site-lisp/ropemode"
"~/.emacs.d/site-lisp/ropemacs"))


(setq interpreter-mode-alist
(cons '("python" . python-mode)
interpreter-mode-alist)
python-mode-hook
'(lambda () (progn
(set-variable 'py-indent-offset 4)
(set-variable 'py-smart-indentation nil)
(set-variable 'indent-tabs-mode nil)
;;(highlight-beyond-fill-column)
(define-key python-mode-map "\C-m" 'newline-and-indent)
(pabbrev-mode)
(abbrev-mode)
)
)
)


;; 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)

;; Search local path for emacs rope
;;

;; enable pymacs
;;
(require 'pymacs)
(pymacs-load "ropemacs" "rope-")

现在,当我启动 emacs 时,我收到以下错误消息:

("C:\\opt\\emacs-22.3\\bin\\emacs.exe")
Loading encoded-kb...done
Loading regexp-opt...done
Loading easy-mmode...done
Loading wid-edit...done
Loading edmacro...done
Loading derived...done
Loading advice...done
Loading cl-macs...done
Loading byte-opt...done


An error has occurred while loading `c:/opt/cygwin/home/akong/.emacs':

File error: Cannot open load file, pymacs

To ensure normal operation, you should investigate and remove the
cause of the error in your initialization file. Start Emacs with
the `--debug-init' option to view a complete error backtrace.

For information about GNU Emacs and the GNU system, type C-h C-a. [2 times]

让它稍微复杂一点:

由于工作原因,我必须使用 python 2.4,但我的 PC 上安装了 python 2.6。但显然 rope 不喜欢 2.4,所以我没有运行 setup.py。我解压/解压缩这些包并将这些文件放在 ~/.emacs.d/site-lisp 下。默认情况下,如果在命令提示符下调用 python,则它是 python 2.4 可执行文件。

问:如何才能成功加载“pymacs”?

最佳答案

到目前为止我从未使用过 pymacs,但是当我查看您的 .emacs 时引起我注意的一件事是您显然没有将 pymacs 目录添加到 emacs load-path 但仅限于 pymacs 一个:

(setq pymacs-load-path '( "~/.emacs.d/site-lisp/rope"
"~/.emacs.d/site-lisp/ropemode"
"~/.emacs.d/site-lisp/ropemacs"))

你可能还需要这样的东西:

(add-to-list 'load-path "~/.emacs.d/site-lisp/rope")
(add-to-list 'load-path "~/.emacs.d/site-lisp/ropemode")
(add-to-list 'load-path "~/.emacs.d/site-lisp/ropemacs")

(或任何你有 pymacs.el 的地方)以便 emacs 可以找到 lisp 文件。在pymacs documentation中也提到

2.4 Install the Pymacs proper ... for the Emacs part ...

This is usually done by hand now.First select some directory along thelist kept in your Emacs load-path, forwhich you have write access, and copyfile pymacs.el in that directory.

关于python - pymacs:一般问题和安装问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1078069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com