Emacs: определение функции символа void: use-package
Я пытаюсь настроить Emacs на Windows, и есть один пакет "use-package", который я хочу вставить в это в мою конфигурацию, но когда я нажимаю для выполнения на Emacs, покажут сообщение "Определение функции Symbol недействительно: пакет"
(setq inhibit-startup-message t)
(require 'package)
(setq package-enable-at-startup nil)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/"))
(add-to-list 'package-archives '("gnu" . "https://elpa.gnu.org/packages/"))
(package-initialize)
(unless (package-installed-p 'use-package)
(package-refresh-contents)
(package-install 'use-package))
Иногда я получаю сообщение об ошибке "use-package is unavailable".
Debugger entered--Lisp error: (void-function package-installed-p)
(package-installed-p (quote use-package))
(if (package-installed-p (quote use-package)) nil (package-refresh-contents) (package-install (quote use-package)))
eval((if (package-installed-p (quote use-package)) nil (package-refresh-contents) (package-install (quote use-package))) nil)
elisp--eval-last-sexp(nil)
eval-last-sexp(nil)
funcall-interactively(eval-last-sexp nil)
call-interactively(eval-last-sexp nil nil)
command-execute(eval-last-sexp)
Ответы
Ответ 1
Вы должны быть в состоянии найти use-package
в списке, созданном с помощью Mx package-list-packages
. Если это так, то (package-install 'use-package)
должен быть успешным: пакет доступен на MELPA.
Чтобы использовать это, вы должны добавить
(require 'use-package)
к вашему .emacs (или эквивалентному).