Friday, January 18, 2013

Changing OSX Wallpapers on Multiple Monitors via Script

[UPDATED 05/18/2014: Fixed script for Mavericks compatibility!]

For whatever reason, I like to use different desktop wallpapers during the day than I do during the night. I feel like it helps my eyes focus better on the open window I am working in (and I hate working in  maximized/fullscreen apps).

The problem is that I use a 4 monitor setup, and setting each desktop's wallpaper manually twice a day is so ... manual!  So I developed a script to help me make those changes automatically. The special thing about this script it that it iterates over desktops and changes the wallpaper. This was actually kind of tricky to find information about. Most information I could find only really applied to single monitor setups, and while they changed my wallpaper on the main monitor, did nothing for the other monitors. After some research and tweaking I finally came up with this, which seems to work well:

tell application "Finder"
 
 set path_to_file to "/Users/YourAccountName/Pictures/your-image.jpg"
 
 tell application "System Events"
  set theDesktops to a reference to every desktop
  repeat with aDesktop in theDesktops
   set picture of aDesktop to path_to_file
  end repeat
 end tell
 
end tell

Obviously (at least, hopefully so) you would modify the path_to_file assignment to an image that is interesting to you ... or you could handle an argument to the script from here, or query for a file, etc. etc.

The way I have this setup for my situation is that I have two copies of this script with different names and different images: One for night and one for day. This makes it easy to run them from a scheduler, or more typically, I call them from Alfred when I desire a change.

Anyways, hope you find that useful. Have fun!

Extract Emails from Contacts.app

I recently signed up for Mailroute.net and wanted to configure a whitelist of email addresses for all my regular, and less-than regular, contacts. My email addresses are stored in OSX's Contacts.app, and visiting each contact record and cut-n-pasting email addresses out would be a ridiculously tedious effort. Luckily, being a programmer, I see this as an opportunity to develop a program to do the work for me!

Without further ado, here is a short Applescript to extract all email addresses from Contacts.app on Mac OSX 10.8+ and dump them to a new TextEdit file. It could be converted to earlier OSX versions without much difficulty probably, since I think the only difference is the Contact Manager app used to be called "Address Book" instead of "Contacts".

Here's the code:
set unique_emails to {}

tell application "Contacts"
 repeat with this_person in people
  repeat with this_email in every email of this_person
   copy the value of this_email & "
" to the end of unique_emails
  end repeat
  
 end repeat
 
end tell

tell application "TextEdit"
 activate
 make new document
 set theDate to current date
 set text of document 1 to unique_emails as text
end tell

One thing to note is that the copy the value of ... line literally includes a newline within the quotes. This causes an actual newline to be appended to every email address. If you would rather the email addresses be comma separated, you would use a comma here instead.

Have fun!

Thursday, April 28, 2011

iSamadhi v1.3 Released

iSamadhi v1.3 has been released to the iTunes App Store! This version includes many of the features that our users have been requesting most. If you enjoy using iSamadhi, please take the time to leave us a review.

New Features
- iOS 4.0 MultiTasking compatibility. NOTE: the timer will pause when you place iSamadhi in the background.
- Import User PhotoLibrary Images.
- Improved interface graphics for Retina displays
- Support for Preset re-ordering
- Preset Playlist Repeat option
- Preset Playlist Shuffle option

Go check it out: iSamadhi

Sunday, April 10, 2011

Updated Gameplay Video

CloudJumper for the Mac desktop released last week! Accordingly we had to update the gameplay video to remove the teasers and such, but I ended up trying to polish the overall graphics. Go check it out:



Don’t forget to hit the Like button and leave a comment.


Friday, March 25, 2011

Gameplay Video

We put together a little gameplay video for CloudJumper. Check it out:




Tuesday, March 22, 2011

CloudJumper Released for the iPhone/iPod Touch

CloudJumper has now been released for the iPhone/iPod Touch as well.


Available now in the iTunes App Store: CloudJumper


Go have some fun!


