0 votos

¿Cómo puedo mostrar un hipervínculo con un AppleScript?

Estoy tratando de obtener una URL a través de AppleScript, y luego mostrarla como un enlace clicable a través de una ventana. ¿Cómo puedo hacer esto? (si tengo que utilizar Xcode para esto, por favor, añadir la respuesta, pero proporcionar instrucciones detalladas, Por favor, )

3voto

Dan Puntos 101

AppleScript no puede mostrar texto enriquecido (HTML) en un diálogo emergente. Así que sus opciones son:

  1. Mostrar un diálogo de texto normal con AppleScript, mostrando la URL y preguntando al usuario si quiere ir allí. Si el usuario hace clic en "Aceptar", abrir esa URL (eso es exactamente 1 clic, por lo que es más o menos equivalente a un enlace clicable).

    -- tested with Safari 5.1.7 on Mac OS X 10.6.8
    set theUrl to "http://j.mp/LgHoEB"
    try
        display dialog theUrl & "\nClick OK to open this URL in Safari." with title "Open URL?" with icon caution
        if button returned of result is "OK" then
            tell application "Safari" to make new document with properties {URL:theUrl}
        end if
    on error number -128 -- user cancelled
        -- do something else
    end try
  2. Utilice el comando AppleScript de Safari do JavaScript para hacer una ventana emergente de JavaScript con la URL deseada como un enlace clicable (y posiblemente algo más de HTML personalizado):

    -- tested with Safari 5.1.7 on Mac OS X 10.6.8
    set theUrl to "http://j.mp/LgHoEB"
    set JSPopup to "(function() {" & ¬
        "var w = window.open('', 'Clickable link');" & ¬
        "w.document.write(" & ¬
        "'<html><body><p>" & ¬
        "<a href=\"" & theUrl & "\">" & theUrl & "</a>" & ¬
        "</p></body></html>'" & ¬
        ");})()"
    tell application "Safari"
        do JavaScript JSPopup in current tab of window 1
    end tell

    Por supuesto, esto sólo funcionará si su Safari permite ventanas emergentes (con mi configuración, por ejemplo, se abre una nueva pestaña en su lugar).

1voto

Hasta ahora los enlaces no se pueden hacer clic en los apple scripts pero puede haber una forma de evitarlo. Para abrir un solo enlace, puede utilizar como abajo,

set theAlertText to "Swiftlint is not installed"
set theAlertMessage to "Download from https://github.com/realm/SwiftLint manually. Would you like to open link?"
display alert theAlertText message theAlertMessage as critical buttons {"Cancel", "Open link"} default button "Open link" cancel button "Cancel" giving up after 60
set the button_pressed to the button returned of the result
if the button_pressed is "Open link" then
    open location "https://github.com/realm/SwiftLint/blob/master/README.md"
end if

0voto

adayzdone Puntos 1258
tell application "Safari" to display dialog URL of document 1 as string

O

set theUrl to "http://apple.stackexchange.com/posts/50397"
display dialog theUrl

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X