Es bastante común que revise la documentación de un comando C-h fy luego invoque el comando M-xinmediatamente después.
En este momento, la forma más corta que he encontrado para "invocar el último comando de vista" es copiar su nombre (ya sea desde el búfer de ayuda o desde el historial) y tirarlo al M-xindicador del minibúfer.
Lo que realmente me gustaría es que los nombres de comandos dados
describe-functionsean parte de la historia de
execute-extended-command. Entonces solo podría hacer M-x M-p RET.
¿Cuál es la forma más fácil de hacer esto?
documentation
m-x
history-variables
Malabarba
fuente
fuente

smexyhelm-M-x? el primero está en MELPA, el segundo está incluidohelmen MELPA.Respuestas:
La "forma más fácil" es definir su propia versión
describe-functiony vincularlaC-h f.Tome el código vainilla y cambie solo la llamada a
completing-readpara que use la misma lista de historial queM-x(execute-extended-command) usa, que esextended-command-history.¿Cómo encontré el código original?
C-h f describe-function,C-h k M-x,C-h f execute-extended-command. En el código paraexecute-extended-commandque vi que lee el nombre del comando usandoread-extended-command, y que llamacompleting-readpasarextended-command-historycomoHISTORYargumento.fuente
No puedo agregar una respuesta exacta a su pregunta, sino un flujo de trabajo que elimine la necesidad de hacerlo.
Yo uso en
smexlugar deexecute-extended-command. Una vez en el minibúfer desmex:execute-extended-commandsmex-describe-functionsmex-find-functionNo me gustan los enlaces predeterminados, así que los he personalizado:
fuente
Tenga en cuenta que es muy fácil invocar el comando desde su búfer de Ayuda. Después de escribir
C-h fsimplemente escribaM-x M-n RET. Esto funciona porque en un nuevo búfer de Ayuda, el nombre del comando está en la parte superior del búfer debajo del cursor y loM-nrecupera en el minibúfer.Sin embargo, si desea agregar un comando
extended-command-historycada vez que visita su documentación, puede hacerlo con un pequeño consejo:o usando la nueva macro
define-advicerecién agregada en 25.0.50:fuente
(interactive)?(commandp function)comprueba que la función buscada sea interactiva porque solo se deben agregar comandosextended-command-history. Entonces, si la función buscada no es interactiva, no se agrega aextended-command-history.Si lo usa
helm-M-x, no es necesario escribirC-h fpara buscar la documentación de los comandos, solo useC-joC-zmientras se ejecutahelm-M-xpara alternar la visualización de la documentación.Ver también las características de Helm Mx .
fuente