Как отключить сенсорный экран на Wacom Bamboo CTH-470?
Недавно я купил своей девушке Wacom Bamboo CTH-470, и она хорошо работает после установки wacom-dkms. Теперь я столкнулся со стеной, которую я не знаю, как обойти. Тач на планшете не выключится. Я использую Ubuntu 12.04 Beta 2. Я попытался отключить сенсорный экран из настроек wacom в меню настроек. Перо и касание работают отлично, просто прикосновение сводит ее с ума, когда я пытаюсь рисовать в myPaint.
4 ответа
редактировать
Проверяя комментарии и другие ответы, кажется, что некоторые все еще ищут переключение касания с помощью кнопок планшета. Если вы просто хотите, чтобы вам понадобилось 3 вещи (показано для Ubuntu/Unity):
- Простая команда (которую можно запустить в терминале или в файле скрипта)
Решение 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")}'
Конечно, вам это не нужно, если у вас уже есть собственный сценарий или командная строка, но это удобный способ переключать касание подключенных планшетов, не зная их имени и идентификатора.
- Настройте сочетание клавиш
Если вы хотите запустить это без терминала, вам нужно сохранить скрипт в файле, сделать его исполняемым и создать для него комбинацию клавиш. Это потому, что вы не можете назначить команду непосредственно кнопкам планшета (но вы можете назначить нажатие клавиши...).
В Unity откройте " Системные настройки"> "Клавиатура"> "Ярлыки" и создайте новый ярлык. Избегайте супер ключа, так как он не всегда может работать на шаге 3.
В качестве команды введите имя файла скрипта (полный путь, между одинарными кавычками, если вы не уверены, перетащите файл в терминал и используйте созданную команду).
- Назначьте сочетание клавиш для вашей кнопки
Откройте "Настройки системы"> "Планшет 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 ластик для ручки ID: 11 тип: ERASER
Wacom BambooPT 2FG 4x5 Pen стилус id: 12 тип: СТИЛЬ
Wacom BambooPT 2FG 4x5 Код: 13 тип: PAD
Wacom BambooPT 2FG 4x5 касание пальцем id: 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
Вот решение в 1 строку:
xsetwacom --list | grep --line-buffered "TOUCH" | awk '{system("xsetwacom --set "$8" touch off")}'
Бросив еще один скрипт в пакет, я написал этот для себя. У меня это в исполняемом файле 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
Я написал этот скрипт, чтобы я мог контролировать включение / выключение касания независимо от того, к какому компьютеру я подключаю планшет (поскольку эти идентификаторы меняются между компьютерами). Вы также можете найти это полезным.
#!/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 также покажет нашему сообществу некоторое внимание...