回答:
編集する
コメントやその他の回答を確認すると、タブレットのボタンを使用してタッチの切り替えをまだ探しているようです。あなたが欲しいのが3つ必要な場合(Ubuntu / Unityに示されています):
1行のコマンドを使用したrandompastのソリューションは優れており、より便利な1行のトグルコマンドに変えることができます。
xsetwacom --list | grep --line-buffered "TOUCH" | awk '{system("echo "$8";xsetwacom --get "$8" TOUCH;")}' | tr "\n" " " | awk '$2 == "off" {system("xsetwacom --set "$1" TOUCH on")} $2 == "on" {system("xsetwacom --set "$1" TOUCH off")}'
もちろん、すでに独自のスクリプトやコマンドラインがある場合は必要ありませんが、タブレットの名前やIDを知らなくても、接続されているタブレットのタッチを切り替えるには便利な方法です。
ターミナルなしでこれを実行する場合は、スクリプトをファイルに保存し、実行可能にして、キーボードショートカットを作成する必要があります。これは、タブレットのボタンに直接コマンドを割り当てることができないためです(ただし、キーストロークを割り当てることはできます...)。
Unityでシステム設定>キーボード>ショートカットを開き、新しいショートカットを作成します。Superキーは、手順3で常に機能するとは限らないため、使用しないでください。
コマンドとして、スクリプトファイルの名前を入力します(完全なパス、一重引用符で囲みます。不明な場合は、ファイルをターミナルにドラッグアンドドロップして、作成したコマンドを使用します)。
[ システム設定]> [Wacomタブレット]> [ボタンのマップ...]を開き、選択したキーストロークをボタンに割り当てます。
最初に修飾子なしで文字を割り当てることができるボタンを確認するには、テキストフィールドを選択してボタンを押し、対応する文字を確認します。
ここで注意してください:すべてのボタンが認識されるわけではなく(私のBambooの4つのうち3つ)、すべてのキーストロークが機能するわけではありません(Superキーでは機能しません)。さまざまな組み合わせを試す必要があります。
元の回答(コマンドを学ぶため)
私は1年以上前にペン&タッチをセットアップしたので、ここで間違っている可能性があります。私が通常行うことはターミナルで実行されます:
xsetwacom --set "Wacom BambooPT 2FG 4x5 Finger touch" touch off
別のタブレットを使用しているため、これは機能しません。最初に試してください
xsetwacom
これにより、使用するパラメータが提供されます。まず、デバイスの名前を取得する必要があります(これをDEVICE_NAMEと呼びましょう)。
xsetwacom --list devices
これは私のペンとタッチのために私に与えます:
Wacom BambooPT 2FG 4x5ペン消しゴムID:11タイプ:消しゴム
Wacom BambooPT 2FG 4x5ペンスタイラスID:12タイプ:STYLUS
Wacom BambooPT 2FG 4x5指パッドID:13タイプ:PAD
Wacom BambooPT 2FG 4x5フィンガータッチID:14タイプ:タッチ
明らかにタイプがTOUCHのものは、ここで無効にするものです。ここで、DEVICE_NAMEはWacom BambooPT 2FG 4x5の指のタッチで、DEVICE_IDは14になります。次に、無効にするパラメーターを知る必要があるため、次のように試してください。
xsetwacom --list parameters
有効化/無効化するパラメーターは多数あり、各パラメーター名(これをPARAM_NAMEと呼びましょう)に対して、予期される値のタイプが説明されています。この場合、-setオプションで実行できるTouchパラメータをオフにします。構文は次のとおりです。
xsetwacom --set "DEVICE_NAME" PARAM_NAME PARAM_VALUE
または
xsetwacom --set DEVICE_ID PARAM_NAME PARAM_VALUE
PARAM_VALUEの代わりに何を配置すればよいかわからない場合は、-getオプションを使用して現在の値を確認してください。
xsetwacom --get "DEVICE_NAME" PARAM_NAME
このスクリプトは、タブレットをどのコンピューターに接続しても、タッチのオン/オフを制御できるように記述しました(これらのIDはマシン間で変化するため)。あなたもそれが役に立つかもしれません。
#!/usr/bin/python
# kermit-internal-pytouch 0|1
import re, sys, subprocess
resp = subprocess.Popen(['xinput', '-list'], stdout = subprocess.PIPE)
out, err = resp.communicate()
WacomLine = re.compile('Wacom')
FingerLine = re.compile('Finger')
idExpr=re.compile('id=(?P<number>\d+)')
for line in out.split("\n"):
if WacomLine.search(line) and FingerLine.search(line):
identifier = idExpr.search(line)
num = identifier.group("number")
subprocess.call(['xinput', '-set-prop', num, "Device Enabled", sys.argv[1]])
resp = subprocess.Popen(['xinput', '-list'], stdout = subprocess.PIPE)
out, err = resp.communicate()
print(out)
このスクリプトを/ usr / local / binに置いて、これらの2つの単純なbashスクリプトと一緒に、パラメーターを覚える必要なく呼び出すことができます...
kermit-hw-bamboo-untouch:
#!/bin/bash
kermit-internal-pytouch 0
exit
kermit-hw-bamboo-touch:
#!/bin/bash
kermit-internal-pytouch 1
exit
とはいえ、Ubuntuのタブレットのサポートがこれ以上ないのは本当に悲しいことです。たぶんいつかワコムは私たちのコミュニティにもいくつかの注意を向けるでしょう...
バッチでさらに別のスクリプトを投げて、私はこれを自分のために書きました。環境パスに追加しwacomtouch
た.scripts
フォルダー内の実行可能ファイルにあります。したがって、タッチを無効にするには、を実行するだけですwacomtouch off
。すべてのパラメータを自動的に検出するので、理論的にはすべてのWacomタブレットで自動的に動作します。
(これはpcregrep
パッケージに依存します。)
#!/bin/bash
STATUS="$1"
#Isolate the id of the touch device automatically.
rawID=`xsetwacom --list | pcregrep -M 'TOUCH' | pcregrep -o 'id\: \d*'`
#Trim further
device=`echo "$rawID" | grep -o "[0-9]\+"`
xsetwacom --set $device touch $1
case $1 in
on)
echo "Tablet touch is ENABLED."
;;
off)
echo "Tablet touch is DISABLED."
;;
*)
echo "Invalid option. Must be either on or off."
;;
esac