Pick of the Week - Nov 10 [Show all picks]
Path Finder 5 - A feature-laden Finder replacement
Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
13,000 hints and counting!

10.7: Auto-copy Photo Stream images to a folder System 10.7
To get the Photo Stream working on my MacBook I found out that I had to BUY an upgrade for an application that I don't want: iPhoto.

Looking for a solution I found that iPhoto stores its pictures in a specific location and the Photo Stream is updated even if iPhoto is not running. The goal was to create a script that copies all of the images from many sub-directories into a single folder.

As there are many people who know a lot more about OSX I would welcome improvements and feedback. Some areas to look at:
  • Using 'without replacing' which would only copy the missing pictures.
  • A Folder action which monitors changes and runs the script automatically.
Here's the script:
tell application "Finder"
  set this_folder to "Macintosh HD:Users:duittenb:Library:Application Support:iLifeAssetManagement:assets" as alias
  set target_folder to "Macintosh HD:Users:user:Pictures:MyStream" as alias
  try
    duplicate (every file of the entire contents of this_folder whose name contains "IMG") to the target_folder with replacing
  end try
end tell
Instructions

Replace the target_folder path (underlined above) with your actual destination folder. You can save the script as an application in your /Applications folder or to your Scripts menu.

[crarko adds: Note that you'll also need to modify the this_folder path if your boot drive isn't named 'Macintosh HD.']
  Post a comment  •  Comments (4)  
  • Currently 4.00 / 5
  You rated: 4 / 5 (1 vote cast)
 
[389 views] Email Article To a Friend View Printable Version
10.7: Fixing a stuck application in Mission Control System 10.7
I finally upgraded to Lion on my work computer and bid farewell to the wonderful Hyperspaces application. I used all 16 spaces and was loathe to make the jump to Mission Control.

After upgrading many apps were not respecting being assigned to specific desktops or to all desktops. At first I tried unassigning them in the Dock and reassigning them to their previous desktop or all desktops, but it didn't work.

Here is the solution I found:
  • If an app assigned to a particular desktop wasn't staying put, I had to assign it to all desktops, and then reassign it to desktop N.
  • If the app was not respecting assignment to all desktops, I had to assign it to a specific desktop, and then reassign it to all.
Apparently setting it to 'None' does not clear the previous assignment.

[crarko adds: I haven't tested this one.]
  Post a comment  •  Comments (1)  
  • Currently 5.00 / 5
  You rated: 5 / 5 (1 vote cast)
 
[306 views] Email Article To a Friend View Printable Version
10.7: HTML5 Video Display Sleep Workaround Web Browsers
The just released OS X 10.7.3 has a new Safari version but the old FDisplay Sleep Issue on HTML5 Video was still not fixed, so I started to look around for a solution and it seems that it is a WebKit Bug, and I made a workaround for this.

Go to the WebKit Project home page and download the latest Nightly Build; it has worked for me so far.

Put it into your Applications Folder and launch, and the browser launches as Safari containing all settings and features, so go to Settings and make WebKit your default browser.

Next download and install the RCDefaultApp PrefPane launch it and go under the application pane to WebKit and enable all file associations and actions.

Safari is no longer the default, now go to the Extensions Pane and search for the safariextz Extension, set it to open with WebKit as well, now you are done, Safari is still there and running if needed, but all actions are now redirected to WebKit, so you are always up to date.

[crarko adds: I haven't tested this one specifically, but many of us have used the WebKit nightly builds as a Safari replacement for a long time. RCDefaultApp is also a well-tested and proven utility, and I recommend it without hesitation.]
  Post a comment  •  Comments (0)  
  • Currently 3.67 / 5
  You rated: 2 / 5 (3 votes cast)
 
[461 views] Email Article To a Friend View Printable Version
Digital audio-in passthrough with AppleTV2 Other Hardware
I have an Apple TV2 hooked up to a DVI monitor by HDMI, an arrangement which doesn't support audio.

As the Apple TV2 also has SPDIF optical out, I connected this into my 2011 iMac's optical input so I could hear the ATV sound from the Mac. Looking at the sound input in System Preferences, I could see the connection was working, but I heard nothing from the iMac speakers, even though they were chosen for output. Then it dawned on me that the iMac likely didn't support audio passthrough.

I recalled that QuickTime Player could record audio from an input. So in QT I chose New Audio Recording, chose 'Digital in' as the input, and then slid the volume slider so I could monitor the audio. Works like a treat. There's no need to actually record anything in QuickTime Player.

[crarko adds: A clever solution. I have my Apple TV2 hooked up using the standard HDMI setup, so I did not test this.]
  Post a comment  •  Comments (4)  
  • Currently 5.00 / 5
  You rated: 5 / 5 (2 votes cast)
 
[480 views] Email Article To a Friend View Printable Version
10.7: Set default workspaces for applications System 10.7
Heavy users of Spaces from Mac OS X 10.5 and 10.6 may be wary of upgrading to Lion, as it's been completely replaced by Mission Control, which apparently does its own workspaces thing.

Well, actually, the workspaces in Mission Control are the same as the Spaces from (Snow) Leopard. The biggest difference is that they are now one-dimensional.

But the important thing is that application bindings to spaces still works, even though the preferences to set them have been removed from System Preferences. If you already had this setup from 10.5/10.6, the settings should transfer over to Lion. Even so, you may want to modify them given the new behaviors.

Here is a small guide on how to set this up. I'm sure there are commands that could make this easier, and I hope that commenters will supply them. Actually, my real hope is that someone will code up a GUI for doing this.

The settings are in the file ~/Library/Preferences/com.apple.dock.plist. You're going to want to open this in a good text editor, like TextWrangler. Note that Library is now hidden by default in Lion. A good text editor like TextWrangler will be able to browser hidden directories. If your favorite editor doesn't for some reason, you can open it with the Terminal command:

open -a YourTextEditor ~/Library/Preferences/com.apple.dock.plist

Replace YourTextEditor with the name of your actual text editor.

Once you have this file, you will want to edit the key workspaces-app-bindings. If you used Spaces in (Snow) Leopard, this should already exist. Otherwise, you will need to create it by adding:
 <key>workspaces-app-bindings</key>
 <dict>
  <key></key>

 </dict>
somewhere in side the main <dict>. You may also need to add
 <key>workspaces</key>
 <true/>
above it (it's not clear to me, as I already had Spaces enabled).

Now, to add Application bindings, below the line, add lines like:
  <key>ch.sudo.cyberduck</key>
  <integer>4</integer>
Here, the number in the tag is the space you want to add, and ch.sudo.cyberduck is the CFBundleIdentifier of the application you want, in this case CyberDuck. There is probably a better command to find this, but you can usually find the identifier by looking at the Info.plist file inside the application package (like Cyber Duck.app/Contents/Info.plist) and looking for the CFBundleIdentifier key.

As far as I can tell the old Spaces settings regarding the number of spaces have no effect in Mission Control. The number of spaces created is equal to the largest number of the spaces needed for open applications. So if you have application A mapped to space 3 and application B mapped to space 4, and you only have application A open, there will be three space created. But if you open application B, there will be four spaces. I haven't tested this thoroughly, so I may be wrong, though.

To make an application appear in every space, set the integer to 65544. This is a little glitchy in Lion (the application will not appear until you have finished switching spaces), but it works.

Finally, some tips. First, you will probably want to disable space rearranging in the Mission Control preferences. Second, full screen applications still create their own space (to the right of the allotted space). Third, you can setup Keyboard Shortcuts for the spaces in the Keyboard System Preferences, under the Mission Control section of the Keyboard Shortcuts tab. If you have a number pad, this can be a useful way of creating an illusion of two-dimensional spaces. Just pretend that the spaces are arranged like they are in your number pad. If you had Spaces from (Snow) Leopard, these settings will be transferred over automatically. It seems that you can set a keyboard shortcut for any space, as long as it is in existence, except for spaces for full screen applications.

[crarko adds: There are a lot of variables involved here, so be sure to have backups of the plist files before changing them.]
  Post a comment  •  Comments (5)  
  • Currently 1.55 / 5
  You rated: 1 / 5 (11 votes cast)
 
[747 views] Email Article To a Friend View Printable Version
10.7: Viewing Email when Organized by Conversation Apps
This hint describes how to easily see all the emails in one conversation without having to open them and scroll through.

If you have your emails 'organized by conversation' you will see in the email list in the left column the number of emails in that conversation. You can just click on the email showing in the left-hand column and hit the Right arrow key. This causes all the emails in that conversation be shown in a drop-down list by date, one on each line, below the latest one. To undo the list, press the Left arrow key.

[crarko adds: This is one of those obvious shortcuts that can hide forever if not mentioned.]
  Post a comment  •  Comments (8)  
  • Currently 3.71 / 5
  You rated: 5 / 5 (7 votes cast)
 
[833 views] Email Article To a Friend View Printable Version
10.7: StartNinja turns off the system start up chime System 10.7
StartNinja turns off the OSX Lion system start up chime / sound. It is a free utility that you can download here.

There are often times when I am in a public location and forgot to turn off the sound on my MacBook. Subsequently, a loud bong happens. Now there is a quick and easy solution for OSX Lion machines; StartNinja. StartNinja turns off the OSX Lion system start up chime/sound.

[crarko adds: Does what it says. There are some instructions on the download page. It's a useful utility if you need it.]
  Post a comment  •  Comments (10)  
  • Currently 4.33 / 5
  You rated: 5 / 5 (3 votes cast)
 
[846 views] Email Article To a Friend View Printable Version
Bing picture of the day on your desktop. Desktop
Bing has those nice images on www.bing.com and every day they have a new one. I have put together a small python script which fetches today's image and displays it on the desktop.

Note: you will need to manually create the DeskFeed folder inside your Pictures folder.

Here's the script:
#!/usr/bin/env python
import os
import md5
import pprint
import sys
import subprocess
from time import strftime
from urllib import URLopener
from urllib2 import urlopen
from xml.dom.minidom import parseString

# Defines source and destination of image
rss_feed = 'http://feeds.feedburner.com/bingimages';
dst_dir = os.path.expanduser('~/Pictures/DeskFeed/')

SCRIPT = """/usr/bin/osascript<<END
tell application "Finder"
set desktop picture to POSIX file "%s"
end tell
END"""


def set_desktop_background(destination):
  subprocess.Popen(SCRIPT%destination, shell=True)

def parseFeed(rss):
  destination = "%s%s.jpg" % (dst_dir, strftime( "%y-%m-%d"))
  if os.path.exists(destination):
    sys.exit(0)



  try:
    rss_contents = urlopen( rss )
  except:
    print "Failed to read rss feed %s" % rss
    return
  rss_src = rss_contents.read()
  rss_contents.close()
  dom = parseString( rss_src )
  firstitem = dom.getElementsByTagName('item')[0]
  link = firstitem.getElementsByTagName( 'enclosure' )[0].getAttribute('url')
  URLopener().retrieve(link, destination)
  set_desktop_background(destination)


def main():
  parseFeed(rss_feed)

if __name__ == "__main__":
  main()
This, and other useful scripts, are available here.

[crarko adds: I tested this, and it works as described. To actually run the Python script I recommend studying the brief tutorial here. I used the Python Launcher utility from MacPorts to manage the script.]
  Post a comment  •  Comments (5)  
  • Currently 4.50 / 5
  You rated: 5 / 5 (2 votes cast)
 
[875 views] Email Article To a Friend View Printable Version
Getting Software Update alerts as a standard user System
I have Mac OS X check for updates daily and automatically download any updates. However, only when I log in as an administrator do I get a dialog box informing of the existence of updates.

I wrote a short AppleScript to take care of the issue. Note that the script does not check for updates itself but relies on OS X's checking it in the background so it requires that the options to check for updates periodically and download updates automatically be checked in the Software Update preference pane.

Create the following script in the AppleScript Editor and save it as an application:
-- A script alerting non-administrator users about available downloaded
-- software updates

set updates_no to do shell script "defaults read /Library/Preferences/com.apple.SoftwareUpdate LastUpdatesAvailable"
if (updates_no > 0) then
  try
    set dialogResult to display dialog updates_no & " software update(s) are avalaible. Launch Software Update?"
    if button returned of dialogResult = "OK" then
      ignoring application responses
        tell application "Software Update" to activate
      end ignoring
    end if
  on error number -128
    -- The user canceled so do nothing
  end try
end if
Please, do not include any new line in the do shell command, otherwise, the script will fail. Add the script application to your standard account's Login Items.

From now on, whenever you login into that account *after* the automatic check downloaded new updates, a dialog bode informing you of the updates and suggesting to run Software Update for you is displayed. Of course, an administrator password is still required by Software Update.

This Script has been tested on Mac OS X 10.7.2 and detected the downloaded iTunes 10.5.3 update.

[crarko adds: I didn't have any updates available to try this with.]
  Post a comment  •  Comments (6)  
  • Currently 3.25 / 5
  You rated: 4 / 5 (4 votes cast)
 
[992 views] Email Article To a Friend View Printable Version
iOS device headphones and your Mac System 10.7
Your iOS device's headphones with remote controls also start/pause/ffwd/volume change your Mac.

Plugging your iOS headphones (with remote control) into your Mac, the headphone remote functions will change volume, pause, fastfwd, rewind and track skip iTunes.

Tested on MacBook Pro mid-2010 with OS X 10.7.2

[crarko adds: This is an update to an earlier hint. I see in the comments of the previous hint that there are some Mac laptop models this didn't work on.]
  Post a comment  •  Comments (3)  
  • Currently 3.50 / 5
  You rated: 1 / 5 (4 votes cast)
 
[1,076 views] Email Article To a Friend View Printable Version