Вопросы с тегом «byte-compilation»

4
Могу ли я избежать устаревших байтовых файлов elisp?
Иногда, когда я запускаю Emacs, я получаю сообщение вроде Исходный файл `/home/USER/.emacs.d/elpa/....el 'новее, чем файл, скомпилированный байтами Кроме того, я иногда редактирую разрабатываемый пакет и забываю перекомпилировать его. Когда я пытаюсь загрузить новый файл, мне требуется время, чтобы понять, что Emacs все еще использует старый скомпилированный файл. Есть ли способ, …

2
Может ли функция или макрос определять предупреждения байтового компилятора?
Я пишу функцию, которая, в принципе, принимает произвольное количество аргументов. На практике, однако, ему всегда следует передавать только четное количество аргументов, и в противном случае это приведет к нежелательным результатам. Вот фиктивный пример для контекста: (defun my-caller (&rest args) (while args (call-other-function (pop args) (pop args)))) Когда файл elisp компилируется …

1
подавить предупреждение: присвоение свободной переменной (и другим)
Как я могу подавить предупреждение "присваивание свободной переменной" при байтовой компиляции файла lisp emacs? Я на самом деле в основном заинтересован в подавлении его для определенного буфера при использовании flycheck, но я понимаю, что это просто передаётся байтовому компилятору. Также было бы хорошо получить список всех предупреждений / ошибок, которые …

3
Функция defun внутри let с лексической привязкой выдает предупреждение при байтовой компиляции «функция не известна как определенная»
Я хочу получить эффект статической переменной, используя defunвнутри letс лексической привязкой для создания замыкания. Однако при байтовой компиляции файла я получаю предупреждение. Я делаю что-то не так, или если нет, есть ли способ подавить это предупреждение? Я создал MCVE: ;; -*- lexical-binding: t -*- (let ((count 0)) (defun increase-count () …

2
Макросы раскрываются при компиляции файла?
У меня есть макрос, который необходимо расширять при каждом использовании во время компиляции. Есть ли способ, которым я могу указать, чтобы это было так, не проходя через кодовую базу и тщательно оборачивая каждый вызов eval-when-compile?

1
Макрос с defcustom приводит к ошибке «Значение символа, поскольку переменная пуста» при байтовой компиляции
В двух моих пакетах у меня есть макрос, тело которого зависит от переменной, определенной в defcustomформе. При установке пакетов из Melpa байт-компиляция заканчивается: Ошибка: значение символа в качестве переменной недействительно: my-defcustom-variable Затем вручную выполняется байтовая компиляция файла, открывая его в буфере. Я пытался с autoloadcookie, но по-прежнему такое же поведение. …


1
Работа с «Предупреждение: присвоение свободной переменной», когда определенные библиотеки могут отсутствовать в дизайне
Байтная компиляция моего режима: (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определяется в externa; библиотека, expand-regionкоторая находится на http://elpa.gnu.org Мой режим регистрирует расширение для expand-regionбиблиотеки, но можно запустить мой режим без expand-regionрежима. …

2
`Warning (bytecomp)` немного расплывчато - могу ли я получить больше информации?
Когда я запускаю emacs, я получаю пару предупреждений о компиляции байтов в всплывающем окне: Warning (bytecomp): `interactive-p' is an obsolete function (as of 23.2); use `called-interactively-p' instead. [7 times] Warning (bytecomp): Use `with-current-buffer' rather than save-excursion+set-buffer Могу ли я получить emacs для определения местоположения?
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.