Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

Send and receive private messages from App.net with OS X Messages Apps
You may be familiar with App.net, a service designed to be an alternative to Twitter. Originally a subscription-only service, App.net now has free tiers on an invitation-only basis.

App.net has an open API which allows developers to do interesting things. One of these is Project Amy, by Steve Streza which allows you to use Messages in OS X to send and receive App.net private messages. If you use App.net, you can download Project Amy here.
  Post a comment  •  Comments (1)  
  • Currently 2.75 / 5
  You rated: 1 / 5 (8 votes cast)
 
[3,498 views] Email Article To a Friend View Printable Version
AppleScript to change Sound preferences Apps
This hint updates this hint which provides an AppleScript that changes the sound input or sound output device selection.

I use Control Plane to manage various preference differences among the different locations (work, home, travel) where I use my MacBook. Control Plane uses various criteria (e.g., IP address, WiFi network name, etc.) to determine your location. Control Plane offers a lot of built in capability to change settings on your Mac based on arriving or leaving a location, and I recommend it highly if you regularly move your Mac among different working environments.

One capability that is not available in Control Plane is the ability to change Sound preferences when you move your Mac from one place to another. In my case, I have a Thunderbolt Display at work, which has built-in speakers and a built-in microphone. At home, I use my MacBook without a second display. I wanted to be able to change the Sound preferences back and forth using Control Plane.

Control Plane does offer the capability, however, to run any application when it detects that have arrived at or have left a particular location. So, you can run any AppleScript.

Relying on the hint comments here, I have updated the scripts in that hint to address my desire for changing sound preferences. My updated script should work on Lion and Mountain Lion. I cannot say whether it will work on earlier versions of OS X.


tell application "System Preferences" to activate
tell application "System Preferences"
	reveal anchor "input" of pane id "com.apple.preference.sound"
end tell
tell application "System Events" to tell process "System Preferences"
	tell table 1 of scroll area 1 of tab group 1 of window 1
		select (row 1 where value of text field 1 is "Internal microphone")
	end tell
end tell
quit application "System Preferences"

Note that this script hard codes the name of the Sound preferences pane tab to select and the sound input device to select. To set an output device, you would change "input" to "output" in the 3rd line of the script and then change the device name in the 7th line. I created separate scripts for sound input and sound output for each location where I work. I then simply created a Control Plane rule for each location for sound input and sound output separately.

  Post a comment  •  Comments (2)  
  • Currently 2.33 / 5
  You rated: 1 / 5 (9 votes cast)
 
[7,629 views] Email Article To a Friend View Printable Version
Add info after phone numbers in Contacts Apps
Placing a comma after a phone number in Contacts allows you to add useful information. Without the comma, any information after the number will prevent it from auto-dialing on the iPhone, not recognizing it as a phone number.

Before smart phones I often found it useful to add additional information after a phone number in a contacts database, such as an extension number (x123), person's name or initial (John or J), function (billing), etc. The template in Contacts does not have a field for Extension which would allow for this. In addition, with the iPhone, the number itself will not even assume the proper format (area code in brackets, 3 numbers, dash, 4 numbers) if there is any additional information after the number, and therefore you won't be able to dial the number.

Putting a comma after any phone number (read as a one-second pause, as with modems) allows for any such qualifying information to be added. For me this is much easier than creating hundreds of custom fields for phone numbers.
  Post a comment  •  Comments (14)  
  • Currently 3.73 / 5
  You rated: 5 / 5 (15 votes cast)
 
[10,156 views] Email Article To a Friend View Printable Version
Microsoft Word keyboard shortcut to close the sidebar Apps
Microsoft Word 2011 does not, as far as I can tell, offer a means of assigning a keyboard shortcut to close the sidebar. The AppleScript described here provides that functionality, and sets a keyboard shortcut that will trigger it.

