applescript

OmniFocus URI Handler

OMNIFOCUS URI HANDLER

This applet enables you to create new tasks using an “x-omnifocus” URL. This is particularly designed to make it easy to add tasks from a web browser via a bookmarklet, without having to code a separate script for each browser. This also works in browsers that don’t support AppleScript. (I’m looking at you, Firefox!!!)

It also supports more advanced URLs containing context and project assignments that you’re likely to create from web page bookmarklets. This functionality can be utilized to make it easier to add OmniFocus tasks from other applications, shell scripts, etc., without having to hook into complicated AppleScript.

Ubiquitious Mac Automation

I often find myself wanting to make my Mac do something even when I’m not there. It could be something as simple as “reboot” or something more complex, like, “Add this task to OmniFocus”. Unfortunately, unless my Mac is up and running and accepting remote connections, there’s no way I can do this.

Or is there?

One obvious answer is to set up mail rules that shoot off AppleScripts. When an appropriately formatted messages comes in from the right sender(s), the script runs, and you’re all set to go. This approach has the advantage of being either close to real time (if Mail’s up and running, it works) or asynchronous if Mail’s off — the actions will fire off when you next check email, if your computer happens to be off.

Another option is to monitor various internet feeds to create similar results. I’ve written about Proxi before, and it remains one of my favorite tools for automating my Mac. One thing it can do is monitor network resources, such as RSS feeds, Twitter accounts, Mail, Skype, iChat, etc. This, it turns out, is the key to handling this need for remote automation.

By monitoring an RSS feed, you can set it up to check Gmail (which publishes an ATOM feed of your mail), a blog, or anything else, and have it fire off a script with some or all of the values passed by the feed. One very cool use of this ability is to set up script-firing Gmail rules by just having Proxi parse the ATOM feed and then activate scripts when certain conditions are met. This gives you the best of both worlds: Gmail’s powerful web-based interface, and the integrated goodness of Apple’s Mail program.

Another great tool is Twitter. Twitter’s main purpose is to share little snippets about what you’re up to with the rest of the world. But Twitter can also be used as simply an online notepad. It integrates with both SMS and IM clients, so it’s easy to contact, and you can even use a service like Jott with it, so you can phone in a “tweet” to your Twitter account.

Proxi has a Twitter monitor, so if you set up an appropriate Twitter account, you can have Proxi take action on incoming tweets, just like it can with GMail’s RSS feed.

Lastly, Proxi can monitor iChat and Skype and fire off scripts based on behavior in those apps. (iChat also has some of these capabilities built in if you’ve upgraded to Leopard) This can be an excellent way to have instant access to your computer from a remote machine.

What have I done with this? Well, I set up a Twitter account that feeds directly into OmniFocus so that I can capture a new task anywhere (via the web, SMS, IM, or the phone — thanks to Jott) and rest assured that when I next turn on my Mac, Proxi will pick them up and dump them into my electronic inbox.

Badge Leopard Stacks

As cool as stacks are for some folders, they are a real step backwards for most folders. When you add a folder to the dock, it displays nothing except a stack of documents, which are often identical to those in other dock-bound folders. Your custom icons to view your folders are gone, in favor of generic nonsense.

With any luck, Apple will pull their collective head out of their collective ass and make folders in the dock work better, but until then, you have Badge Leopard Stacks to bring back custom folder icons to your dock stacks.

This is a simple AppleScript that fits nicely on your Finder windows’ toolbar. When opened, it creates an alias of the currently open folder inside that folder and names it so that it will always be on top when sorted by name. The result of this is that when you view a folder on your dock as a “stack,” it will actually display the icon of the folder first, rather than a collection of meaningless documents.

As an added bonus, clicking on this alias will open the folder, which may make it easier to open the folder from the stack.

This doesn’t work well at all for stacks that are sorted by anything other than “name.” So it goes.

Great RubyOSA tutorial

Here’s a fantastic tutorial from MacZealots to get you started on automating your Mac using Ruby (instead of, say, AppleScript). If AppleScript is too hinky and irregular for you programmer types, this might be just the ticket.

New Stikkit Package

The New Stikkit Package is a collection of utilities which allow you to quickly and easily add new “stikkits” to the Stikkit.com service. (Read more about Stikkit right here!)

This package includes…

  • An application so you can add new Stikkits right from your dock!

  • An AppleScript which you can launch thru the Script Menu or your favorite alternate script launcher

  • You can use the scripts with LaunchBar or Quicksilver so that you can seamlessly add new Stikkits without even leaving your current context

  • Perhaps most excitingly, it also includes a “Make New Stikkit” service, so you can send text to Stikkit from within any application that supports services!

TiVo Decoder

This is a simple AppleScript droplet which includes a binary of the TiVoDecode program. Just drag and drop your .tivo files on it and get an MPEG-2 video out. You can then use other tools to convert that MPEG-2 into something else.

