重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

emacs lisp でminibuffer-read関数での入力を、自動的にする方法(プログラミング)はありますでしょうか。
たとえば、(read-from-minibuffer "")を実行すると、ミニバッファからの入力が促されますが、そこでユーザが入力するのではなく、プログラムで値を入力し確定してread-from-minibuffer関数を抜けたいのですが、その方法がわかりません。

それを目指して下記のようなプログラムを書きましたがうまくいきませんでした。aaを実行して、"abc"が渡るようにして、ミニバッファを抜けたいのですがうまくいきません。
----
(defun x() (insert "abc\n") )

(defun aa () (interactive) ""
(add-hook 'minibuffer-setup-hook 'x )
(read-from-minibuffer "")
(remove-hook 'minibuffer-setup-hook 'x )
)
----
また、上記(insert "abc\n")の後に、(exit-minibuffer)を記述すれば、"abc\n"が渡って抜けられるかと考えたのですが、うまくいきません。どなたか、良い方法をご存知の方があれば、教えていただきたくよろしくお願いいたします。

A 回答 (1件)

絶対かどうかは分かりませんが、無理だと思います。


read-from-minibuffer
を再定義すればいいのではないですか?
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
再定義について知りませんでした。検索して見たところ、参考になりそうなものがあり、勉強してみたいと思います。
どうもありがとうございました。

お礼日時:2008/03/13 08:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!