コードからコマンドを呼び出すときに「インタラクティブ」引数を使用する方法


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

test1つの入力を取るため、これは理にかなっています。作るtestのはinput &optional簡単になりますtest-forwardリターンをnil何もせずに。これを行う正しい方法は何ですか?

回答:


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.