Name the following Applescript "MicrosoftWordCloseSidebar\mosH.scpt" (notice the reversed slash) and save it in ~/Library/Application Support/Microsoft/Office/Word Script Menu Items:
do shell script "osascript -e '
tell application \"System Events\" to tell process \"Microsoft Word\"
 	set {frontmost, itemFound} to {true, false}
 	repeat with w in windows
 		tell w to repeat with g in groups
 			tell g to repeat with c in checkboxes
 				tell c to if value of its attribute \"AXHelp\" = \"Close the Sidebar\" then
 					set itemFound to true
 					click
 					exit repeat
 				end if
 			end repeat
 			if itemFound then exit repeat
 		end repeat
 		if itemFound then exit repeat
 	end repeat
end tell
' >/dev/null 2>&1 &"
When you press Command-Option-Shift-H, the close button of the sidebar is clicked, and the sidebar closes. The keyboard shortcut comes from the "mosH" part of the Applescript name (m=Command, o=Option, s=Shift, H=the letter H). That shortcut was chosen to complement the existing shortcut to open the Find/Replace Sidebar (Command-Shift-H) and may be altered to suit a particular user's needs. The script is constructed as a background osascript to get around a problem that occurs when trying to GUI-script Microsoft Word from its script menu.
  Post a comment  •  Comments (12)  
  • Currently 3.29 / 5
  You rated: 2 / 5 (7 votes cast)
 
[6,587 views] Email Article To a Friend View Printable Version
Flatten a directory structure UNIX
There may be times when you want to consolidate all the files in a directory and its sub-directories (or a folder and its sub-folders) into a single directory or folder. For example, you may have a folder with sub-folders for years, and other sub-folders in each year folder for months, and you may want to move files in the month folders all to the top level.

Doing this manually is a complex and time-consuming process. While you might be able to do this by using a search - for example, if all the files are, say, Excel files, you can search for Excel files in the top folder, then just copy them all to a new folder - if there are lots of different types of files, this wouldn't make things easier.

Fortunately, there's a way to do this from a command line. On the BedroomLAN blog, Alexios presents two commands that will do this:

cd $ROOT_DIRECTORY
find -type f -print0 | xargs -0 -I%%% cp %%% $FLAT_DIRECTORY


Replace $ROOT_DIRECTORY with the top level directory containing all the sub-directories and files, and replace $FLAT_DIRECTORY with the directory you wish to contain all the files. Note that this command will overwrite any files with the same name, so if you don't have uniquely named files, it's not ideal.

You can also use the ln command instead of the cp command, and this will not overwrite files, but will give error messages if there are duplicate file names. See the blog post for more details on this. H/t to robg for pointing this out.
  Post a comment  •  Comments (12)  
  • Currently 1.57 / 5
  You rated: 1 / 5 (7 votes cast)
 
[10,760 views] Email Article To a Friend View Printable Version
Turn off automatic attachment preview in Mail Apps
Mail, by default, provides a preview of attachments in can read, such as graphics and PDF files. However, you can run a command in Terminal to turn this off. Run the following:
defaults write com.apple.mail DisableInlineAttachmentViewing -bool yes
Quit Mail and relaunch it. When you view a message, all attachments will be shown as icons only. To restore the original functionality, run this command:
defaults write com.apple.mail DisableInlineAttachmentViewing -bool no
Found on StackExchange.
  Post a comment  •  Comments (0)  
  • Currently 3.55 / 5
  You rated: 1 / 5 (11 votes cast)
 
[18,741 views] Email Article To a Friend View Printable Version
How to Email Pictures from iPhoto Using Mail.app Instead of iPhoto's Built-in Email Feature Apps
iPhoto 11 added an awful new built-in email service that replaces the previous functionality: when sending an email, it used to open Mail and attach the photos to a new email. Now, it uses a poorly designed, built-in email functionality that ruins everything. To send photos again using Mail, run the following command in Terminal:

defaults write com.apple.iPhoto EmailApp Mail

To return this functionality to iPhoto, run the following command in Terminal:

defaults write com.apple.iPhoto EmailApp iPhoto

(Originally found here.)
  Post a comment  •  Comments (5)  
  • Currently 2.00 / 5
  You rated: 1 / 5 (13 votes cast)
 
