- Services menu
The Services menu (or simply Services) is a
user interface element in a computeroperating system . The services are programs that accept input from the user selection, process it, and optionally put the result back in the clipboard. The concept originated in theNeXTSTEP operating system, from which it was carried over intoMac OS X andGNUstep . Similar features can be emulated on other operating systems.Mac OS X
Apple advertises the Services menu in connection with other features of its operating system. For example, it's possible to
desktop search for a piece of text by selecting it with the mouse and using the service from Spotlight. Other central services are Grab for taking screenshots, and the systemspell checker . The concept is similar to aGUI equivalent of aUnix pipe , allowing arbitrary data to be processed and passed between programs.Services can be implemented as application services, which expose a portion of the functionality of an application to operate on selected data, usually without displaying an interface, or they may be standalone services which are small utilities to manipulate data, such as transforming the case of selected text or cropping an image to use as an icon. Their simple, one-purpose nature and not requiring a GUI to be designed makes writing a standalone services a popular beginner's Mac OS X programming projectFact|date=April 2008
Since many applications install their entries without asking the user, the OS X services menu tends to clog up with dozens of entries quickly. Most users only will ever use a small subset of the possible options, therefore cutting down and customizing the menu makes it both faster and more pleasant to use. Third party software is required to do this, however.
Emulation
From the point of view of software, the Services menu is a means of
inter-process communication . To the user, it is an interface for executing actions on selected data. The emulation of the Services menu is based on the fact that there are several ways this can be achieved in an operating system. Even in Mac OS X, there is an alternative system called thecontext menu handler, which is carried over fromclassic Mac OS .In the
X Window System , any data selected in an application is available to all other programs. Thus the Services menu can be an application which retrieves the current selection, and lets the user choose an action. Missing is the part about returning the processed data back to the originating application. Instead, the service can open a new window to show the results.Alternatively, the service could replace the current cut buffer with the results of the operation, leaving the user only to perform a paste (since different toolkits implement copy/select and paste commands differently, and probably not under external program control).
References
* [http://developer.apple.com/documentation/Cocoa/Conceptual/SysServices/ Introduction to System Services] at Apple Developer Connection
External links
* [http://iki.fi/Tuukka/software/services Services menu emulation]
* [http://www.manytricks.com/servicescrubber/ Service Scrubber] OS X utility for customizing the services menu
* [http://wafflesoftware.net/thisservice/ ThisService] OS X utility that can create a service from either anAppleScript orShell script
Wikimedia Foundation. 2010.