कोड से कमांड को कॉल करते समय 'इंटरैक्टिव' तर्कों का उपयोग कैसे करें


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कुछ भी करने के बिना। ऐसा करने का सही तरीका क्या है?

जवाबों:


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.