[9,792 views] Email Article To a Friend View Printable Version
Print large Numbers tables on one page Apps
I find frustrating the way Numbers prints large tables – they're often split both horizontally and vertically across multiple pages.

One way to print a large table on a single page is to copy the table and open it in Preview. In Numbers, click the dragging square at the top left of the table. (You need to scroll to the top of the table to see it.) Press Command-C, open Preview and press Command-N. Print away.

[kirkmc adds: Interesting: if you paste a table into Preview, it's displayed with no borders or extra space, as if it were a PDF. (There's a hint explaining this.) However, when you print, make sure to select Scale to Fit, then Fill Entire Paper. I tried pasting a long table - about 300 lines - and Preview, using the default print settings, would have printed the entire table on one page.]
  Post a comment  •  Comments (5)  
  • Currently 2.43 / 5
  You rated: 2 / 5 (7 votes cast)
 
[5,984 views] Email Article To a Friend View Printable Version
Extract names and emails from a text file UNIX
I have a recurring need to extract full names and email addresses from a plaintext archive of email messages. The archive is created by selecting a bunch of emails in Mail, copying them, pasting into TextEdit, and converting to plain text.

For each message in the file, the first line contains the information I wanted:
From: Joe Example <joe@example.com>
I wanted one email address per line, suitable for pasting into another location. I am far from an expert with the bash shell, but here's what I came up with—I imagine there are many more efficient ways to do this, as I'm sure experienced perl, sed, awk, etc. users may point out. Note that this is highly dependent on the format created by Apple's Mail app in OS X 10.8.

grep 'From:' /path/to/archive.txt | cut -f2 -d\< | cut -f1 -d\> | pbcopy

The grep bit pulls out the entire From: line, then the first cut command grabs the email address and the trailing close-bracket, by setting the delimiter to an open bracket. The second cut eliminates the closing bracket, by setting that as the delimiter. The output will be one email address per line, sitting on your clipboard ready for pasting. (To debug, just remove the | pbcopy bit to see the output.)

I also wanted to extract the names, and came up with a variant to do just that:

grep 'From:' ~/Desktop/testfile.txt | sed -e 's/: /:^/g' | sed -e 's/ \</^\</g' | cut -f2 -d^ | pbcopy

This one is messier, as names can contain one or more spaces. After getting the From: line, sed is used (twice) to add a carat delimiter immediately after From:, and immediately before the opening bracket of the email address. I then used cut, with the delimiter changed to the carat, to extract the full name (field two) from the found lines. Again, the results are copied to the clipboard; leave this bit off for debugging.

With the names and addresses extracted, it's fairly easy to do other stuff with them. In my case, I'm reading them into a couple of array variables in a bash script, so I can then output a name and email address pair to consecutive locations on my multi-pasteboard. If you want to use the names in an array in a bash script, you'll want to change the array delimiter from a space to a newline:

IFS='
'

Without this, your array will get split anywhere there's a space in the name values ... or so I've heard, not that it's ever happened to me!
  Post a comment  •  Comments (12)  
  • Currently 3.20 / 5
  You rated: 4 / 5 (10 votes cast)
 
[6,882 views] Email Article To a Friend View Printable Version
Set iPhone to flash LED for alerts iOS devices
A recent post on The Mac Observer pointed out a useful way to set alerts on an iPhone. If you dig deep into the ACcessibility settings (Settings > General > Accessibility), in the Hearing section, you'll find an option called LED Flash for Alerts. If you turn this on, you'll get a flash whenever you get an alert, such as for phone calls, text messages, etc. This is most useful if you're in a situation where you need to turn the sound off on your iPhone, or if you're in a noisy environment, and may not hear any alert sounds.

[kirkmc adds: This only works if the iPhone is asleep; in other words, if the screen has gone dark. It would be helpful if it flashed in all cases. Also, if you have the iPhone on a table with the LED on the bottom, you may not see the flash.]
  Post a comment  •  Comments (5)  
  • Currently 3.63 / 5
  You rated: 1 / 5 (19 votes cast)
 
[6,309 views] Email Article To a Friend View Printable Version