emacs función de llamada lisp con argumento prefijo programáticamente
Quiero llamar a una función desde algún código elisp como si la hubiera llamado interactivamente con un argumento prefijo. Específicamente, quiero llamar a grep con un prefijo.
Lo más cerca que he estado de hacerlo funcionar es usarexecute-extended-command
, pero eso aún requiere que escriba el comando al que quiero llamar con un prefijo ...
;; calls command with a prefix, but I have to type the command to be called...
(global-set-key (kbd "C-c m g")
(lambda () (interactive)
(execute-extended-command t)))
La documentación dice queexecute-extended-command
usoscommand-execute
para ejecutar el comando leído desde el minibúfer, pero no he podido hacerlo funcionar:
;; doesn't call with prefix...
(global-set-key (kbd "C-c m g")
(lambda () (interactive)
(command-execute 'grep t [t] t)))
¿Hay alguna forma de llamar a una funcióncon un prefijo pero no interactivamente?