Apple Script para autotipado

1

Me gustaría saber cómo agregar varias líneas en mi autotyper.

Actualmente, todo lo que puede hacer es repetir las mismas líneas una y otra vez, que es "AVISO AVISO AVISO".

Me gustaría saber cómo agregar varias líneas de texto diferentes y luego repetirlas.

Aquí está mi código actual:

tell application "System Events"
delay 1
set textToType to "NOTICE NOTICE NOTICE"
    repeat
        delay 5
        keystroke textToType
        keystroke return
    end repeat
end tell
    
pregunta Soph 11.12.2016 - 00:55

1 respuesta

1

Si es absolutamente necesario que lo haga con AppleScript, la forma más sencilla es simplemente concatenar su textToType con devoluciones ya insertadas. Si copia / pega texto de varias líneas, AppleScript insertará nuevos caracteres de línea \n , pero en realidad no se traducen bien en otras aplicaciones

set textToType to "NOTICE NOTICE NOTICE" & return & "Notice 2" & return & ¬  
"Notice 3" & return & "Notice 4" & return
tell application "System Events"
    keystroke textToType
end tell

El pequeño 'lado L' ¬ solo le dice a Applescript que esta nueva línea no es una nueva línea de script sino una continuación de la anterior, por lo que no se desplaza a la derecha de la página.

Sin él, la línea se vería así

set textToType to "NOTICE NOTICE NOTICE" & return & "Notice 2" & return & "Notice 3" & return & Notice 4" & return

Personalmente, este es el tipo de tarea que le daría a la función de reemplazo de texto incorporada de Apple en lugar de AppleScript.

Pref. del sistema > Teclado > Texto

Golpe + en la parte inferior, ingrese su palabra de activación, luego copie / pegue desde algo como TextEdit, que mantendrá correctamente los retornos de su carro.
[No puede agregar retornos de carro directamente en ese panel de preferencias, tiene que copiar / pegar una fuente existente. Tampoco puede ver un reemplazo de varias líneas correctamente en el panel, pero será exactamente como lo copió, en uso.]

Luego, cada vez que escriba su activador, lo reemplazará con su pegado multilínea.

Despuésdeloscomentarios:sinecesitaunretrasoentrecadalínea,nopuedeconcatenar&debeenviarcadallamadaporseparado

tellapplication"System Events"
    keystroke "NOTICE NOTICE NOTICE" & return
    delay 5
    keystroke "Notice 2" & return
    delay 5
    keystroke "Notice 3" & return
    delay 5
    keystroke "Notice 4" & return
end tell
    
respondido por el Tetsujin 11.12.2016 - 08:50

Lea otras preguntas en las etiquetas