Gelegentlich verwende ich interaktive Funktionen innerhalb einer Funktion, die ich für meinen eigenen Gebrauch schreibe. Wenn eine Funktion nach Informationen fragt (z. B. "Ausgabedatei: ~ /"), gibt es eine allgemeine Möglichkeit, dem Minibuffer Text hinzuzufügen und dann die Eingabetaste zu drücken, damit der Benutzer dies nicht tun muss?
Angenommen, ich möchte org-latex-export-to-pdf
innerhalb einer Funktion ausgeführt werden, möchte aber nicht, dass der Benutzer einen Dateinamen angeben muss. Beim Laufen (org-latex-export-to-pdf)
wird der Punkt in den Minibuffer verschoben, aber das Setzen (insert "filename.tex")
in die nächste Zeile scheint nicht zu funktionieren.
interactive
Klausel nach solchen Informationen fragen. Wenn Sie von elisp aufgerufen werden, sollten Sie in der Lage sein, die Informationen als Funktionsargument zu übergeben. Dies hilft Ihnen natürlich nicht weiter, falls die Funktion, die Sie aufrufen möchten, diesem Entwurf nicht folgt.