web-dev-qa-db-ja.com

Wacom Bamboo CTH-470のタッチをどのようにオフにしますか?

彼女に最近Wacom Bamboo CTH-470を購入しましたが、wacom-dkmsをインストールした後はうまく動作しています。今、私は、どうやって移動するのかわからない壁にぶつかった。タブレットのタッチはオフになりません。 Ubuntu 12.04 Beta 2を実行しています。設定メニューのwacom設定からタッチをオフにしようとしました。ペンとタッチはどちらも完璧に機能します。myPaintで描画しようとすると、タッチが彼女の狂気を駆り立てます。

9
Foxx

編集

コメントやその他の回答を確認すると、タブレットのボタンを使用してタッチの切り替えを探している人もいるようです。 3つのものが必要な場合(Ubuntu/Unityの場合):

  1. 単純なコマンド(ターミナルまたはスクリプトファイルで実行可能)

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を知らなくても、接続されたタブレットのタッチを切り替える便利な方法です。

  1. キーボードショートカットを設定する

ターミナルなしでこれを実行したい場合、スクリプトをファイルに保存し、実行可能にし、キーボードショートカットを作成する必要があります。これは、タブレットのボタンにコマンドを直接割り当てることができないためです(ただし、キーストロークを割り当てることはできます...)。

UnityでSystem Settings> Keyboard> Shortcutsを開き、新しいショートカットを作成します。 Superキーは、ステップ3で常に機能するとは限らないため、避けてください。

コマンドとして、スクリプトファイルの名前を入力します(完全なパス、一重引用符の間、不明な場合はターミナルにファイルをドラッグアンドドロップし、作成したコマンドを使用します)。

enter image description here

  1. ショートカットのキーストロークをボタンに割り当てます

システム設定> Wacom Tablet> Map Buttons ...を開き、選択したキーストロークをボタンに割り当てます。

どのボタンが修飾なしで最初に文字を割り当てることができるかを知るには、テキストフィールドを選択してボタンを押し、対応する文字を確認します。

enter image description here

ここで注意してください:すべてのボタンが認識されるわけではなく(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

明らかに、TOUCHタイプのものがここで無効になります。ここでDEVICE_NAMEは Wacom BambooPT 2FG 4x5フィンガータッチ そして、DEVICE_IDは 14無効にするパラメータを知る必要があるので、試してください:

xsetwacom --list parameters

有効/無効にするパラメーターが多数あり、各パラメーター名(このPARAM_NAMEを呼び出しましょう)に期待される値のタイプが説明されています。この場合、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
14
Maxweel

1行のソリューションを次に示します。

xsetwacom --list | grep --line-buffered "TOUCH" | awk '{system("xsetwacom --set "$8" touch off")}'
2
randompast

バッチでさらに別のスクリプトを投げて、私はこのスクリプトを自分用に書きました。環境パスに追加した実行ファイル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
0
CodeMouse92

タブレットをどのコンピューターに接続しても、タッチのオン/オフを制御できるように、このスクリプトを作成しました(これらの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)

この2つの単純なbashスクリプトとともに、このスクリプトを/ usr/local/binに配置して、パラメーターを覚えなくても呼び出すことができます...

Kermit-hw-bamboo-untouch:

#!/bin/bash
Kermit-internal-pytouch 0
exit

Kermit-hw-bamboo-touch:

#!/bin/bash
Kermit-internal-pytouch 1
exit

とはいえ、Ubuntuではタブレットのサポートがこれ以上ないのは本当に悲しいことです。たぶん、いつかワコムは私たちのコミュニティにも注意を向けるでしょう...

0
metakermit