Как использовать «интерактивные» аргументы при вызове команды из кода

12

У меня есть команда с именем, testкоторая просто принимает ввод от пользователя и возвращает его обратно:

(defun test (input)
  (interactive "MInput: ")
  (message "%s" input))

Я хочу написать другую функцию, которая будет вызывать ее. Следующие ошибки:

(defun test-forward ()
  (interactive)
  (test))

с этой ошибкой

test-forward: Wrong number of arguments: (lambda (input) (interactive "MInput: ") (message "%s" input)), 0

Это имеет смысл, поскольку testзанимает один вход. Создание test«S input &optionalпросто делает test-forwardвозвращение , nilне делая ничего. Как правильно это сделать?

Pradhan
источник

Ответы: