Next: , Previous: Yank Commands, Up: The Kill Ring


31.8.4 下位レベルのキルリング

これらの関数と変数は、下位レベルでキルリングを参照するためのものですが、 Lispプログラムで使っても便利です。 これらはウィンドウシステムのセレクション(see Window System Selections) との相互作用の面倒をみてくれるからです。

— Function: current-kill n &optional do-not-move

関数current-killは、キルリングの『先頭』として区別する ヤンクポインタを(新しいキルから古いキルへ向けて)n個分回転し、 リングのその位置のテキストを返す。

省略可能な第2引数do-not-movenil以外であると、 current-killは、ヤンクポインタは変更せずに、 現在のヤンクポインタから数えてn番目のキルを返す。

nが0であると、もっとも最近のキルを要求することを表し、 current-killは、キルリングを調べるまえに (以下に述べる)interprogram-paste-functionの値を呼び出す。

— Function: kill-new string

この関数は、テキストstringを新たな項目として キルリングの先頭に置く。 必要ならば最古の項目を破棄する。 interprogram-cut-function(下記参照)の値も起動する。

— Function: kill-append string before-p

この関数は、キルリングの先頭項目にテキストstringを追加する。 通常、stringはその項目の末尾に加わるが、 before-pnil以外であるとその項目の先頭に加わる。 この関数は、interprogram-cut-function(下記参照)の値も起動する。

— Variable: interprogram-paste-function

この変数は、ウィンドウシステムを使っているときに 別のプログラムからキルされたテキストを転送する方法を提供する。 その値は、nilであるか、引数なしの関数であること。

値が関数であると、 『もっとも最近のキル』を得るためにcurrent-killが呼び出す。 関数がnil以外の値を返すと、 その値は『もっとも最近のキル』として使われる。 nilを返せば、kill-ringの先頭項目が使われる。

このフックの普通の用途は、 セレクションが別のアプリケーションに属する場合であっても、 ウィンドウシステムの一次セレクションを もっとも最近のキルとして得ることである。 see Window System Selections

— Variable: interprogram-cut-function

この変数は、ウィンドウシステムを使っているときに キルされたテキストを別のプログラムへ転送する方法を提供する。 その値は、nilであるか、引数なしの関数であること。

値が関数であると、kill-newkill-appendが キルリングの新たな先頭項目を引数として呼び出す。

このフックの普通の用途は、 新たにキルされたテキストを ウィンドウシステムの一次セレクションにすることである。 see Window System Selections