TweetFollow Us on Twitter

Mac OS X Services

Volume Number: 20 (2004)
Issue Number: 12
Column Tag: Programming

Mac OS X Services

Revisiting an Old Favorite

by Clint Bagwell

Remember the Services menu? It was one of the then-new features advertised with the coming of the first version of OS X. Three generations later Services are still a core component of the contemporary Mac OS and also one of its best kept-secrets. Developers and power users know about Services' system-wide, interactive functionality, but home users can also make the most of their many practical uses.

About Services

Services were one of the many NEXT innovations that were incorporated into the first version of OS X. Services can be found under any native OS X program's Application menu. The Services menu extends an application's functionality by providing some of its own capabilities to other programs. When an application signs up for Services, it takes advantage of another application's abilities as well. This feature is made possible by transferring data through a shared pasteboard (which exists independently of the normal Copy/Paste pasteboard). Apple includes some services as part of its operating system, and makes it easy for developers to use the technology in their own applications. When using more than one application, Services can improve workflow efficiency to save time.

Let's look at a practical example using just the Services that are already built in to OS X. You get a confirmation email from an order you placed online. With the email open in Mail, you select the confirmation number and choose Make New Sticky Note from the Service menu. Stickies automatically opens and creates a new note containing the confirmation number to view later. The email includes a number to track the package on a website, but leaves the URL incomplete so it is not an active link. No problem. You select "USPS.com" in the message and choose Open URL under the Services menu. Safari opens and is intelligent enough to locate http://www.usps.com/ for you. Daily tasks like these become less cumbersome with the Services menu's seamless integration of often used applications. Apple also includes many other helpful services that make use of the Finder, Mail, TextEdit, and Safari. The Grab application's Services are popular, as they provide an easy way to take screen shots from another application. Another Service that is often mentioned is Start Speaking Text. The simple command enables the power of OS X's speech center to aid in editing text. This tool is invaluable for catching mistakes that your eye may have missed. These are just a few of the helpful Services tied in to OS X's bundled applications.

Unfortunately, whenever I introduce someone to Services, they get really excited about it for five minutes and never use them again. Sound familiar? Let's face it, the Services menu has its pros and it definitely has its unfortunate cons. The biggest complaint I hear are that Services are not always available. It is up to the application developer to support it or not (Microsoft, I am looking in your direction...) To be fair, you may be surprised to hear that AppleWorks doesn't use them either. On top of this, many users get confused because you usually must have something selected in order for the Services to become active. The Services menu makes system-wide shortcuts available (Search With Google is Command+Shift+L), a plus in my book. On the other hand, Apple leaves it up to the developer to define the keyboard command, a definite problem. A user can easily wind up with two services trying to use the same shortcut. I will go over some ways to work around this issue later in the article.

Ready-Made Toolbox

We have looked at the services already included in OS X; a user can even further enhance productivity with add-ons. Devon Technology's "Service Pack" is my favorite set of downloadable 3rd party services. In WordService, Devon has created a variety of useful tools for manipulating, inserting, or analyzing text. Developers take note of items like Mac- to Windows-Encoding or Unix Line Endings. The average user may find that Initial Caps Of Sentences, Insert Long Date and Time or Statistics will add more power to the TextEdit program, and make him less dependent on Microsoft Word (http://www.devon- technologies.com/products/freeware/freeware.php).

