@ JonathanLeech-Pepin: Предложено, но отклонено Emacs Dev.
Дрю
Ответы:
12
Да. Библиотека 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. Вот больше информации о библиотеке.
Мне действительно нравится help-fns +, но он добавляет большой пробел и общий комментарий к каждой функции, на которую я смотрю: imgur.com/NiDlkjS - есть идеи?
Уилфред Хьюз
@WilfredHughes: теперь все должно быть в порядке . (Следует также отразить на MELPA в течение 24 часов.)
Я не могу найти это встроенным. Довольно легко создать оболочку, 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, но оно должно нормально интегрироваться.
Быстрый тест показывает, что он работает с IDO. Скопировал *scratch*, оценил, затем запустил M-x describe-command. Команды отображаются в вертикальном списке благодаря ido-vertical.
Джонатан Лич-Пепин
Не должна быть последняя строка (describe-function command)?
npostavs
5
Если вы используете helm и helm-M-x, вы можете нажать C-jна команды, чтобы открыть их документацию.
Ответы:
Да. Библиотека
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
завершение вкладки, но позволяет искать только с помощью команд и переносит вас на страницу документации.источник
если у вас установлен smex, просто позвоните в smex. Начните печатать, когда появится нужный, нажмите Ch f.
источник
Я не могу найти это встроенным. Довольно легко создать оболочку,
describe-function
которая завершает имена команд только при интерактивном вызове. В приведенной ниже реализации я продублировал интерактивную формуdescribe-function
и изменилfboundp
тест наcommandp
. В качестве дополнительного бонуса эта функция предлагает имена всех функций при вызове с префиксным аргументом. Изменитеif current-prefix-arg
на,if (not current-prefix-arg)
чтобы сделать описание всех функций по умолчанию.Я не проверял это с ido, но оно должно нормально интегрироваться.
источник
*scratch*
, оценил, затем запустилM-x describe-command
. Команды отображаются в вертикальном списке благодаряido-vertical
.(describe-function command)
?Если вы используете helm и
helm-M-x
, вы можете нажатьC-j
на команды, чтобы открыть их документацию.источник