TL; DR: puede usar clipmon
disponible en MELPA y activar clipmon-mode
.
Nota: los detalles a continuación se aplican a los servidores X, pero el paquete debería funcionar en cualquier plataforma.
¿Cómo funciona el portapapeles?
El portapapeles se implementa como un proceso asincrónico. Cuando copia desde una aplicación, se convierte en el "propietario del portapapeles" pero en realidad no coloca los datos copiados en ninguna parte. Cuando pega en una aplicación, solicita los datos del "propietario del portapapeles" actual.
Referencia: http://www.jwz.org/doc/x-cut-and-paste.html
Cómo obtener el contenido del portapapeles
Según tengo entendido, la forma "confiable" de ver si hay nuevos datos en el portapapeles es sondear periódicamente el servidor X para verificar qué hay allí. Para emacs, el paquete clipmon ( https://github.com/bburns/clipmon ) hace eso. Cada dos segundos por defecto.
Extracto del archivo README:
También agrega cambios al portapapeles del sistema en el anillo de cierre, convirtiendo a Emacs en un administrador de portapapeles para texto; luego puede usar un paquete como Browse-kill-ring o helm-ring para ver y administrar su historial del portapapeles.
(Tenga en cuenta que en realidad no probé este paquete, pero ciertamente parece una solución).
Finalmente descubrí una solución torpe, que se refería al concepto de
clipmon
. Pero muy simple con el código de una línea:El anillo de matar se sincronizará cada 3 segundos con el portapapeles del sistema. Por supuesto, puede alterar el intervalo a un valor aún menor.
PD: La razón por la que necesito esta funcionalidad es que quiero definir un comando que pueda invocarse con argumentos de lo que copié externamente.
Gracias por las respuestas de @kaushalmodi y @YoungFrog.
fuente