Модификация слота документации существующей функции Emacs Lisp - PullRequest
0 голосов
/ 01 сентября 2018

По разным причинам я был вынужден использовать Emacs Git Master для разработки. В этой версии я регулярно получаю множество предупреждений в виде

No docstring slot for tags-lazy-completion-table
No docstring slot for etags--xref-backend
No docstring slot for gnus-intersection
No docstring slot for grep-compute-defaults
...

, которых часто так много, что это замедляет мое взаимодействие. Можно ли установить строку документации уже определенной функции Emacs Lisp без изменения существующего определения тела?

Ответы [ 2 ]

0 голосов
/ 02 сентября 2018

Стефан решил вашу актуальную проблему, но чтобы ответить на заданный вопрос:

Можно ли установить строку документации уже определенного Emacs Функция Lisp без изменения существующего определения тела?

Да, вы можете через свойство символа function-documentation.

(put FUNCTIONSYMBOL 'function-documentation VALUE)

В большинстве случаев VALUE будет строкой.

См:

  • C-h i g (elisp)Documentation Basics
  • C-h i g (elisp)Accessing Documentation
0 голосов
/ 02 сентября 2018

Предупреждения No docstring slot for ... - это ваша проблема, а не отсутствие строк документации (что вполне нормально). Я предлагаю вам попробовать

(setq debug-on-message "\\`No docstring slot for")

, а затем посмотрите на обратную трассировку, которую вы (надеюсь) получите, чтобы попытаться выяснить, какие пакеты выдают это предупреждение и почему (и особенно, почему это происходит только в Emacs-master: это может быть ошибкой в ​​Emacs-master, или несовместимость ... в любом случае сопровождающие Emacs могут захотеть услышать об этом).

...