Hello Everyone!
As way to say “Welcome to Veritrope.com!” to my many new readers today from the Evernote Blog, I thought I’d publish two fun little script projects that I’m calling “The Idea Scroll” and the “Vocabulary Builder”.
Each of these scripts takes advantage of a new addition to Evernote’s scripting vocabulary — an Append function! They also both showcase some fun things you can do with HTML and Evernote to create your own document templates. (This is something we’ll explore more in later projects)
They’re pretty similar to each other — and that’s a bit by design. I want to make a point about how easy it is to adapt some code quickly to fit your own needs… so let’s dive in!
What’s An “Idea Scroll”?
Ever need to make a quick running list of your ideas or tasks? Maybe just doing some brainstorming before you work up a To-Do or a Project list? Ideas just pop into your head while you’re working on something else?
That’s what happens to me! Often times, I’m working on one thing when my subconscious throws something completely unrelated into my thought bubble. There are a lot of great options to capture ideas for Mac users — and here’s how I’ve used AppleScript to add Evernote to that list.
I’ve created an AppleScript that I can launch with a keyboard shortcut which creates a “running list” of these unexpected bits of inspiration before I lose them– an infinite “Idea Scroll”, if you will. If you’re new to keyboard shortcuts, you can check out Apple’s page about how to configure them — or you can do what I do and use Red Sweater Software’s excellent ‘FastScripts” application to manage them. Either way will work — and work well!
So when I get an idea these days, I hit the special keystroke combination and the script asks me a few quick questions. In my case, I usually like to be able to say what the idea is, what it’s for, and add a few additional details. After I answer these quick questions, it’s added in the background to a special note in Evernote. When it’s time to review my ideas and put them into my project or to-do list, I just read down my list. Simple! If I’m collaborating with someone, Evernote’s built-in Email client also makes it easy to send my brainstorms off to the people I’m working with.
In order to do this, I programmed the script to look for an existing Idea Scroll for the day. If it doesn’t find one, it makes one. If one already exists, it adds the new idea to the end of the list.
In my mind, it looks like the original scroll of “On the Road” by Jack Kerouac — but, in real life, it looks like this:
Quick Change Artist
While I was typing up the description for the idea scroll, a reader named “”Zaur” sent me a note using the site’s contact form and asked this:
I am currently studying several foreign languages and in an attempt to collect all the newly heard and seen words, I keep weekly vocabularies in Evernote for easy access and archiving. However, every time I want to add a new word, I have to switch to Evernote and, since I do that not fewer than 40-50 times a day, it is a very annoying thing to do. So, I was wondering if you were able to write a script, that could add a new word or a phrase to a predefined note as a new line without launching Evernote, or at least switching to it. I could then assign a keyboard shortcut to this service and never again be bothered about wasting time trying to jump from one application to another.
I mean — seriously — what are the odds! I took it as I sign that I should also show you guys how easy it is to adapt an existing bit of AppleScript to fit your own particular needs.
I opened up my “Idea Scroll” AppleScript in my Script Editor and I quickly changed the questions and the field names in the templates. In less than 60 seconds, I had changed the “Idea Scroll” into a “Foreign Language Vocabulary Builder”. (Zaur — there’s a little something special for you at the end of this post…)
Use Your Imagination
For my own use, I’ve been playing around with different template ideas and leveraging other AppleScript functions into the mix. For example, I adapted this script into a “Bug Reporter” for a piece of software that I was testing — and had it automatically email my notes for the day to the programmer at midnight.
Just for fun, I also adapted it to keep a running “Bug List” for messages that arrived via Veritrope.com’s Bug Report Form. Now when you send me a bug report, Apple Mail adds it to a running list for that script in Evernote.
What Can You Come Up With?
If you want to roll up your sleeves and adapt it to your needs, the source code is in Veritrope.com’s brand new Code Library.
For your convenience, there are special links at the end of the code to open it up directly in your AppleScript Editor or, if you’re a Snippets user like me, you can save it directly into your own code library — complete with tags and a full description.
But if you’re the type of person who just likes to download things, here are some links for you… and Have Fun!
Thanks a lot, Justin, it works!
As I also use built-in Mac OS X Dictionary to lookup terms, I shall try and modify the script so that the definition of a word is imported from the application. But, in case if I do not succeed, at least I know whom to ask for some guidance. 😉
Kind Regards,
Zaur.
That’s it! You’ve really captured the spirit of what I’m trying to do around here — which is to open up people’s imaginations and then encourage them to “roll up their sleeves” and start building something!
Dictionary.app is not directly scriptable (see John Gruber’s post to learn more), but here are a couple of ideas to get you started. Gruber’s post has a script you can try, but there are other approaches:
Dictionary.app has something called a “URL Handler” — a fancy way to say a web link, really. What you could do is adapt the script to first ask the “Foreign Word”, then the “English Word” (or whatever language is native to you). By turning the English word into a special link, you can click on it to open up the definition in Dictionary.app directly.
I’m going to try to work that up in the near future as an example and, if I do, I’ll put it in the code library for you to try out!
There are also other approaches involving using AppleScript and Python together…. pretty cool! Whatever you do, be sure to share your results back with us here!