クリップボード
From Wikipedia, the free encyclopedia
クリップボード(英: clipboard)は、コンピュータ上で、一時的にデータを保存できる共有のメモリ領域のことである。通例オペレーティングシステム(OS)が管理しており、複数の異なるプログラムからアクセス可能であり、単一のアプリケーションだけでなく異なるアプリケーション間のデータの受け渡しにも使用される。
直感的には、コピー・アンド・ペーストにてデータを移動する際の一時保管所である。クリップボードには、テキストデータ・画像をはじめさまざまなフォーマットのデータを格納することができるが、クリップボードから読み出したデータをどこまで再現できるかはアプリケーションに依存する。例えば、ワープロソフトからクリップボードにコピーした書式付きのデータを、テキストエディタにペーストした場合、文字や改行の情報は再現されるが、フォントの修飾や罫線、画像などの情報は、そぎ落とされる(つまりテキストエディタ側では利用されず、無視される)。OS標準のウィジェット・ツールキットに含まれるテキストボックスなどでカバーできる範囲であれば、アプリケーション側で特にクリップボード機能を明示的に実装する必要はないが、クリップボードを直接操作するAPIを利用することによって細かな制御やカスタムデータを格納・読み出しすることができるようになる。
クリップボードに保持されるデータは通常ひとつのみであり、クリップボードに対する書き込みが行われると、それまで保持していたデータは上書きされる。 複数のクリップボードの履歴を保持するためにクリップボードの機能を拡張するユーティリティやアプリケーションが開発されている。Emacsで使用されるクリップボードに似た機能のキルリングでは、バッファが複数あり、履歴を保持することができる。
クリップボード機能を提供するOSには、クリップボードの内容を参照するためのユーティリティが付属している。モダンなOSでは標準機能によってクリップボード履歴を管理できるようになっているものもある。
クリップボードとのデータのやりとりには以下のものがある。
- コピー(複写)
- 選択されたデータをクリップボードへ複写する。元のデータには影響を及ぼさない。
- カット(切り取り)
- 選択されたデータをクリップボードへ移動する。
- ペースト(貼り付け)
- クリップボードからプログラムにデータを複写する。
コピーとカットは、クリップボード側から見れば、クリップボードにデータを書き込むという点で同じ動作である。これらの動作は、ユーザーの操作によって明示的に行われるだけでなく、アプリケーションの仕様により自動的に行われる場合もある。
OS固有の標準的なキーボードショートカットが用意されていることが多いが、GUIアプリケーションではメニューあるいはコンテキストメニュー、ツールバーのボタンなどからクリップボードの操作に関連するコマンドを実行することもできる。
タッチパネル(タッチスクリーン)を搭載したスマートフォンなどに搭載されているモバイルOSでは、テキスト表示領域や入力欄などのダブルタップあるいは長押しによってテキスト選択アンカーやコンテキストメニューが表示され、ハードウェアキーボードやポインティングデバイスが接続されていない場合でもクリップボードを利用できるようになっている。ソフトウェアキーボードも、タッチ操作だけでテキストを選択したり、クリップボードを利用したりする機能に対応しているものも多い。
歴史
クリップボード、つまり少量のデータ用のバッファを初めて使った人物はPentti Kanervaであり、テキストから一部のテキストを削除した後に、それを再現するために使ったのだった[1]。

ある場所からテキストを除去して別の場所で再現できるようになったのだから、その機能を使うことを「デリート delete(削除・抹消)」という言葉で呼んでしまうのは、言葉の意味にそぐわない。そこで1973年にラリー・テスラーが、その機能を使うことを「cut」「copy」「paste」と再命名し、バッファのほうの呼び方として「クリップボード」という名を選んだ。コピーされたりカットされたりしたデータが一時的に保持するために使われるのだから、(すでに皆が知っている文房具である)文書を一時的にとめておくためのボードであるクリップボードという名称(比喩)で呼ぶことがぴったりだと判断したのである[2]。この機能は、ラリー・テスラーとティム・モットによりGypsyに実装され、Smalltalk-76にも実装され、それらはAltoで動いた。