emacs elisp interactive

Comandos interactivos emacs con valor por defecto



elisp interactive (1)

Me pregunto cómo es que algunos comandos interactivos en emacs presentan el valor predeterminado mientras que otros no lo hacen. Por ejemplo, cuando estoy en el archivo C y el cursor está en printf , ejecutar manual-entry manual sugerirá mostrar la página de manual para printf de forma predeterminada. Me gustaría hacer mis propios comandos interactivos con valor predeterminado. ¿Cómo? Parece que la cosa en el punto es una buena dirección, pero ¿cómo mezclo la cosa en el punto y la interactividad?


Ya tienes buenos puntos de partida para investigar tu propia solución.

thing-at-point es probablemente útil en este contexto. Hace poco answered una pregunta en la que expliqué cómo resolver este tipo de problema explorando la base de códigos de Emacs.

Aquí hay una función de juguete en bruto que se me ocurrió.

(defun say-word (word) (interactive (list (read-string (format "word (%s): " (thing-at-point ''word)) nil nil (thing-at-point ''word)))) (message "The word is %s" word))

Una cosa clave aquí es entender cómo funciona el formulario interactive . Yo leería la sección del manual correspondiente cuidadosamente.