Documentation is included. If you need help getting your .tivo files onto your Mac or converting MPEG-2 files into something more useful, try Google. Problems with the decoding (such as missing audio and other weirdness) are best addressed on the tivodecode sourceforge page. I will not be supporting this program beyond the functionality of the basic AppleScript wrapper.

UPDATE 9/07: There is a great open-source alternative to this little script that is, really, a lot better. Take a look at TiVo Decode Manager.

What would a weekly review script actually do?

A couple folks have asked that I build a “weekly review” script for Entourage. I have just one question, what would it do?

I can easily see that it might build a list of projects without next actions, overdue tasks, maybe even upcoming events from your calendar. But all that is really at your fingertips anyhow, isn’t it?

Let me know what a review type script or application would do for you. Sound off in the comments!

* is at your service with ThisService

ThisService promises to turn any AppleScript or shell script into a live, working, entry in the much-ignored Services menu. And yes, it will take input text and do something with it, so your hopes of turning random selected text into, say, a note in KGTD (or something purple) can now come true.

It’s a perfect Halloween gift for the compulsive scripter in your family.

AppleScript Search Engine

I just put together a custom AppleScript search engine, using Google's new Co-Op vertical search. Searches my favorite sites and the AppleScript documentation to dig up the answers you might need.

Enjoy!

<!-- Google CSE Search Box Begins -->





<!-- Google CSE Search Box Ends -->

I don't see how I could possibly be more excited about the potential of this software!

My favorite unixy scripting language has been married to my favorite all purpose Mac scripting language! RubyOSA provides hooks for Ruby to access AppleScript (a.k.a. the Open Scripting Architecture). This might keep me busy for a while…

Fed up...

The title says it all. I’m fed up!

I’ve been AppleScripting things for many years now, and I’ve come to expect some pretty idiosyncratic behavior from AppleScript. Sure, there’s the occasional application that won’t take “whose” or “which” and insists on “where its” instead; or the method that mixes up “true” and “having”; that’s part and parcel of the AppleScript English-like syntax.

But it’s gotten worse.

See, I’ve been trying to script Apple’s Mail application. And, well, it’s pretty damn near impossible to do.

Why? Well, because it’s broken, that’s why. Create an outgoing message, and it has no identifier! Try to classify an incoming message via a rule? Well, it doesn’t have an ID, either.

Send to KGTD Advanced version 3.1

Introducing Send to KGTD Advanced Version 3.1!

…Now featuring full support for international character sets to support productive people around the world!

This is a simple, powerful script which allows you to quickly enter tasks, projects and/or contexts to your Kinkless GTD file. It’s faster and easier than doing it by hand via OmniOutliner, or using any other scripts out there!

New in Version 3.0

  • Full Unicode support! The parsing engine has be re-written from scratch so now non-Roman character sets are fully supported.
  • Support for KGTD files without date columns
  • Support for KGTD custom inbox sections (uses meta-inbox)
  • No longer requires any scripting additions!

Subvert iTunes: Make Your Own Audiobooks

This article is part of a continuing feature on how to make iTunes work better with free content and your own content, so that you don’t have to be trapped by the many restrictions placed on you when you buy from the iTunes store. Click here to read all the articles in the series.

The iPod is, perhaps, one of the world’s greatest audio book players. It supports Audible’s audio books, and the iTunes store provides plenty of audio books (which are, incidentally, all provided by Audible). Of course, both of these sources are crippled with DRM and full of restrictions, so you may want to make your own audiobooks.

Doing that is pretty easy if you have an audio book on CD. Just encode the CD’s tracks as MP3s and you’re done. Right?

Not if you you want the audio book to show up in the Audiobooks section of iTunes and your iPod.

Mail to KGTD

Fully integrate your email with Kinkless GTD!

Updated September 21, 2006: Removed link creation to work around a bug in a recent security update.

Have you ever been in your car, and you just want to remind yourself to pick up a certain CD on Amazon because you’re digging on the current tune on the radio?

Do you have web forms that send you tech support requests and you’d like to get those requests in your Kinkless GTD file?

Do you sometimes just want to remind yourself to follow up on an email, but you’d rather have everything in one place, and so you end up filing an email and then creating a task to follow up on it in KGTD, and pretty soon you can’t remember where anything is?

Find iTunes songs without album art

The perfect script for the obsessive-compulsive iTunes user! Want to make sure all your albums have artwork? Then this is the script for you!

When run, this script will create a new playlist, entitled “::No Album Art::”, containing all your iTunes music tracks which don’t have any associated album artwork. (This is best used after running Find Album Artwork from the iTunes 7 Advanced menu.)

Once you have all your artless files in a playlist, you can then easily update their artwork manually, or using the Album Art widget for Dashboard, the iTunes Companion Yahoo Widget, or any of the many other album art grabbers.

Syndicate content