Я C-h fдуже використовую , але це всі функції в Emacs. Мене часто цікавлять лише інтерактивні функції, тобто команди.
Чи є еквівалент командам? В ідеалі я також хотів би завершити програму ido.
Я C-h fдуже використовую , але це всі функції в Emacs. Мене часто цікавлять лише інтерактивні функції, тобто команди.
Чи є еквівалент командам? В ідеалі я також хотів би завершити програму ido.
Відповіді:
Так. Бібліотека help-fns+.el
визначає команду describe-command
.
І він переосмислює describe-function
так, щоб це зробити, describe-command
якщо ви дасте йому префікс arg.
Бібліотека пов'язує describe-command
до C-h c
( describe-key-briefly
переміщається C-h C-c
).
Та ж бібліотека визначає інші команди довідки, такі як describe-file
, describe-buffer
, describe-keymap
, і describe-option-of-type
. Ось додаткові відомості про бібліотеку.
apropos-command
може бути досить близьким.
Він не пропонує describe-function
завершення вкладки, але він дозволяє шукати лише за допомогою команд, і перенесе вас на їх сторінку документа.
Я не можу знайти це вбудоване. Зробити обгортку навколо досить просто, describe-function
яка лише виконує імена команд, коли викликається інтерактивно. Під час виконання нижче я скопіював інтерактивну форму з describe-function
і змінив fboundp
тест на commandp
. Як додатковий бонус, ця функція пропонує всі назви функцій, коли їх викликає аргумент префікса. Змініть, if current-prefix-arg
щоб if (not current-prefix-arg)
зробити опис усіх функцій за замовчуванням.
(defun describe-command (function &optional all-functions)
"Display the full documentation of FUNCTION (a symbol).
When called interactively with a prefix argument, prompt for all functions,
not just interactive commands, like `describe-function'."
(interactive (if current-prefix-arg
(eval (car (cdr (interactive-form 'describe-function))))
(list (let ((fn (function-called-at-point))
(enable-recursive-minibuffers t)
val)
(setq val (completing-read (if (and fn (commandp fn))
(format "Describe command (default %s): " fn)
"Describe command: ")
obarray 'commandp t nil nil
(and fn (commandp fn)
(symbol-name fn))))
(if (equal val "") fn (intern val)))
current-prefix-arg)))
(describe-function function))
Я не перевіряв це на ido, але він повинен нормально інтегруватися.
*scratch*
, оцінено, потім побігло M-x describe-command
. Команди показали у вертикальному списку завдяки ido-vertical
.
(describe-function command)
?