Aún no tengo muy claro lo que intentas conseguir, pero quizá esto te ayude:
1. No has puesto un script de Python, así que me he inventado uno: mypyapp.py
.
Disculpas, ¡no soy un PyGuy! Lo guardé como ~/scripts/mypyapp.py
. Todo lo que hace es agarrar el contenido de la mesa de trabajo, e imprimirlo en stdio
. Puedes aumentarlo, o poner el código pertinente en tu script:
#!/opt/local/bin/python3
import sys, subprocess
def get_clipboard_data():
p = subprocess.Popen(["pbpaste"], stdout=subprocess.PIPE)
retcode = p.wait()
data = p.stdout.read()
return data
new_data = get_clipboard_data()
print('clipboard data: ',new_data)
2. Haz ejecutable el script:
chmod 755 ~/scripts/mypyapp.py
Nota: Puede ejecutar este script desde la línea de comandos para probarlo antes de continuar ; Asegúrese de que copie una línea de texto con commandc antes de ejecutar el script - ¡de lo contrario la mesa de trabajo puede estar vacía!:
~/path/to/mypyapp.py
3. Introduzca esta línea en su archivo de configuración zsh - ~/.zshrc
:
bindkey -s '\eg' '~/scripts/mypyapp.py^M'
4. source
su ~/.zshrc
como se muestra a continuación para cargar el archivo de configuración revisado en su shell:
. ~/.zshrc
# alternatively, use the command 'source ~/.zshrc'
5. Ejecute bindkey
para comprobar que se ha añadido:
bindkey | grep mypyapp
# which should yield one line:
"^[g" "~/scripts/mypyapp.py^M"
*Nota que el atajo de teclado no es lo que hemos introducido en el paso 3. '\eg'
se esperaba que significara optiong . Pero parece que MacOS ha anulado esa opción, sustituyéndola por ^[g
cuya traducción es la siguiente:
control[ + g
La secuencia es un poco complicado debe pulsar ambas teclas control[ , luego suelta ambos, y finalmente g .
Ya está.
No lo he probado a fondo, así que asegúrate de hacerlo antes de dedicarlo a una aplicación seria. También debes saber que si añades zle
(editor de líneas zsh) le ofrece muchas más opciones, pero éste puede ser un punto de partida razonable. Háganos saber si usted golpea cualquier inconveniente, o tiene más preguntas.