読者です 読者をやめる 読者になる 読者になる

Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

interactiveでミニバッファから変数を受け取る

interactiveの後に渡す文字列で変数を受け取る際ミニバッファに表示する文字列を指定できます。
複数の変数を設定したい場合は改行するようです。
なお、行頭に「コード文字」とかいうものを設定する必要があります。

数値ならば「n」

数値ならばnです

(defun testFunc (a b)
(interactive "np \nng \n")
(message "The result is %d" (* a b)))

とやれば

p 12
g 34
The result is 46

文字列ならば「n」

文字列の場合は「s」です。

(defun InteractiveConcat (a b)
"InteractiveConcat"
(interactive "sString1\> \nsString2\> \n")
(message "The result is %s" (concat a b)))

とやれば

String1> hoge
String2> fuga
The result is hogehuga

といった結果を得ます。