Emacs: Определение функции символа недействительно: use-package

Я пытаюсь настроить Emacs в Windows, и есть один пакет "use-package", который я хочу вставить в него в моей конфигурации, но когда я нажимаю для выполнения в Emacs, выдается сообщение "Определение функции Symbol void: use- пакет"

(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 notavailable".

    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 в списке производится с M-x package-list, Если это так, то (package-install 'use-package) должно получиться: пакет доступен на MELPA.

Чтобы использовать это, вы должны добавить

(require 'use-package)

к вашему.emacs (или эквивалентному).

Другие вопросы по тегам