The fact that there's no way to get anything to actively sync between Chrome and iCloud is maddening. Why has nobody reverse-engineered the iCloud API and made a Chrome extension to talk to it?
The fact that there's no way to get anything to actively sync between Chrome and iCloud is maddening. Why has nobody reverse-engineered the iCloud API and made a Chrome extension to talk to it?
I still launch Chrome and FF regularly for development, but my tab-hell lives in Safari now.
I find Safari often becomes unusable with 30–50 tabs.
Here's the code, which I have tied to "stc " (send to Chrome). [Ha! In typing the snippet shortcut, of course, I sent this very page to Chrome. :-)]
property theURL : ""
tell application "Safari"
set theURL to URL of current tab of window 1
end tell
if appIsRunning("Google Chrome") then
tell application "Google Chrome"
make new window
set URL of active tab of window 0 to theURL
activate
end tell
else
tell application "Google Chrome"
do shell script "open -a \"Google Chrome\""
set URL of active tab of window 0 to theURL
activate
end tell
end if
on appIsRunning(appName)
tell application "System Events" to (name of processes) contains appName
end appIsRunningI also wrote a short AppleScript called Tab Transporter to move tabs between browsers. It's configured to go from Safari to Chrome but you could reverse that easily. I activate it via Alfred.
http://apple.stackexchange.com/questions/51534/reading-list-...
If you can reverse engineer iCloud and bypass its security there are a lot more lucrative pursuits than making a Chrome extension for your reading list.
This is typically a good thing because syncing is hard enough when you control both ends, having arbitrary programs messing with your data is a recipe for disaster.
Still, even with the way iCloud works, you don't need to directly prod the data. If you want to manipulate Safari's container, you can prod Safari itself into doing so. OSA is no COM, but it works just fine for this sort of thing. (And if you can't manage to make it do so, you can write a Safari plug-in presenting a locally-bound HTTP API that the Chrome extension can talk to.)
Now, the real challenge would be doing this syncing as part of some "syncing service" running on a cloud VM somewhere, that doesn't actually want to run thousands of headless copies of Safari. That's what I really want: the ability to sync Chrome with iCloud even if I currently have no active iCloud-attached devices. Probably the simplest way to do this is to write your own Ubiquity+CoreData client libraries and present yourself as another device that wants to sync against the iCloud account. It'd be up to you from there to safely munge the CoreData object hierarchy in a way resembling the official clients, but at least you'd be able to linearize those updates against iCloud messages.