Как отключить сенсорный экран на Wacom Bamboo CTH-470?

9

Недавно я купил своей девушке Wacom Bamboo CTH-470, и она хорошо работает после установки wacom-dkms. Теперь я столкнулся со стеной, которую я не знаю, как обойти. Тач на планшете не выключится. Я использую Ubuntu 12.04 Beta 2. Я попытался отключить сенсорный экран из настроек wacom в меню настроек. Перо и касание прекрасно работают, просто прикосновение сводит ее с ума, когда я пытаюсь рисовать в myPaint.

Foxx
источник

Ответы:

14

редактировать

Проверяя комментарии и другие ответы, кажется, что некоторые все еще ищут переключение касания с помощью кнопок планшета. Если вы просто хотите, чтобы вам понадобилось 3 вещи (показано для Ubuntu / Unity):

  1. Простая команда (которую можно запустить в терминале или в файле скрипта)

Решение randompast с командой из 1 строки приятно и может быть превращено в более удобную команду переключения из 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")}'

Конечно, вам это не нужно, если у вас уже есть собственный сценарий или командная строка, но это удобный способ переключать касание подключенных планшетов, не зная их имени или идентификатора.

  1. Настройте сочетание клавиш

Если вы хотите запустить это без терминала, вам нужно сохранить скрипт в файле, сделать его исполняемым и создать для него сочетание клавиш. Это потому, что вы не можете назначить команду непосредственно кнопкам планшета (но вы можете назначить нажатие клавиши ...).

В Unity откройте « Системные настройки»> «Клавиатура»> «Ярлыки» и создайте новый ярлык. Избегайте супер ключа, так как он не всегда может работать на шаге 3.

В качестве команды введите имя файла скрипта (полный путь, между одинарными кавычками, если вы не уверены, перетащите файл в терминал и используйте созданную команду).

введите описание изображения здесь

  1. Назначьте сочетание клавиш для вашей кнопки

Откройте « Настройки системы»> «Планшет Wacom»> «Кнопки карты» ... и назначьте нажатие выбранной вами клавиши.

Чтобы узнать, какой кнопке вы можете присвоить им буквы без модификатора, выделите текстовое поле и нажмите кнопки, чтобы увидеть, какой букве они соответствуют.

введите описание изображения здесь

Здесь будьте осторожны: не все кнопки будут распознаваться (3 из 4 для моего Bamboo), и не все нажатия клавиш будут работать (я не могу заставить их работать с помощью клавиши Super ). Вам придется попробовать разные комбинации.

Оригинальный ответ (для изучения команд)

Я настроил Pen & Touch более года назад, поэтому я могу ошибаться. Обычно я запускаю в терминале:

xsetwacom --set "Wacom BambooPT 2FG 4x5 Finger touch" touch off

Это не будет работать для вас, так как у вас есть другой планшет, поэтому попробуйте сначала

xsetwacom

который должен дать вам параметры для использования. Сначала вам нужно получить имя вашего устройства (назовем его DEVICE_NAME), поэтому попробуйте:

xsetwacom --list devices

Это дает мне для моего Pen & Touch:

Wacom BambooPT 2FG 4x5 идентификатор ластика пера: 11 тип:
ERASER Wacom BambooPT 2FG 4x5 идентификатор пера: 12 тип: STYLUS
Wacom BambooPT 2FG 4x5 идентификатор пэда: 13 тип: PAD
Wacom BambooPT 2FG 4x5 идентификатор касания пальца: 14 тип: TOUCH

Очевидно, что тот, который имеет тип TOUCH, должен быть отключен здесь. Здесь DEVICE_NAME будет Wacom BambooPT 2FG 4x5 Finger touch, а DEVICE_ID будет 14. Затем вам нужно знать, какой параметр отключить, поэтому попробуйте:

xsetwacom --list parameters

Существует множество параметров для включения / выключения, и для каждого имени параметра (давайте назовем это PARAM_NAME) объясняется тип ожидаемого значения. В этом случае мы хотим отключить параметр Touch, что можно сделать с помощью параметра --set . Синтаксис:

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
Maxweel
источник
3
Не забывайте, что xsetwacom не сохраняет настройки, поэтому вам нужно запускать командную строку каждый раз, когда вы входите в сеанс. Для удобства вы можете привязать скрипт к сочетанию клавиш (чтобы иметь возможность включать / отключить сенсорный ввод по желанию) или даже связать его с кнопкой или планшетом (хотя никогда не пробовал).
Максвелл
1
Это очень полезно, но я бы хотел иметь возможность назначить функцию Touch ON / OFF для кнопки на самом планшете, что было бы очень полезно, поскольку вы не можете сделать это из Wacom Properties в меню System Settings. , Потому что никто не удосужился обновить свойства Wacom должным образом, чтобы дать ему функции для назначения кнопок.
2

Вот решение в 1 строку:

xsetwacom --list | grep --line-buffered "TOUCH" | awk '{system("xsetwacom --set "$8" touch off")}'
randompast
источник
0

Я написал этот сценарий, чтобы контролировать включение / выключение касания независимо от того, к какому компьютеру подключен планшет (поскольку эти идентификаторы меняются между компьютерами). Вы также можете найти это полезным.

#!/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 вместе с этими двумя простыми скриптами bash, чтобы вызвать его без необходимости запоминать параметры ...

Кермит-HW-бамбукового Untouch:

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

Кермит-HW-бамбуковое касание:

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

Тем не менее, мне очень грустно, что в Ubuntu нет лучшей поддержки для планшетов. Возможно, однажды Wacom также покажет нашему сообществу некоторое внимание ...

metakermit
источник
0

Бросив еще один скрипт в пакет, я написал этот для себя. У меня есть это в исполняемом файле 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
CodeMouse92
источник