X端末でダブルクリック動作を設定するには?

X端末でダブルクリック動作を設定するには?

他のUnix / LinuxシステムのXターミナルアプリケーション(xtermなど)では、ダブルクリック動作が異なることが観察されました。

時にはダブルクリックすると、アルファベットではなく次の文字まで左右のすべての項目が選択されます(たとえば、カーソルの下の単語を選択するなど)。

場合によっては、次のスペース/末尾までのすべてが選択されます(たとえば、カーソルの下のフルパスを選択するなど)。

xterm(ほとんどのシステムで利用可能)でダブルクリック動作をどのように設定しますか?

現在、ほとんどのユースケースでは、2番目のモードがより便利だと思います。

ベストアンサー1

Xリソースを使用してこれを行います。.Xresources以下のxterm関連リソースを含むファイルがあります。

XTerm*VT100.cutNewLine: false
XTerm*VT100.cutToBeginningOfLine: false
XTerm*VT100.charClass: 33:48,35:48,37:48,42:48,45-47:48,64:48,95:48,126:48

私の.xinitrcファイルには、これらのリソースをマージするいくつかの行があります。

if [ -f $userresources ]; then
    /usr/X11/bin/xrdb -merge $userresources
fi

次の行は、xtermをダブルクリックして3回クリックすることで私の好きなことを行います。

ダブルクリックすると、「単語」にスラッシュ(/)、ドット(。)、アスタリスク(*)、その他の英数字以外の文字が含まれると見なされます。これは「charClass」リソースです。私が望むことをするには、charClassを使って退屈な操作をしなければなりませんでした。これにより、デフォルトでURLと完全または部分的に完全修飾パスをダブルクリックして強調表示できます。

他の2行は、マウスの下の単語の3回のクリックで始まり、行の終わりに移動しますが、改行文字は含まれません。これにより、実行したばかりのコマンドを三重クリックして別のウィンドウに貼り付けることができ、改行がないため、別のウィンドウで実行する前に編集できます。

アーチウィキXリソースに関する記事、xterm リソースのセクションが含まれますが、これらの xterm リソースは完全ではありません。

おすすめ記事