Emacs: Где разместить файл psvn.el? - PullRequest
7 голосов
/ 30 июня 2009

Я совершенно новичок в emacs и начинаю учиться тому, как эффективно его использовать.

Первое, что я хочу использовать, это режим SVN.

Я скачал psvn.el и поместил его в каталог ~ / .emacs.d

Затем, следуя инструкции в части комментариев файла psvn.el, я поставил эту строку

(require 'psvn)

В файл .emacs

Это мой текущий файл .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))
(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.
 )

(require 'psvn)

Теперь, когда я запускаю emacs, я получаю это сообщение об ошибке:

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

File error: "Cannot open load file", "psvn"

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

Я поместил psvn.el в неправильное место?

Я использую Cygwin + WinXP

Ответы [ 3 ]

12 голосов
/ 30 июня 2009

Это связано с тем, что Emacs не может найти файл, предоставляющий psvn на его load-path.

В вашей оболочке:

mkdir -p ~/.emacs.d                # Make the directory unless it exists
mv /some/path/psvn.el ~/.emacs.d/  # Move psvn.el into that directory

В вашем файле инициализации Emacs (часто ~/.emacs):

(add-to-list 'load-path "~/.emacs.d")  ; Add this directory to Emacs' load path
(require 'psvn)                        ; Load psvn

РЕДАКТИРОВАТЬ: Я только что понял, что вы на Windows XP. Я не уверен, как Cygwin справится со всем этим, но за пределами Cygwin процедура почти такая же, просто помните, что ~ равно %APPDATA% в Windows XP, поэтому .emacs.d и .emacs должны быть в этом каталоге.

1 голос
/ 30 июня 2009

Я полагаю, у вас есть проблемы с поиском вашего домашнего каталога в Windows? Попробуйте Cx d ~ RETURN (запустите dired в вашем домашнем каталоге), чтобы увидеть, где находится ваш домашний каталог, затем сделайте то, что говорят другие ответы: поместите psvn.el в .emacs.d и добавьте ~ / .emacs.d в свой load- путь

1 голос
/ 30 июня 2009

Первое, что вам нужно сделать, это добавить .emacs.d к вашему пути загрузки, чтобы он знал, где искать. Обычно большинство людей хранят .el плагинов в ~/.emacs.d/site-lisp, поэтому я делаю это:

;; >>> Configure Load Path <<< ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(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)))

;; I should really just do this recursively.
(add-path "") 
;; (add-path "some-nested-folder")

Теперь (require 'psvn) должно работать нормально.

...