El flujo de trabajo funciona desde Automator pero genera un error de tiempo de espera agotado cuando se ejecuta como servicio


1

Este flujo de trabajo de Automator funciona perfectamente cuando se ejecuta desde Automator.

Sin embargo, cuando se inicia como un servicio desde un método abreviado de teclado, el script genera un error de tiempo de espera agotado.

El atajo de teclado es válido. Si asignamos el acceso directo al script Automator # 2, el script # 2 se ejecuta desde el acceso directo sin problemas.

El atajo de teclado es Command+Shift+F.

tell application "Google Chrome"

    set allTabs to every tab of front window

    repeat with aTab in allTabs
        set curURL to URL of aTab
        set newURL to my findAndReplaceInText(curURL, "%3F", "?")
        set URL of aTab to newURL
    end repeat

end tell

on findAndReplaceInText(theText, theSearchString, theReplacementString)
    set AppleScript's text item delimiters to theSearchString
    set theTextItems to every text item of theText
    set AppleScript's text item delimiters to theReplacementString
    set theText to theTextItems as string
    set AppleScript's text item delimiters to ""
    return theText
end findAndReplaceInText

2
1. El método abreviado de teclado ⇧⌘F ya es el predeterminado asignado a Mostrar siempre la barra de herramientas en pantalla completa en el menú Ver en Google Chrome , ¿lo modificó? 2. Usted dijo: "Si asignamos el acceso directo al script Automator # 2, el script # 2 se ejecuta desde el acceso directo sin problemas", solo se muestra un script AppleScript en su OP. 3. No ha dicho qué configuración está utilizando en el Servicio de Automator . 4. Usted dijo, "el script genera un error de tiempo de espera agotado", ¿cómo se muestra este error y cuál es la redacción exacta? Continúa en el siguiente comentario ...
user3439894

1
5. Un repeat ciclo que esencialmente cargará varias páginas web siempre debe tener un retraso establecido en la parte inferior del repeat ciclo , por ejemplo, delay 3como mínimo. Esto puede ayudar con el error de tiempo de espera, pruébelo y vea. Dicho todo esto, por lo que puedo ver, falta un poco de información, lo que hace que esta sea una pregunta de muy baja calidad. Por cierto, ejecuté su código en una ventana de Google Chrome con 10 pestañas que cumplirían con los criterios de búsqueda / reemplazo con el delay 3agregado y no obtuve un tiempo de espera. (No delay 3
probé

@ user3439894 gracias por la respuesta. estaba implícito que la barra de herramientas Mostrar siempre en pantalla completa ya estaba reasignada. de lo contrario, el otro script no se ejecutaría. Sin embargo, tiene razón en que se omitieron las propiedades del servicio. está configurado para no recibir entrada de texto. ¿Algo más que pueda ser útil? ¡gracias por la respuesta!
Crashalot

@ user3439894 ¿funcionó el script, es decir, reemplazó instancias de % 3F con ? ? gracias por probarlo, agradezco la ayuda!
Crashalot
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.