Як вимкнути дотик до Wacom Bamboo CTH-470?


9

Нещодавно я купив свою подругу Wacom Bamboo CTH-470, і вона працює добре після встановлення wacom-dkms. Зараз я наткнувся на стіну, яку не знаю, як обійти. Дотик до планшета не вимкнеться. Я запускаю Ubuntu 12.04 Beta 2. Я спробував вимкнути сенсорне налаштування wacom у меню налаштувань. І ручка, і дотик працюють прекрасно, просто натискання наштовхує її на розум при спробі малювати в myPaint.

Відповіді:


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 відкрийте Налаштування системи> Клавіатура> Ярлики та створіть новий ярлик. Уникайте клавіші Super, оскільки це може не завжди працювати на кроці 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 Touch touch id: 14 type: 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

3
Не забувайте, що xsetwacom не зберігає налаштування, тому вам потрібно запускати командний рядок кожного разу, коли ви входите в сеанс. Для зручності у вас може бути прив’язаний сценарій до комбінації клавіш (щоб мати змогу вмикати / відключати торкання за бажанням), або ви навіть зможете прив’язати його до кнопки чи планшета (хоча цього не намагалися ніколи).
Maxweel

1
Це дуже корисно, але я хотів би мати можливість присвоїти функцію Touch ON / OFF кнопці на самому планшеті, що було б дуже корисно, оскільки цього не можна зробити з меню Wacom Properties у меню "Налаштування системи". . Тому що ніхто не переймався належним чином оновити Wacom Properties, щоб надати їй функції призначення кнопок.

2

Ось однорядне рішення:

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

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, щоб викликати його, не запам'ятовуючи параметри ...

kermit-hw-bamboo-untouch:

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

kermit-hw-bamboo-touch:

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

Однак, мені здається, це дуже сумно, що в Ubuntu немає кращої підтримки планшетів. Можливо, одного разу Wacom також приверне увагу нашої громади ...


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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.