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
5. Un
—
probé
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 3
como 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 3
agregado y no obtuve un tiempo de espera. (No delay 3
@ 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