Description
This AppleScript saves a list of all the open tabs in your (frontmost) Chrome window to a new outline in OmniOutliner – Perfect for keeping track of webpages to return to later instead of keeping a billion tabs open all the time!Alfred Users
I've rolled this script into a ready-to-go workflow for you – click here to download it. I've given it a default keyword of "ctoo" (as in "Chrome Tabs to OmniOutliner") to make it work with some of the other "Save Tabs" workflows.Launchbar 6 Users
I've assembled this script into a pre-packaged Action for you as well! Consider this "Experimental" as I'm new to LB6 but, if you want to try it out, click here to download it. Enjoy!The Code
(*
◸ Veritrope.com
Save Chrome Tabs to OmniOutliner
VERSION 1.0
June 15, 2014
// TERMS OF USE:
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// LIKE THIS SCRIPT?
If this AppleScript is helpful to you, please show your support here:
http://veritrope.com/support
// SCRIPT INFORMATION AND UPDATE PAGE
http://veritrope.com/code/save-chrome-tabs-to-omnioutliner
// REQUIREMENTS
More details on the script information page.
// CHANGELOG
1.00 INITIAL RELEASE
*)
(*
======================================
// MAIN PROGRAM
======================================
*)
--RESET VALUES
set urlList to {}
set currentTab to 0
--SET DATE STAMP
set the dateStamp to ((the current date) as string)
set noteTitle to "URL List from Chrome Tabs on " & the dateStamp
--MAKE NEW OUTLINE
tell application "OmniOutliner" to set newOut to make new document with properties {name:noteTitle}
set docName to (name of newOut)
--PROCESS TABS OF FRONTMOST CHROME WINDOW
tell application "Google Chrome"
set successCount to 0
set ChromeWindow to the front window
set tabCount to (count of (tabs of ChromeWindow))
--GET TAB INFORMATION
try
repeat with t in (tabs of ChromeWindow)
set currentTab to currentTab + 1
set tabTitle to (title of t)
set tabURL to (URL of t)
--MAKE ROW IN OMNIOUTLINER
tell application "OmniOutliner"
tell its document docName
set aRow to make new row with properties {topic:tabTitle, note:tabURL}
set note expanded of aRow to true
expandAll
end tell
end tell
--INCREMENT SUCCESS COUNT
set successCount to (successCount + 1)
end repeat
end try
end tell
--NOTIFY RESULTS
my notification_Center(successCount, tabCount)
(*
======================================
// NOTIFICATION SUBROUTINE
======================================
*)
--NOTIFICATION CENTER
on notification_Center(successCount, itemNum)
set Plural_Test to (successCount) as number
if Plural_Test is -1 then
display notification "No Tabs Exported!" with title "Send Chrome Tabs to OmniOutliner" subtitle "◸ Veritrope.com"
else if Plural_Test is 0 then
display notification "No Tabs Exported!" with title "Send Chrome Tabs to OmniOutliner" subtitle "◸ Veritrope.com"
else if Plural_Test is equal to 1 then
display notification "Successfully Exported " & itemNum & ¬
" Tab to OmniOutliner" with title "Send Chrome Tabs to OmniOutliner" subtitle "◸ Veritrope.com"
else if Plural_Test is greater than 1 then
display notification "Successfully Exported " & itemNum & ¬
" Tabs to OmniOutliner" with title "Send Chrome Tabs to OmniOutliner" subtitle "◸ Veritrope.com"
end if
set itemNum to "0"
delay 1
end notification_Center
◸ Veritrope.com
Save Chrome Tabs to OmniOutliner
VERSION 1.0
June 15, 2014
// TERMS OF USE:
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.
To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// LIKE THIS SCRIPT?
If this AppleScript is helpful to you, please show your support here:
http://veritrope.com/support
// SCRIPT INFORMATION AND UPDATE PAGE
http://veritrope.com/code/save-chrome-tabs-to-omnioutliner
// REQUIREMENTS
More details on the script information page.
// CHANGELOG
1.00 INITIAL RELEASE
*)
(*
======================================
// MAIN PROGRAM
======================================
*)
--RESET VALUES
set urlList to {}
set currentTab to 0
--SET DATE STAMP
set the dateStamp to ((the current date) as string)
set noteTitle to "URL List from Chrome Tabs on " & the dateStamp
--MAKE NEW OUTLINE
tell application "OmniOutliner" to set newOut to make new document with properties {name:noteTitle}
set docName to (name of newOut)
--PROCESS TABS OF FRONTMOST CHROME WINDOW
tell application "Google Chrome"
set successCount to 0
set ChromeWindow to the front window
set tabCount to (count of (tabs of ChromeWindow))
--GET TAB INFORMATION
try
repeat with t in (tabs of ChromeWindow)
set currentTab to currentTab + 1
set tabTitle to (title of t)
set tabURL to (URL of t)
--MAKE ROW IN OMNIOUTLINER
tell application "OmniOutliner"
tell its document docName
set aRow to make new row with properties {topic:tabTitle, note:tabURL}
set note expanded of aRow to true
expandAll
end tell
end tell
--INCREMENT SUCCESS COUNT
set successCount to (successCount + 1)
end repeat
end try
end tell
--NOTIFY RESULTS
my notification_Center(successCount, tabCount)
(*
======================================
// NOTIFICATION SUBROUTINE
======================================
*)
--NOTIFICATION CENTER
on notification_Center(successCount, itemNum)
set Plural_Test to (successCount) as number
if Plural_Test is -1 then
display notification "No Tabs Exported!" with title "Send Chrome Tabs to OmniOutliner" subtitle "◸ Veritrope.com"
else if Plural_Test is 0 then
display notification "No Tabs Exported!" with title "Send Chrome Tabs to OmniOutliner" subtitle "◸ Veritrope.com"
else if Plural_Test is equal to 1 then
display notification "Successfully Exported " & itemNum & ¬
" Tab to OmniOutliner" with title "Send Chrome Tabs to OmniOutliner" subtitle "◸ Veritrope.com"
else if Plural_Test is greater than 1 then
display notification "Successfully Exported " & itemNum & ¬
" Tabs to OmniOutliner" with title "Send Chrome Tabs to OmniOutliner" subtitle "◸ Veritrope.com"
end if
set itemNum to "0"
delay 1
end notification_Center