Wednesday, March 16, 2011

CloudJumper HD Released

We are very happy to announce the release of our latest App: CloudJumper, Available today for the iPad, and soon to be available for the iPhone and iPod Touch.

CloudJumper is an extremly fun and simple to play arcade game, where you help a magical being Hibble protect his home in the sky from toxic invading smogbugs.

We had a great deal of fun making this game, and have lots of plans for additional features to add, so check it out and let us know what you think.

Available now in the iTunes App Store: CloudJumper HD

A dedicated CloudJumper website with gameplay videos is coming soon!

Sunday, March 6, 2011

40 Days updated for 2011 and Beyond

40 Days has been updated for the 2011, 2012 and 2013 Lent season! In addition, we updated the graphics to take advantage of the the iPhone 4 Retina display. 40 Days has never looked so good! Be sure to update to the latest version either via the iTunes App Store on your desktop, or on your device so you wont miss out.

Monday, June 28, 2010

Release the Sounds!

iSamadhi 1.2 has been approved! This release includes some major new features that we are very excited about.

Music!!:
I know a lot of meditators. I know many who perfer to meditate in silence, and I know many more who like to meditate to music or listen to guided meditations. When iSamadhi was released, we wanted to support any style of meditation and so we were careful to make sure that the App did not interfere with the iPod playback in any way. As we used iSamadhi over the months, we realized that while this was great, it was not the optimal experience. For example, if you wanted to do a guided meditation you had to start the audio in the iPod App, exit that App, then find and switch to iSamadhi, wait for it to load, then start your meditation there. Way too many steps! If you had a favorite playlist or album to meditate to, perhaps you could forgive the steps ... but then when you wanted to skip a song, you were screwed! Unless you had headphones with a remote or setup the double-tap home button to show iPod controls, you had to exit the app to skip the song, effectively ending your session.

Well, all of that is now over. With iSamadhi 1.2 we are introducing something that no other iPhone Meditation App has: Integrated Music Playlists! Now it is possible (and easy!) to add music to each meditation Preset you create. When you start your meditation, the music will start at the same time! If you had setup a preparation time, the music or guided meditation will wait until that time is over. Controls for skipping or replaying tracks are conveniently placed on the Timer screen. Wondering whats playing now? Just tap anywhere on the Timer window and show a 'now playing' banner. Tap again to hide it.

Boom!! I just blew your mind!

Journal Export:
This was a very popular request from our users. If you have Mail setup on your device, you can now export your journal via email. The email will contain a file attachment in CSV format, which can be easily imported into all sorts of desktop applications like Excel, Numbers, Pages, Word, etc. etc.

Improvements:
We increased the tap-target size of the Preset edit button. Hopefully this will reduce the frustration of accidently starting a meditation, when you really just wanted to edit the Preset. We continue to work on this one to try and make it work perfectly, as it is still easy to "roll" your finger onto the row from the side and actually be hitting row instead of the button. However I think this change does improve the experience by a large measure.

We fixed a rare but annoying bug that caused your device to go to sleep and stop timing your meditation when certain other conditions existed. This was actually caused by a bug in the iPhone OS 3.0 software, but I was never able to recreate the condition successfully myself until just recently. Not only did we fix this, but we now include the ability to allow the device to sleep the screen, and keep timing your meditation.

Other Improvements:
The ability to adjust the chime volume without interfering with your device volume.
The divided interval chime now supports an between 2 and 21 divisions, rather than the static 3,6 or 9 that was avialable before.

Future:
What!? Stop here and take a load off you say?? Are you crazy!! We aren't stopping here! We still believe there is lots of room for improvement and innovation. We have some great ideas, and we are really excited about the future. I can't share all of our plans right now, but keep checking back and *maybe* something will slip here or there.

A final note of thanks to all of our users, to those who wrote in requesting features and pointing out bugs, and to our Teachers: Thank you! The value of your support, encouragement and empowerment cannot be over stated. Thank you, Thank you; A thousand times: Thank You!