Байт складання мого режиму:
(defun dict-setup-expansions ()
"Add `dict-mode' specific expansions."
(set (make-local-variable 'er/try-expand-list) (list #'dict-mark-article)))
попереджає:
Warning: assignment to free variable `er/try-expand-list'
Це нормальна ситуація, оскільки er/try-expand-list
визначена зовнішня; бібліотека, expand-region
яка знаходиться на веб-сайті http://elpa.gnu.org
Розширення реєстру мого режиму до expand-region
бібліотеки, але нормально запускати мій режим без expand-region
режиму.
Я думаю, що правильним способом боротьби з попередженням є додавання декларації:
(defvar er/try-expand-list)
defvar
Документи кажуть:
The `defvar' form also declares the variable as "special",
so that it is always dynamically bound even if `lexical-binding' is t.
Я використовую -*- lexical-binding: t -*-
. Чи означає це, що без defvar
змінної er/try-expand-list
бути в лексичному просторі, і я маю реальну помилку?
(defvar er/try-expand-list)
.