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

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Tidy Up 5.3.7 - Find duplicate files and...
Tidy Up is a full-featured duplicate finder and disk-tidiness utility. Features: Supports Lightroom: it is now possible to search and collect duplicates directly in the Lightroom library. Multiple... Read more
Pinegrow 5.97 - Mockup and design web pa...
Pinegrow (was Pinegrow Web Designer) is desktop app that lets you mockup and design webpages faster with multi-page editing, CSS and LESS styling, and smart components for Bootstrap, Foundation,... Read more
BlueStacks 4.210.0 - Run Android applica...
BlueStacks App Player lets you run your Android apps fast and fullscreen on your Mac. Feature comparison chart How to install Bluestacks on your Mac Go to MacUpdate and click the green "Download"... Read more
WhatsApp 2.2027.10 - Desktop client for...
WhatsApp is the desktop client for WhatsApp Messenger, a cross-platform mobile messaging app which allows you to exchange messages without having to pay for SMS. WhatsApp Messenger is available for... Read more
Art Text 4.0.1 - $29.99
Art Text is graphic design software specifically tuned for lettering, typography, text mockups and various artistic text effects. Supplied with a great variety of ready to use styles and materials,... Read more
Adobe Dreamweaver CC 2020 20.2 - Build w...
Dreamweaver CC 2020 is available as part of Adobe Creative Cloud for as little as $20.99/month (or $9.99/month if you're a previous Dreamweaver customer). Adobe Dreamweaver CC 2020 allows you to... Read more
Adobe Acrobat DC 20.009.20074 - Powerful...
Acrobat DC is available only as a part of Adobe Creative Cloud, and can only be installed and/or updated through Adobe's Creative Cloud app. Adobe Acrobat DC with Adobe Document Cloud services is... Read more
beaTunes 5.2.10 - Organize your music co...
beaTunes is a full-featured music player and organizational tool for music collections. How well organized is your music library? Are your artists always spelled the same way? Any R.E.M. vs REM?... Read more
DiskCatalogMaker 8.1.5 - Catalog your di...
DiskCatalogMaker is a simple disk management tool which catalogs disks. Simple, light-weight, and fast Finder-like intuitive look and feel Super-fast search algorithm Can compress catalog data for... Read more
Meteorologist 3.4.1 - Popular weather ap...
Meteorologist is a simple interface to weather provided by weather.com. It provides the ability to show the weather in the main menu bar, displaying more detail in a pop-up menu, whose contents are... Read more

Latest Forum Discussions

See All

Steam Link Spotlight - Disco Elysium
Steam Link Spotlight is a feature where we look at PC games that play exceptionally well using the Steam Link app. Our last entry was Signs of the Sojourner Read about how it plays using Steam Link over here. | Read more »
Distract Yourself With These Great Mobil...
There’s a lot going on right now, and I don’t really feel like trying to write some kind of pithy intro for it. All I’ll say is lots of people have been coming together and helping each other in small ways, and I’m choosing to focus on that as I... | Read more »
Pokemon Go's July Community Day wil...
Pokemon Go developers have announced the details concerning the upcoming Gastly Community Day. This particular event was selected by the players of the game after the Gas Pokemon came in second place after a poll that decided which Pokemon would... | Read more »
Clash Royale: The Road to Legendary Aren...
Supercell recently celebrated its 10th anniversary and their best title, Clash Royale, is as good as it's ever been. Even for lapsed players, returning to the game is as easy as can be. If you want to join us in picking the game back up, we've put... | Read more »
Detective Di is a point-and-click murder...
Detective Di is a point-and-click murder mystery set in Tang Dynasty-era China. You'll take on the role of China's best-known investigator, Di Renjie, as he solves a series of grisly murders that will ultimately lead him on a collision course with... | Read more »
Dissidia Final Fantasy Opera Omnia is se...
Dissidia Final Fantasy Opera Omnia, one of Square Enix's many popular mobile RPGs, has announced a plethora of in-game events that are set to take place over the summer. This will include several rewards, Free Multi Draws and more. [Read more] | Read more »
Sphaze is a neat-looking puzzler where y...
Sphaze is a neat-looking puzzler where you'll work to guide robots through increasingly elaborate mazes. It's set in a visually distinct world that's equal parts fantasy and sci-fi, and it's finally launched today for iOS and Android devices. [... | Read more »
Apple Arcade is in trouble
Yesterday, Bloomberg reported that Apple is disappointed in the performance of Apple Arcade and will be shifting their approach to the service by focusing on games that can retain subscribers and canceling other upcoming releases that don't fit... | Read more »
Pixel Petz, an inventive platform for de...
Pixel Petz has built up a sizeable player base thanks to its layered, easy-to-understand creative tools and friendly social experience. It revolves around designing, trading, and playing with a unique collection of pixel art pets, and it's out now... | Read more »
The King of Fighters Allstar's late...
The King of Fighters ALLSTAR, Netmarble's popular action RPG, has once again been updated with a plethora of new content. This includes battle cards, events and 21 new fighters, which increases the already sizeable roster even more. [Read more] | Read more »

Price Scanner via MacPrices.net

Clearance 2019 13″ 2.4GHz/256GB MacBook Pro o...
B&H Photo has dropped their price on the clearance 2019 13″ 2.4GHz/256GB Quad-Core Silver MacBook Pro by $500 off Apple’s original MSRP to a new low of only $1299. Expedited shipping is free to... Read more
$219 Apple AirPods Pro are back at Verizon, s...
Verizon has Apple AirPods Pro on sale again for a limited time for $219.99 on their online store. Their price is $30 off Apple’s MSRP, and it’s the lowest price we’ve seen for AirPods Pro. Available... Read more
Apple’s $779 13″ MacBook Air deal returns to...
Apple has clearance, Certified Refurbished, 2019 13″ MacBook Airs available again starting at $779. Each MacBook features a new outer case, comes with a standard Apple one-year warranty, and is... Read more
$200 13″ MacBook Pro discounts are back at Am...
Amazon has 2020 13″ 2.0GHz MacBook Pros on sale again today for $150-$200 off Apple’s MSRP. Shipping is free. Be sure to purchase the MacBook Pro from Amazon, rather than a third-party seller, and... Read more
Deal Alert! Apple AirPods with Wireless Charg...
Sams Club has Apple AirPods with Wireless Charging Case on sale on their online store for only $149.98 from July 6, 2020 to July 9, 2020. Their price is $50 off Apple’s MSRP, and it’s the lowest... Read more
Xfinity Mobile promo: Apple iPhone XS models...
Take $300 off the purchase of any Apple iPhone XS model at Xfinity Mobile while supplies last. Service plan required: – 64GB iPhone XS: $599.99 save $300 – 256GB iPhone XS: $749.99 save $300 – 512GB... Read more
New July 2020 promo at US Cellular: Switch an...
US Cellular has introduced a new July 2020 deal offering free 64GB Apple iPhone 11 smartphones to customers opening a new line of service. No trade-in required, and discounts are applied via monthly... Read more
Apple offers up to $400 Education discount on...
Apple has launched their Back to School promotion for 2020. They will include one free pair Apple AirPods (with charging case) with the purchase of a MacBook Air, MacBook Pro, iMac, or iMac Pro (Mac... Read more
July 4th Sale: Woot offers wide range of Macs...
Amazon-owned Woot is blowing out a wide range of Apple Macs and iPads for July 4th staring at $279 and ranging up to just over $1000. Models vary from older iPads and 11″ MacBook Airs to some newer... Read more
Apple Pro Display XDR with Nano-Texture Glass...
Abt Electronics has Apple’s new 32″ Pro Display XDR model with the nano-texture glass in stock and on sale today for up to $144 off MSRP. Shipping is free: – Pro Display XDR (nano-texture glass): $... Read more

Jobs Board

Physical Therapist Assistant - *Apple* Hill...
Physical Therapist Assistant - Apple Hill Rehab - Full Time Tracking Code 62519 Job Description General Summary: Under the direct supervision of a licensed Physical Read more
Operating Room Assistant, *Apple* Hill Surg...
Operating Room Assistant, Apple Hill Surgical Center - Full Time, Day Shift, Monday - Saturday availability required Tracking Code 62363 Job Description Operating Read more
Perioperative RN - ( *Apple* Hill Surgical C...
Perioperative RN - ( Apple Hill Surgical Center) Tracking Code 60593 Job Description Monday - Friday - Full Time Days Possible Saturdays General Summary: Under the Read more
Product Manager, *Apple* Commercial Sales -...
Product Manager, Apple Commercial Sales Austin, TX, US Requisition Number:77652 As an Apple Product Manager for the Commercial Sales team at Insight, you Read more
*Apple* Mac Product Engineer - Barclays (Uni...
Apple Mac EngineerWhippany, NJ Support the development and delivery of solutions, products, and capabilities into the Barclays environment working across technical Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.