|
-- AppleScript -- |
|
|
|
-- This example is meant as a simple starting point to show how to get the information in the simplest available way. |
|
-- Keep in mind that when asking for a `return` after another, only the first one will be output. |
|
-- This method is as good as its JXA counterpart. |
|
|
|
-- Google Chrome |
|
tell application "Google Chrome" to return title of active tab of front window |
|
tell application "Google Chrome" to return URL of active tab of front window |
|
-- Google Chrome Canary |
|
tell application "Google Chrome Canary" to return title of active tab of front window |
|
tell application "Google Chrome Canary" to return URL of active tab of front window |
|
-- Chromium |
|
tell application "Chromium" to return title of active tab of front window |
|
tell application "Chromium" to return URL of active tab of front window |
|
-- Safari |
|
tell application "Safari" to return name of front document |
|
tell application "Safari" to return URL of front document |
|
-- Webkit |
|
tell application "Webkit" to return name of front document |
|
tell application "Webkit" to return URL of front document |
|
|
|
-- This example will return both the title and URL for the frontmost tab of the active browser, separated by a newline. |
|
-- Keep in mind that to be able to use a variable in `tell application` — via `using terms from` — we’re basically requiring that referenced browser to be available on the system. |
|
-- That means that to use this on "Google Chrome Canary" or "Chromium", "Google Chrome" needs to be installed. Same for other browsers. |
|
-- This method also does not exit with a non-zero exit status when the frontmost application is not a supported browser. |
|
-- For the aforementioned reasons, this method is inferior to its JXA counterpart. |
|
|
|
tell application "System Events" to set frontApp to name of first process whose frontmost is true |
|
|
|
if (frontApp = "Safari") or (frontApp = "Webkit") then |
|
using terms from application "Safari" |
|
tell application frontApp to set currentTabTitle to name of front document |
|
tell application frontApp to set currentTabUrl to URL of front document |
|
end using terms from |
|
else if (frontApp = "Google Chrome") or (frontApp = "Google Chrome Canary") or (frontApp = "Chromium") then |
|
using terms from application "Google Chrome" |
|
tell application frontApp to set currentTabTitle to title of active tab of front window |
|
tell application frontApp to set currentTabUrl to URL of active tab of front window |
|
end using terms from |
|
else |
|
return "You need a supported browser as your frontmost app" |
|
end if |
|
|
|
return currentTabUrl & "\n" & currentTabTitle |