xclip と xsel
詳細情報
- 作成者
- Kim Saunders (xclip), Conrad Parker (xsel)
- 公開
- 種類
- コマンドラインツール
- ライセンス
- GPL-2.0
- ソース
- github.com/astrand/xclip
シェルのパイプとXのセレクションをつなぐ2つの小さなプログラム。cmd | xclipでクリップボードに内容が入り、xsel -bでそれを端末に貼り付け直せる。
どちらも2001年に登場し、反対の端から同じ仕事をこなす。xclipは標準入力を読み、セレクションの所有者となる。指定がなければPRIMARY、-selection clipboardならCLIPBOARDだ。xclip -oは代わりにその内容を出力する。xselも同じことを短いフラグで提供し、-p、-s、-bが3種類のセレクションを表し、セレクションの消去や引き継ぎもできる。Xのセレクションはバッファではなく約束事なので、プログラムは生き続けなければならない。そのためxclipはバックグラウンドにフォークし、誰かが別のセレクションを要求するまで要求に答え続ける。
この細部のおかげで、これらは珍品でなく日常の道具になっている。Vim、tmux、ほとんどのシェル環境には、選択範囲をxclip経由で渡す設定行があり、利用者のクリップボードに何かを入れたいスクリプトには、ほかに方法がない。Waylandでは、wl-clipboardのwl-copyとwl-pasteが同じ役割を担い、同じ理由で同様にバックグラウンドプロセスを使う。