Automator-Workflow / App zum Aktualisieren einer bestimmten Registerkarte in Safari (oder sogar Crome)

Wenn ich meine Rails-App codiere, wechsle ich ziemlich oft zurück zu Safari, um meine lokale Version der Website zu aktualisieren und zu sehen, ob meine Änderungen korrekt sind. Es wäre großartig, einfach eine der Funktionstasten zu drücken, und das würde mein Safari-Fenster in den Vordergrund bringen und die Seite manuell aktualisieren.

Ich kann anscheinend kein offensichtliches Beispiel dafür oder etwas in dieser Richtung für die typischen Google-Suchen usw. finden.

Irgendeine Idee, ob dies möglich ist und wenn ja, wie (zumindest der Automator-Teil)?

Nachdem Safari geöffnet ist (und eine zufällige Seite), können Sie Automator öffnen, auf Aufnahme klicken und dann Befehl-r eingeben. Stoppen Sie dann die Aufnahme. Ich werde das testen, um sicherzustellen, dass es jetzt funktioniert.
Ok, scheint zu funktionieren. Behalten Sie nach der Aufnahme einfach das Finder-Symbol bei, das den Befehl R drückt und das Fenster anweist, nach vorne zu kommen. Ich habe dann aber keine Ahnung, wie ich das in eine Funktionstaste umwandeln soll, jemand anderes kann Ihnen dabei helfen. Dadurch wird nur eine .app erstellt
Entschuldigen Sie die schlechte Grammatik, ich bin beschäftigt und dachte, ich gebe Ihnen einen Hinweis.
Ich bin so ziemlich auf die gleiche Antwort gestoßen wie du. Ich habe versucht, es den Shortcuts der Tastatur-App hinzuzufügen, aber bisher kein Glück. Ich habe die Aktion des Klickens auf die Registerkarte aufgezeichnet. Es scheint sich an den Namen der Registerkarte zu erinnern. Funktioniert, solange dieselbe Registerkarte irgendwo geöffnet ist.
Ich denke, es ist möglich, einen Prozess / eine App über einen Funktionstastendruck zu starten, aber ich habe keine Ahnung, wie.

Antworten (1)

Fügen Sie dieses Skript in den Skripteditor ein und speichern Sie es als Dienst. Ordnen Sie den Dienst einer Tastenkombination zu.

tell application "Safari"
    activate
    tell current tab of window 1
        do JavaScript "location.reload();"
    end tell
end tell

BEARBEITEN

tell application "Safari"
    activate
    tell window 1

        --options
        set myTab to tab 1
        set myTab to first tab whose URL = "https://apple.stackexchange.com/questions/224393/automator-workflow-app-to-refresh-a-given-tab-in-safari-or-even-crome/224431?noredirect=1#comment272178_224431"
        set myTab to first tab whose URL starts with "https://apple.stackexchange.com"

        if current tab is not myTab then set current tab to myTab
        tell myTab to do JavaScript "location.reload();"
    end tell
end tell

BEARBEITEN 2 Wählen Sie Ihre Registerkarte aus und führen Sie dieses Skript aus, um seinen Namen zu erhalten

tell application "Safari"
    activate
    tell window 1
        get name of current tab
    end tell
end tell

Geben Sie den Namen in diesem Skript ein:

tell application "Safari"
    activate
    tell window 1
        set myTab to first tab whose name = "insert name here"
        if current tab is not myTab then set current tab to myTab
        tell myTab to do JavaScript "location.reload();"
    end tell
end tell
Können Sie den Namen der Registerkarte angeben, um sicherzustellen, dass die richtige aufgerufen wird? Oder die erste Registerkarte?
Safari hat einen Fehler: Kann Registerkarte 1 von Fenster 1 nicht abrufen, dessen URL = apple.stackexchange.com/questions/224393/… . Ungültiger Index.
Ich könnte mir vorstellen, dass die URL falsch ist. Versuchen Sie es mit einer einfacheren URL oder beginnen Sie mit ...
Ich tat es (und hatte tatsächlich auch diese beiden Seiten offen). Es schlägt fehl, egal welche URL ich verwende.
Hmmm.. funktioniert jetzt (irgendwie). Ich kann das "Beginnt mit" auf meiner URL, die " localhost:3000 " ist, nicht ausführen . Das löst diese Warnung aus. Ich habe es mit Fenster 2 Tab 1 zum Laufen gebracht. Dies wird eines Tages kaputt gehen, wenn ich die Fenster in der anderen Reihenfolge öffne.
Siehe Bearbeiten 2 ....