The semantics of the clipboard facility varies from one operating environment to another, and can also vary between versions of the same system. They can sometimes be changed programmatically or by user preference. This can lead to user frustration when switching between environments with different clipboard semantics particularly as copy and paste operations often become embedded in the user's muscle memory.
Most environments support a single clipboard transaction. Each cut or copy overwrites the previous contents. Normally, paste operations copy the contents, leaving the contents available in the clipboard for further pasting operations.
Early implementations of the clipboard stored data as plain text without meta-information such as typeface, type style or color. More recent implemenations support the multiple types of data, allowing complex data structures to be stored. These range from styled text formats such as RTF or HTML, through a variety of bitmap and vector image formats to complex data types like spreadsheets and database entries.
For example cutting a range of cells in a spreadsheet and then pasting them into another sheet may preserve the underlying formulae and data, and may even translate intra-cell references, so that a "SUM(...)" calculation on a sub-range of the cells is converted to refer to the newly pasted copies of those cells.
When data is added to the clipboard by an application, it typically makes it available in as many different data formats as it can. This includes both native and simpler (or more common) formats that would have a higher chance of being recognized by a wide variety of applications. Thus, when data is pasted into another application, the format that is closest to that application's native format can be used, preserving as much of the original data as possible. In Windows in particular, the internal clipboard functionality of the operating system will automatically translate data from known advanced formats to simpler formats automatically (such as RTF to plain text, or Unicode to ANSI Text), increasing the likelihood that any given application can interpret some form of the original data.
Modern GUIs often provide a clipboard manager which supports multiple cut and paste transactions. In this model the clipboard is treated as a stack or scrap book, with new cuts and copies being placed added to the top of the list of recent transactions. The standard paste operation copies the most recent transaction, while specialized pastes provide access to the other stored transactions. These managers generally also provide a window that displays the transaction history and allows the user to select earlier copies, edit them, change their format and even search amongst them.
Most environments do not save the clipboard contents to any persistent storage - when a user logs out or reboots his or her system the clipboard contents are cleared and forgotten.
See also Snippet management.
The standard Windows keybindings are:
alternative keybindings (available in most windows programs)
the advantage of the alternative keys is that the fingers can stay close to the arrow and selection keys when you are editing a large body of text
The Clipbook Viewer was removed entirely in Windows Vista.
The X Window System commonly used on Unix and Linux systems provides a clipboard implementation via selections. Selections are asynchronous, so data is copied and converted into the desired format only on-demand.
The usage and handling of various selections is not standardized. However most modern toolkits and desktop environments, such as GNOME or KDE, follow a widely accepted convention, outlined in the freedesktop.org specification. One selection, CLIPBOARD, is used for traditional clipboard semantics, with shortcuts similar to Windows. Another selection, PRIMARY, is an X11-specific mechanism. Data is "copied" immediately upon highlighting and pasted with the third (middle) mouse button. This is usually separate from the CLIPBOARD selection and does not change its contents.