If you routinely handle sensitive data, consider Security Service from Ambriel Software. The standard version adds the ability to encrypt or shred a file that is selected in the Finder. The pro version beefs up encryption options and enables others such as "Free Space Shredding" (http://ambrielsoftware.com/products/ security_services/).

If all of these tools aren't enough for you, push the Services menu over the top with the more than 120 that come with Text Wielder from Tinnef Software. In addition to text formatting tools similar to those of WordService, it includes research options such as Search Apple Help, Phone Number - Reverse Lookup at AnyWho.com, and package tracking from several providers. A word of advice: saturating the Services menu can drastically increase login times, as OS X searches for all that are available. Luckily, Text Wielder comes with the ability to activate or deactivate its abundance of menu options. Power users may take interest in the scalability of this program: Text Wielder gives them the ability to create additional Service menu items by harnessing the power of AppleScript and SFRL (Simple Find and Replace Language) (http://www.commongrnd.com/~blenkush/ textwielder.html).

Roll Your Own: Customizing And Creating Services

So what makes up a Service menu item? Add-on Services like WordService are installed by dragging .service files to /Library/Services or ~/Library/Services, but Services that are part of another app are typically part of its information property list. It is the Info.plist file within the Package's Contents directory that declares how an application's services appear in the Services menu and what type of data it can handle. When you open this file in a text editor (reminder: always backup your application before editing) you will look for the property called NSServices, and with it the components that make up a Service menu item. Remember that pesky issue of two applications using the same keyboard shortcut? Take a look at the example below:

<key>NSKeyEquivalent</key>      
   <dict>                        
      <key>default</key>          
      <string>B</string>          
   </dict>

Changing the B between the string tags to another character will change that menu item's shortcut to whatever you choose. (Keep in mind that OS X will automatically add Command+Shift to your character in the menu).

For the coding-challenged, PearSSC from Pearworks will do all of this with a graphical interface. Drag the application to the PearSSC window and type a letter; not only is it easy, it's free (http://www.pearworks.com/pages/software.html ).

Ready to take Services to the Extreme?

If you like using the command line, you will love SilverService by Rob Hague. This application consists of a panel that holds a list of your own Shell commands (complete with title, input, and output). SilverService then lists your commands by title under its own Service menu (http://www.rho.org.uk/software/silverservice/).

Similarly, ACP Web Services harnesses the power of search queries for its convenient and customizable Service menu. This application is based on the premise that most search engines use a query string with the desired word or phrase tacked onto the end of it (example: http://www.google.com/search?q=apple). So when you select a word in TextEdit and activate one of the ACP Services, it pastes your selection onto the end of its string to form a complete URL. To customize, write your own query or simply copy it from a search made on your favorite website, and add it to the APC list (in the above example you would copy the URL minus the word apple). What's more, ACP Web Services includes a "grab bag" of pre-built services ranging from Traceroute to a variety of international language Google searches. The pro version also adds a full service manager and shortcut editor for the entire Services menu (http://rixstep.com/4/0/aws/).

Developer Note:

Why should developers pay attention to the Services menu? Consider this example: MarketCircle utilized Services to creatively boost functionality to DayLite, a popular CRM application for Mac OS X. It features the ability to send e-mails to customers natively from the application, while recording the text in its database. Users naturally requested the ability to record incoming emails into the database as well, to capture their customers' responses. Rather than turn DayLite into a full-fledged e-mail client, MarketCircle simply added Services that work cleanly with Mail and other Services-aware applications. The user selects text and chooses the appropriate Service to create a note, task, or appointment in DayLite. When asked about their use of Services, MarketCircle's president Alykhan Jetha had this to say: "We decided to use the Services menu because of the its power. We realized the value of the Services architecture during our NeXT days."

If you're a developer, it's in your best interest to take another look at Services. Offer interactivity with other applications to make your application more beneficial without creating an entire plug-in or rewriting your app altogether. Think of the Services Menu as a great location for us to access your program's capability system-wide without crowding our menubars with extra icons. And by the way, it's not just for Cocoa anymore!

For More Information on Developing Services:


Clint Bagwell is a freelance Macintosh Consultant and visual artist working in New York City. For more information go to http://appleconsulting.net/bagwell

 
AAPL
$459.68
Apple Inc.
+4.56
MSFT
$30.24
Microsoft Corpora
+0.29
GOOG
$596.33
Google Inc.
+11.22
MacTech Search:
Community Search:

Reckless Racing 2 Review
Reckless Racing 2 Review By Greg Dawson on February 3rd, 2012 Our Rating: :: RUBBIN' AND RACIN'iPhone App - Designed for the iPhone, compatible with the iPad The original Reckless Racing game set the bar for down and dirty iOS... | Read more »
Five For Friday: Week of February 3
Another week has left us behind along with the first month of the year. As always with the arrival of Friday, we take a few moments to round up five of the most interesting apps and games that we’ve yet to cover in a more extensive form. There will... | Read more »
GHOST TRICK: Phantom Detective Review
GHOST TRICK: Phantom Detective Review By Dan Lee on February 3rd, 2012 Our Rating: :: TRICKYUniversal App - Designed for iPhone and iPad Use “Ghost Tricks” to possess objects and solve a murder.   | Read more »
Launch Center Launches New Third Party A...
Launch Center has gotten a major new update that brings new automatic app detection. While the app launched with support for built-in notifications, now the app supports launching third-party apps with specific commands, that can be scheduled to... | Read more »
Spy Mouse Feels the Love With New Valent...
EA and Firemint’s Spy Mouse has an update out now that’s designed to be more appropriate for this time of year, with Valentine’s Day coming up. Love is in the air, and while the cats in Agent Squeek’s life are still out to keep him from getting his... | Read more »
Panorama 360 Camera Review
Panorama 360 Camera Review By Jennifer Allen on February 2nd, 2012 Our Rating: :: CREATIVEUniversal App - Designed for iPhone and iPad Creating a panoramic image just got a whole lot simpler.   | Read more »
Gravity Lander Review
Gravity Lander Review By Rob Rich on February 2nd, 2012 Our Rating: :: SHORT FLIGHTiPhone App - Designed for the iPhone, compatible with the iPad Get three cosmonauts to land on the surface of Mars safely. It’s significantly harder... | Read more »

Price Scanner via MacPrices.net

27″ iMacs on sale for up to $130 off MSRP
  Apple resellers have 27″ iMacs on sale for up to $130 off MSRP. The following is a roundup of the lowest sale prices we’ve seen from Apple Authorized Internet/Catalog Resellers that are available... Read more
Updated MacBook Price Trackers
We’ve updated our MacBook Price Trackers with the latest information on prices, bundles, and availability from Apple’s authorized internet/catalog resellers: 17″ MacBook Pro 15″ MacBook Pro 13″... Read more
Refurbished Apple iPad 2s available for $100 off n...
 The Apple Store has Apple Certified Refurbished iPad 2s available for up to $100 off MSRP. Apple’s one-year warranty is included with each model, and shipping is free (for the most part, Apple... Read more
Apple offers refurbished MacBook Airs for up to $2...
The Apple Store is now offering Apple Certified Refurbished 2011 MacBook AIrs for up to $250 off the cost of new models. An Apple one-year warranty is included with each model, and shipping is free... Read more
Today only! 27″ Apple Thunderbolt Display for $100...
MacConnection has the 27″ Apple Thunderbolt Cinema Display on sale for today only for $899.99 including free shipping. That’s $100 off MSRP, and it’s the lowest price we’ve seen for this model from... Read more
15″ 2.4GHz MacBook Pro on sale for $175 off MSRP,...
Adorama has the 15″ 2.4GHz MacBook Pro on sale for $2024 including free shipping plus NY & NJ sales tax only. Their price is $175 off MSRP, and it’s the lowest price available for this model from... Read more
8GB iPod touch on sale for $20 off, includes free...
Amazon.com has lowered their price on the Black 8GB iPod touch to $179.99 including free shipping. Their price is $20 off MSRP, and it’s currently the lowest price available for this model from any... Read more
Open-box special: 13″ 256GB MacBook Air for $283 o...
MacMall has restocked open-box return 13″ 256GB MacBook Airs for $1316.16 including free FedEx shipping. Their price is $283 off the price of unopened boxes. Apple’s one year warranty and all... Read more

Jobs Board

Windows Mac Support Technician at Keystr...
at Beverly Hills, CA Mac Support Responsibilities: Support Apple product environment Administer Mac hardware Apply ... tickets Evaluate, test & propose new technologies for the Mac environment... Read more
On-Site Systems Support - Linux/Mac Tech...
XP, current MAC OSX and Microsoft Office 2007, Office 2008 (MAC), Microsoft Entourage and Outlook 2007 Knowledge of PC ... 2007, Office 2008 for Mac, Windows 98/NT/2000/XP/7, Current Mac O/S,VERITAS... Read more
MAC Systems Management Administrator at...
Available Ref ID: 1001703121 Visit Us www.technisource.com MAC Systems Management Administrator JOB DESCRIPTION MAC ... decision-making abilities Strong knowledge of current Apple Mac OSX and other... Read more
Software Engineering Manager - *Apple*...
Job Title: Software Engineering Manager - Apple TV Profession: Computer Engineering and Information Technology -> Technology Management Requisition Number 9439460Job Read more
Mobility Specialist - Apple Online Store...
Comfortable working with ambiguity; Experience with both Mac & PC. Previous experience working in a fast-paced ... product features and related accessories; Understand Apple's Digital Lifestyle... Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.